]> git.baikalelectronics.ru Git - kernel.git/commit
netlink: update listeners directly when removing socket
authorJohannes Berg <johannes.berg@intel.com>
Mon, 22 Dec 2014 17:56:37 +0000 (18:56 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sat, 27 Dec 2014 07:20:23 +0000 (02:20 -0500)
commit27d90efa42fd03767ba9c5c8684b248e231abeab
tree5ec269ffbedc0117a3246ad32691b78e03402abd
parentb4f9fb9d800ceeeda8c93f016c6e0621b66852fd
netlink: update listeners directly when removing socket

The code is now confusing to read - first in one function down
(netlink_remove) any group subscriptions are implicitly removed
by calling __sk_del_bind_node(), but the subscriber database is
only updated far later by calling netlink_update_listeners().

Move the latter call to just after removal from the list so it
is easier to follow the code.

This also enables moving the locking inside the kernel-socket
conditional, which improves the normal socket destruction path.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/netlink/af_netlink.c