diff options
author | wenxu <wenxu@ucloud.cn> | 2019-08-07 04:13:53 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-08-09 04:44:30 +0300 |
commit | 1150ab0f1b333ca310431dac65d8fa403b8471da (patch) | |
tree | e76988b1fcc67bada541027d124e5cc1b1501019 /include/net/flow_offload.h | |
parent | 4e481908c51bf02457aecdedc2d80e1be22e0146 (diff) | |
download | linux-1150ab0f1b333ca310431dac65d8fa403b8471da.tar.xz |
flow_offload: support get multi-subsystem block
It provide a callback list to find the blocks of tc
and nft subsystems
Signed-off-by: wenxu <wenxu@ucloud.cn>
Acked-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/flow_offload.h')
-rw-r--r-- | include/net/flow_offload.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h index 46b8777ad05d..e8069b6c474c 100644 --- a/include/net/flow_offload.h +++ b/include/net/flow_offload.h @@ -379,6 +379,15 @@ typedef void flow_indr_block_ing_cmd_t(struct net_device *dev, void *cb_priv, enum flow_block_command command); +struct flow_indr_block_ing_entry { + flow_indr_block_ing_cmd_t *cb; + struct list_head list; +}; + +void flow_indr_add_block_ing_cb(struct flow_indr_block_ing_entry *entry); + +void flow_indr_del_block_ing_cb(struct flow_indr_block_ing_entry *entry); + int __flow_indr_block_cb_register(struct net_device *dev, void *cb_priv, flow_indr_block_bind_cb_t *cb, void *cb_ident); @@ -395,7 +404,6 @@ void flow_indr_block_cb_unregister(struct net_device *dev, void *cb_ident); void flow_indr_block_call(struct net_device *dev, - flow_indr_block_ing_cmd_t *cb, struct flow_block_offload *bo, enum flow_block_command command); |