[<prev] [next>] [day] [month] [year] [list]
Message-ID: <CAA85sZtL46PU=MbhaVHHXNeoYLGKAqcTNzsX-WqizceqVMym2Q@mail.gmail.com>
Date: Sun, 30 Jun 2024 15:15:40 +0200
From: Ian Kumlien <ian.kumlien@...il.com>
To: Linux Kernel Network Developers <netdev@...r.kernel.org>
Subject:
Hi again,
Still trying to understand things..
But in ip_frag_queue we have (net/ipv4/ip_fragment.c:307):
/* Determine the position of this fragment. */
end = offset + skb->len - skb_network_offset(skb) - ihl;
While the fragments total length is calculated with skb->len + ihl
So "skb->len - skb_network_offset(skb) - ihl" is actually the same as skb->len
at least in all my tests, please let me know if i'm missing something.
and i really doubt that the compiler simplifies:
skb->len - ((skb->head + skb->network_header) - skb->data) - ihl to skb->len
So the question is, is there some corner case that skb->len doesn't
handle in this case?
Powered by blists - more mailing lists