]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
netfilter: nft_cmp: optimize comparison for 16-bytes
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 7 Feb 2022 18:25:08 +0000 (19:25 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 31 Aug 2022 15:15:18 +0000 (17:15 +0200)
commit2267d38520c4aa74c9110c9ef2f6619aebc8446d
treef27c13c512f19f5d93995c8e414481ff2ee4b556
parent1d7d74a8240e5d4505f5f3f67417bb7334230c11
netfilter: nft_cmp: optimize comparison for 16-bytes

[ Upstream commit 23f68d462984bfda47c7bf663dca347e8e3df549 ]

Allow up to 16-byte comparisons with a new cmp fast version. Use two
64-bit words and calculate the mask representing the bits to be
compared. Make sure the comparison is 64-bit aligned and avoid
out-of-bound memory access on registers.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/net/netfilter/nf_tables_core.h
net/netfilter/nf_tables_core.c
net/netfilter/nft_cmp.c