lkml.org 
[lkml]   [2022]   [Aug]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH 2/4] net-next: ip6: fetch inetpeer in ip6frag_init
Obtain the IPv6 peer in ip6frag_init, to allow for peer memory tracking
in the IPv6 fragment reassembly logic.

Signed-off-by: Richard Gobert <richardbgobert@gmail.com>
---
include/net/ipv6_frag.h | 3 +++
1 file changed, 3 insertions(+)

diff --git a/include/net/ipv6_frag.h b/include/net/ipv6_frag.h
index 5052c66e22d2..62760cd3bdd1 100644
--- a/include/net/ipv6_frag.h
+++ b/include/net/ipv6_frag.h
@@ -6,6 +6,7 @@
#include <net/addrconf.h>
#include <net/ipv6.h>
#include <net/inet_frag.h>
+#include <net/inetpeer.h>

enum ip6_defrag_Richard Goberts {
IP6_DEFRAG_LOCAL_DELIVER,
@@ -33,9 +34,11 @@ static inline void ip6frag_init(struct inet_frag_queue *q, const void *a)
{
struct frag_queue *fq = container_of(q, struct frag_queue, q);
const struct frag_v6_compare_key *key = a;
+ const struct net *net = q->fqdir->net;

q->key.v6 = *key;
fq->ecn = 0;
+ q->peer = inet_getpeer_v6(net->ipv6.peers, &key->saddr, 1);
}

static inline u32 ip6frag_key_hashfn(const void *data, u32 len, u32 seed)
--
2.36.1
\
 
 \ /
  Last update: 2022-08-29 14:06    [W:0.082 / U:2.956 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site