Linux Audio

Check our new training course

Linux kernel drivers training

May 6-19, 2025
Register
Loading...
Note: File does not exist in v3.1.
 1/* SPDX-License-Identifier: GPL-2.0 */
 2/*
 3 * MCTP per-net structures
 4 */
 5
 6#ifndef __NETNS_MCTP_H__
 7#define __NETNS_MCTP_H__
 8
 9#include <linux/mutex.h>
10#include <linux/types.h>
11
12struct netns_mctp {
13	/* Only updated under RTNL, entries freed via RCU */
14	struct list_head routes;
15
16	/* Bound sockets: list of sockets bound by type.
17	 * This list is updated from non-atomic contexts (under bind_lock),
18	 * and read (under rcu) in packet rx
19	 */
20	struct mutex bind_lock;
21	struct hlist_head binds;
22
23	/* tag allocations. This list is read and updated from atomic contexts,
24	 * but elements are free()ed after a RCU grace-period
25	 */
26	spinlock_t keys_lock;
27	struct hlist_head keys;
28
29	/* MCTP network */
30	unsigned int default_net;
31
32	/* neighbour table */
33	struct mutex neigh_lock;
34	struct list_head neighbours;
35};
36
37#endif /* __NETNS_MCTP_H__ */