diff options
author | Kirill Tkhai <ktkhai@virtuozzo.com> | 2018-02-13 12:28:33 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-02-13 10:36:07 -0500 |
commit | 15898a011b3d0390869f31167c4403835bc04954 (patch) | |
tree | 3efddc40ff398c5c6b16a77bef5f42d7fb3c8245 | |
parent | 906f63ec1d1b4941d36eee18121e68749c9e3279 (diff) | |
download | linux-stable-15898a011b3d0390869f31167c4403835bc04954.tar.gz linux-stable-15898a011b3d0390869f31167c4403835bc04954.tar.bz2 linux-stable-15898a011b3d0390869f31167c4403835bc04954.zip |
net: Convert uevent_net_ops
uevent_net_init() and uevent_net_exit() create and
destroy netlink socket, and these actions serialized
in netlink code.
Parallel execution with other pernet_operations
makes the socket disappear earlier from uevent_sock_list
on ->exit. As userspace can't be interested in broadcast
messages of dying net, and, as I see, no one in kernel
listen them, we may safely make uevent_net_ops async.
Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
Acked-by: Andrei Vagin <avagin@virtuozzo.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | lib/kobject_uevent.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c index 9fe6ec8fda28..9539d7ab3ea8 100644 --- a/lib/kobject_uevent.c +++ b/lib/kobject_uevent.c @@ -650,6 +650,7 @@ found: static struct pernet_operations uevent_net_ops = { .init = uevent_net_init, .exit = uevent_net_exit, + .async = true, }; static int __init kobject_uevent_init(void) |