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
| ||
|
Date: Fri, 18 Feb 2022 00:55:04 +0100 From: Pablo Neira Ayuso <pablo@...filter.org> To: Marcelo Ricardo Leitner <marcelo.leitner@...il.com> Cc: Paul Blakey <paulb@...dia.com>, dev@...nvswitch.org, netdev@...r.kernel.org, Jamal Hadi Salim <jhs@...atatu.com>, davem@...emloft.net, Jiri Pirko <jiri@...dia.com>, Cong Wang <xiyou.wangcong@...il.com>, Jakub Kicinski <kuba@...nel.org>, netfilter-devel@...r.kernel.org, Jozsef Kadlecsik <kadlec@...filter.org>, Oz Shlomo <ozsh@...dia.com>, Vlad Buslov <vladbu@...dia.com>, Roi Dayan <roid@...dia.com>, Ariel Levkovich <lariel@...dia.com>, coreteam@...filter.org Subject: Re: [PATCH net 1/1] net/sched: act_ct: Fix flow table lookup failure with no originating ifindex On Thu, Feb 17, 2022 at 08:27:08PM -0300, Marcelo Ricardo Leitner wrote: > On Thu, Feb 17, 2022 at 02:55:27PM +0100, Pablo Neira Ayuso wrote: > > On Thu, Feb 17, 2022 at 11:34:24AM +0200, Paul Blakey wrote: > > > After cited commit optimizted hw insertion, flow table entries are > > > populated with ifindex information which was intended to only be used > > > for HW offload. This tuple ifindex is hashed in the flow table key, so > > > it must be filled for lookup to be successful. But tuple ifindex is only > > > relevant for the netfilter flowtables (nft), so it's not filled in > > > act_ct flow table lookup, resulting in lookup failure, and no SW > > > offload and no offload teardown for TCP connection FIN/RST packets. > > > > > > To fix this, allow flow tables that don't hash the ifindex. > > > Netfilter flow tables will keep using ifindex for a more specific > > > offload, while act_ct will not. > > > > Using iif == zero should be enough to specify not set? > > You mean, when searching, if search input iif == zero, to simply not > check it? That seems dangerous somehow. dev_new_index() does not allocate ifindex as zero. Anyway, @Paul: could you add a tc_ifidx field instead in the union right after __hash instead to fix 9795ded7f924? Thanks.
Powered by blists - more mailing lists