mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-18 03:23:53 -04:00
lib/crc64: add support for arch-optimized implementations
Add support for architecture-optimized implementations of the CRC64 library functions, following the approach taken for the CRC32 and CRC-T10DIF library functions. Also take the opportunity to tweak the function prototypes: - Use 'const void *' for the lib entry points (since this is easier for users) but 'const u8 *' for the underlying arch and generic functions (since this is easier for the implementations of these functions). - Don't bother with __pure. It's an unusual optimization that doesn't help properly written code. It's a weird quirk we can do without. Reviewed-by: Ard Biesheuvel <ardb@kernel.org> Reviewed-by: "Martin K. Petersen" <martin.petersen@oracle.com> Acked-by: Keith Busch <kbusch@kernel.org> Link: https://lore.kernel.org/r/20250130035130.180676-6-ebiggers@kernel.org Signed-off-by: Eric Biggers <ebiggers@google.com>
This commit is contained in:
@@ -201,6 +201,13 @@ config CRC64
|
||||
the kernel tree does. Such modules that use library CRC64
|
||||
functions require M here.
|
||||
|
||||
config ARCH_HAS_CRC64
|
||||
bool
|
||||
|
||||
config CRC64_ARCH
|
||||
tristate
|
||||
default CRC64 if ARCH_HAS_CRC64 && CRC_OPTIMIZATIONS
|
||||
|
||||
config CRC4
|
||||
tristate "CRC4 functions"
|
||||
help
|
||||
|
||||
Reference in New Issue
Block a user