diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2009-12-03 03:29:05 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-12-03 21:22:03 +0100 |
commit | d79d792ef9f99cca463b6619a93e860d1c833a6e (patch) | |
tree | 06d8a085701546be48ac104fd4f2413a6371180c /include | |
parent | net: Move network device exit batching (diff) | |
download | linux-d79d792ef9f99cca463b6619a93e860d1c833a6e.tar.xz linux-d79d792ef9f99cca463b6619a93e860d1c833a6e.zip |
net: Allow xfrm_user_net_exit to batch efficiently.
xfrm.nlsk is provided by the xfrm_user module and is access via rcu from
other parts of the xfrm code. Add xfrm.nlsk_stash a copy of xfrm.nlsk that
will never be set to NULL. This allows the synchronize_net and
netlink_kernel_release to be deferred until a whole batch of xfrm.nlsk sockets
have been set to NULL.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/netns/xfrm.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/net/netns/xfrm.h b/include/net/netns/xfrm.h index 1ba912749caa..56f8e5585df7 100644 --- a/include/net/netns/xfrm.h +++ b/include/net/netns/xfrm.h @@ -43,6 +43,7 @@ struct netns_xfrm { struct work_struct policy_hash_work; struct sock *nlsk; + struct sock *nlsk_stash; u32 sysctl_aevent_etime; u32 sysctl_aevent_rseqth; |