diff options
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/dsa.h | 12 | ||||
-rw-r--r-- | include/net/sock.h | 1 |
2 files changed, 11 insertions, 2 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h index 90bba1ce5899..d309ee7ed04b 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -314,9 +314,17 @@ struct dsa_port { struct list_head fdbs; struct list_head mdbs; - /* List of VLANs that CPU and DSA ports are members of. */ struct mutex vlans_lock; - struct list_head vlans; + union { + /* List of VLANs that CPU and DSA ports are members of. + * Access to this is serialized by the sleepable @vlans_lock. + */ + struct list_head vlans; + /* List of VLANs that user ports are members of. + * Access to this is serialized by netif_addr_lock_bh(). + */ + struct list_head user_vlans; + }; }; /* TODO: ideally DSA ports would have a single dp->link_dp member, diff --git a/include/net/sock.h b/include/net/sock.h index 121284f455a8..2eb916d1ff64 100644 --- a/include/net/sock.h +++ b/include/net/sock.h @@ -2095,6 +2095,7 @@ static inline void sock_graft(struct sock *sk, struct socket *parent) } kuid_t sock_i_uid(struct sock *sk); +unsigned long __sock_i_ino(struct sock *sk); unsigned long sock_i_ino(struct sock *sk); static inline kuid_t sock_net_uid(const struct net *net, const struct sock *sk) |