On Tue, Oct 31, 2023 at 05:18:50PM -0700, Charlie Jenkins wrote: > Each architecture generally implements fine-tuned checksum functions to > leverage the instruction set. This patch adds the main checksum > functions that are used in networking. > > This patch takes heavy use of the Zbb extension using alternatives > patching. > > To test this patch, enable the configs for KUNIT, then CHECKSUM_KUNIT > and RISCV_CHECKSUM_KUNIT. > > I have attempted to make these functions as optimal as possible, but I > have not ran anything on actual riscv hardware. My performance testing > has been limited to inspecting the assembly, running the algorithms on > x86 hardware, and running in QEMU. > > ip_fast_csum is a relatively small function so even though it is > possible to read 64 bits at a time on compatible hardware, the > bottleneck becomes the clean up and setup code so loading 32 bits at a > time is actually faster. > > Relies on https://lore.kernel.org/lkml/20230920193801.3035093-1-evan@xxxxxxxxxxxx/ I coulda sworn I reported build issues against the v8 of this series that are still present in this v9. For example: https://patchwork.kernel.org/project/linux-riscv/patch/20231031-optimize_checksum-v9-3-ea018e69b229@xxxxxxxxxxxx/ Cheers, Conor.
Attachment:
signature.asc
Description: PGP signature