diff options
author | Kirill Tkhai <ktkhai@virtuozzo.com> | 2018-02-13 12:29:13 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-02-13 10:36:07 -0500 |
commit | 13da199c38ee7f33a1c42db62647118f9f9f527c (patch) | |
tree | b849d02dd6b16ccc14f508cdf9992228c6c7d4d6 | |
parent | 86b63418fd382b095fdac4408fd565aa5da4b036 (diff) | |
download | blackbird-op-linux-13da199c38ee7f33a1c42db62647118f9f9f527c.tar.gz blackbird-op-linux-13da199c38ee7f33a1c42db62647118f9f9f527c.zip |
net: Convert subsys_initcall() registered pernet_operations from net/sched
psched_net_ops only creates and destroyes /proc entry,
and safe to be executed in parallel with any foreigh
pernet_operations.
tcf_action_net_ops initializes and destructs tcf_action_net::egdev_ht,
which is not touched by foreign pernet_operations.
So, make them 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-- | net/sched/act_api.c | 1 | ||||
-rw-r--r-- | net/sched/sch_api.c | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/net/sched/act_api.c b/net/sched/act_api.c index eba6682727dd..4886ea4a7d6e 100644 --- a/net/sched/act_api.c +++ b/net/sched/act_api.c @@ -1454,6 +1454,7 @@ static struct pernet_operations tcf_action_net_ops = { .exit = tcf_action_net_exit, .id = &tcf_action_net_id, .size = sizeof(struct tcf_action_net), + .async = true, }; static int __init tc_action_init(void) diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c index d512f49ee83c..27e672c12492 100644 --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c @@ -2128,6 +2128,7 @@ static void __net_exit psched_net_exit(struct net *net) static struct pernet_operations psched_net_ops = { .init = psched_net_init, .exit = psched_net_exit, + .async = true, }; static int __init pktsched_init(void) |