diff options
| author | Eric Biggers <ebiggers@kernel.org> | 2025-08-23 21:36:43 -0400 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2025-08-26 18:11:29 -0700 |
| commit | 095928e7d80186c524013a5b5d54889fa2ec1eaa (patch) | |
| tree | 894ac3ad95444d9e029b735e6726eac1f334390a /net/ipv6/seg6.c | |
| parent | f19434dd414e3a1d08ccfbc8f73b5201023aad9d (diff) | |
ipv6: sr: Use HMAC-SHA1 and HMAC-SHA256 library functions
Use the HMAC-SHA1 and HMAC-SHA256 library functions instead of
crypto_shash. This is simpler and faster. Pre-allocating per-CPU hash
transformation objects and descriptors is no longer needed, and a
microbenchmark on x86_64 shows seg6_hmac_compute() (with HMAC-SHA256)
dropping from ~2494 cycles to ~1978 cycles, a 20% improvement.
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Link: https://patch.msgid.link/20250824013644.71928-2-ebiggers@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/ipv6/seg6.c')
| -rw-r--r-- | net/ipv6/seg6.c | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/net/ipv6/seg6.c b/net/ipv6/seg6.c index 180da19c148c..a5c4c629b788 100644 --- a/net/ipv6/seg6.c +++ b/net/ipv6/seg6.c @@ -522,16 +522,10 @@ int __init seg6_init(void) if (err) goto out_unregister_iptun; - err = seg6_hmac_init(); - if (err) - goto out_unregister_seg6; - pr_info("Segment Routing with IPv6\n"); out: return err; -out_unregister_seg6: - seg6_local_exit(); out_unregister_iptun: seg6_iptunnel_exit(); out_unregister_genl: @@ -543,7 +537,6 @@ out_unregister_pernet: void seg6_exit(void) { - seg6_hmac_exit(); seg6_local_exit(); seg6_iptunnel_exit(); genl_unregister_family(&seg6_genl_family); |
