lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <20231219181623.3845083-3-victor@mojatatu.com> Date: Tue, 19 Dec 2023 15:16:20 -0300 From: Victor Nogueira <victor@...atatu.com> To: jhs@...atatu.com, davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com, xiyou.wangcong@...il.com, jiri@...nulli.us Cc: mleitner@...hat.com, vladbu@...dia.com, paulb@...dia.com, pctammela@...atatu.com, netdev@...r.kernel.org, kernel@...atatu.com Subject: [PATCH net-next v8 2/5] net/sched: cls_api: Expose tc block to the datapath The datapath can now find the block of the port in which the packet arrived at. In the next patch we show a possible usage of this patch in a new version of mirred that multicasts to all ports except for the port in which the packet arrived on. Co-developed-by: Jamal Hadi Salim <jhs@...atatu.com> Signed-off-by: Jamal Hadi Salim <jhs@...atatu.com> Co-developed-by: Pedro Tammela <pctammela@...atatu.com> Signed-off-by: Pedro Tammela <pctammela@...atatu.com> Signed-off-by: Victor Nogueira <victor@...atatu.com> --- include/net/sch_generic.h | 2 ++ net/sched/cls_api.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/include/net/sch_generic.h b/include/net/sch_generic.h index 248692ec3697..3b2c5b03c4cc 100644 --- a/include/net/sch_generic.h +++ b/include/net/sch_generic.h @@ -485,6 +485,8 @@ struct tcf_block { struct mutex proto_destroy_lock; /* Lock for proto_destroy hashtable. */ }; +struct tcf_block *tcf_block_lookup(struct net *net, u32 block_index); + static inline bool lockdep_tcf_chain_is_locked(struct tcf_chain *chain) { return lockdep_is_held(&chain->filter_chain_lock); diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c index 6020a32ecff2..618f68733012 100644 --- a/net/sched/cls_api.c +++ b/net/sched/cls_api.c @@ -1011,12 +1011,13 @@ static struct tcf_block *tcf_block_create(struct net *net, struct Qdisc *q, return block; } -static struct tcf_block *tcf_block_lookup(struct net *net, u32 block_index) +struct tcf_block *tcf_block_lookup(struct net *net, u32 block_index) { struct tcf_net *tn = net_generic(net, tcf_net_id); return idr_find(&tn->idr, block_index); } +EXPORT_SYMBOL(tcf_block_lookup); static struct tcf_block *tcf_block_refcnt_get(struct net *net, u32 block_index) { -- 2.25.1
Powered by blists - more mailing lists