summaryrefslogtreecommitdiffstats
path: root/net/ipv6
diff options
context:
space:
mode:
authorSteffen Klassert <steffen.klassert@secunet.com>2024-10-23 12:53:44 +0200
committerSteffen Klassert <steffen.klassert@secunet.com>2024-10-29 11:56:18 +0100
commit81a331a0e72ddc2f75092603d9577bd1a0ca23ad (patch)
tree671b54a39ed399aca948c71880fda632c7483525 /net/ipv6
parentxfrm: Cache used outbound xfrm states at the policy. (diff)
downloadlinux-81a331a0e72ddc2f75092603d9577bd1a0ca23ad.tar.xz
linux-81a331a0e72ddc2f75092603d9577bd1a0ca23ad.zip
xfrm: Add an inbound percpu state cache.
Now that we can have percpu xfrm states, the number of active states might increase. To get a better lookup performance, we add a percpu cache to cache the used inbound xfrm states. Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com> Tested-by: Antony Antony <antony.antony@secunet.com> Tested-by: Tobias Brunner <tobias@strongswan.org>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/esp6_offload.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv6/esp6_offload.c b/net/ipv6/esp6_offload.c
index 919ebfabbe4e..7b41fb4f00b5 100644
--- a/net/ipv6/esp6_offload.c
+++ b/net/ipv6/esp6_offload.c
@@ -80,9 +80,9 @@ static struct sk_buff *esp6_gro_receive(struct list_head *head,
if (sp->len == XFRM_MAX_DEPTH)
goto out_reset;
- x = xfrm_state_lookup(dev_net(skb->dev), skb->mark,
- (xfrm_address_t *)&ipv6_hdr(skb)->daddr,
- spi, IPPROTO_ESP, AF_INET6);
+ x = xfrm_input_state_lookup(dev_net(skb->dev), skb->mark,
+ (xfrm_address_t *)&ipv6_hdr(skb)->daddr,
+ spi, IPPROTO_ESP, AF_INET6);
if (unlikely(x && x->dir && x->dir != XFRM_SA_DIR_IN)) {
/* non-offload path will record the error and audit log */