diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2016-11-03 15:50:05 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2016-11-09 23:45:28 +0100 |
commit | a4fc1bfc42062e8bc7b2271a90d17403b096ce5d (patch) | |
tree | e2108987a5e90ab5ad65629a0695a04aad3f4f83 /include/net | |
parent | f0bf90def3528cebed45ebd81d9b5d0fa17d7422 (diff) | |
download | op-kernel-dev-a4fc1bfc42062e8bc7b2271a90d17403b096ce5d.zip op-kernel-dev-a4fc1bfc42062e8bc7b2271a90d17403b096ce5d.tar.gz |
net/flowcache: Convert to hotplug state machine
Install the callbacks via the state machine. Use multi state support to avoid
custom list handling for the multiple instances.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Steffen Klassert <steffen.klassert@secunet.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: netdev@vger.kernel.org
Cc: rt@linutronix.de
Cc: "David S. Miller" <davem@davemloft.net>
Link: http://lkml.kernel.org/r/20161103145021.28528-10-bigeasy@linutronix.de
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/flow.h | 1 | ||||
-rw-r--r-- | include/net/flowcache.h | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/include/net/flow.h b/include/net/flow.h index 035aa77..2e386bd 100644 --- a/include/net/flow.h +++ b/include/net/flow.h @@ -239,6 +239,7 @@ struct flow_cache_object *flow_cache_lookup(struct net *net, void *ctx); int flow_cache_init(struct net *net); void flow_cache_fini(struct net *net); +void flow_cache_hp_init(void); void flow_cache_flush(struct net *net); void flow_cache_flush_deferred(struct net *net); diff --git a/include/net/flowcache.h b/include/net/flowcache.h index c8f665e..9caf3bf 100644 --- a/include/net/flowcache.h +++ b/include/net/flowcache.h @@ -17,7 +17,7 @@ struct flow_cache_percpu { struct flow_cache { u32 hash_shift; struct flow_cache_percpu __percpu *percpu; - struct notifier_block hotcpu_notifier; + struct hlist_node node; int low_watermark; int high_watermark; struct timer_list rnd_timer; |