Merge branch 'net-faster-and-simpler-crc32c-computation'
authorJakub Kicinski <kuba@kernel.org>
Wed, 21 May 2025 22:40:17 +0000 (15:40 -0700)
committerJakub Kicinski <kuba@kernel.org>
Wed, 21 May 2025 22:40:27 +0000 (15:40 -0700)
commitc6634c98e6151ed626a566fbadb54337bb94c532
treec20e0c1df0926fb7d666b3d1e59a5a25a0ad2528
parent51ebe6b14f669019a9e59e315d7c460065468f8e
parentc93f75b2d755c35b596084ddd3feb3528284a53f
Merge branch 'net-faster-and-simpler-crc32c-computation'

Eric Biggers says:

====================
net: faster and simpler CRC32C computation

Update networking code that computes the CRC32C of packets to just call
crc32c() without unnecessary abstraction layers.  The result is faster
and simpler code.

Patches 1-7 add skb_crc32c() and remove the overly-abstracted and
inefficient __skb_checksum().

Patches 8-10 replace skb_copy_and_hash_datagram_iter() with
skb_copy_and_crc32c_datagram_iter(), eliminating the unnecessary use of
the crypto layer.  This unblocks the conversion of nvme-tcp to call
crc32c() directly instead of using the crypto layer, which patch 9 does.

v1: https://lore.kernel.org/20250511004110.145171-1-ebiggers@kernel.org
====================

Link: https://patch.msgid.link/20250519175012.36581-1-ebiggers@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>