* skb->mark not cleared for MLDv2 Reports? (skb->mark == 212 / 0xd4)
@ 2023-07-17 11:22 Linus Lüssing
2023-07-20 20:05 ` Kuniyuki Iwashima
0 siblings, 1 reply; 2+ messages in thread
From: Linus Lüssing @ 2023-07-17 11:22 UTC (permalink / raw)
To: Eric Dumazet; +Cc: netdev, netfilter
Hi,
I noticed that MLDv2 Reports don't seem to have a default
skb->mark of 0. Instead it is 212 / 0xd4 for me:
```
$ ip link add dummy0 type dummy
$ ip link set up dummy0 arp on
$ ip6tables -I INPUT -i dummy0 -j LOG --log-ip-options
[ send an MLDv2 Query, for instance via the ipv6toolkit
https://github.com/T-X/ipv6toolkit/tree/pr-mldq6-mldv2
]
$ dmesg
...
[38336.524879] IN= OUT=dummy0 SRC=fe80:0000:0000:0000:1c01:1cff:fec1:5669 DST=ff02:0000:0000:0000:0000:0000:0000:0016 LEN=76 TC=0 HOPLIMIT=1 FLOWLBL=0 OPT ( ) PROTO=ICMPv6 TYPE=143 CODE=0 MARK=0xd4
...
```
For MLDv1 Reports I don't see this issue, there it's always
0 by default.
I'm wondering if this 212 value comes from the
skb->reserved_tailroom (formerly avail_size) which the skb->mark
is unioned with? Am I reading
a21d45726a ("tcp: avoid order-1 allocations on wifi and tx path")
correctly that the IPv6 stack should have reset skb->mark to 0
before transmission?
Initially observed on a Linux 5.10.184. But I can reproduce
this on a Linux 6.3.7, too.
Regards, Linus
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: skb->mark not cleared for MLDv2 Reports? (skb->mark == 212 / 0xd4)
2023-07-17 11:22 skb->mark not cleared for MLDv2 Reports? (skb->mark == 212 / 0xd4) Linus Lüssing
@ 2023-07-20 20:05 ` Kuniyuki Iwashima
0 siblings, 0 replies; 2+ messages in thread
From: Kuniyuki Iwashima @ 2023-07-20 20:05 UTC (permalink / raw)
To: linus.luessing; +Cc: edumazet, netdev, netfilter, kuniyu
From: Linus =?utf-8?Q?L=C3=BCssing?= <linus.luessing@c0d3.blue>
Date: Mon, 17 Jul 2023 13:22:03 +0200
> Hi,
>
> I noticed that MLDv2 Reports don't seem to have a default
> skb->mark of 0. Instead it is 212 / 0xd4 for me:
>
> ```
> $ ip link add dummy0 type dummy
> $ ip link set up dummy0 arp on
> $ ip6tables -I INPUT -i dummy0 -j LOG --log-ip-options
> [ send an MLDv2 Query, for instance via the ipv6toolkit
> https://github.com/T-X/ipv6toolkit/tree/pr-mldq6-mldv2
I haven't looked yet though, a complete repro would make
us debug it easier. (Same for MLDv1)
Thanks!
> ]
> $ dmesg
> ...
> [38336.524879] IN= OUT=dummy0 SRC=fe80:0000:0000:0000:1c01:1cff:fec1:5669 DST=ff02:0000:0000:0000:0000:0000:0000:0016 LEN=76 TC=0 HOPLIMIT=1 FLOWLBL=0 OPT ( ) PROTO=ICMPv6 TYPE=143 CODE=0 MARK=0xd4
> ...
> ```
>
> For MLDv1 Reports I don't see this issue, there it's always
> 0 by default.
>
> I'm wondering if this 212 value comes from the
> skb->reserved_tailroom (formerly avail_size) which the skb->mark
> is unioned with? Am I reading
> a21d45726a ("tcp: avoid order-1 allocations on wifi and tx path")
> correctly that the IPv6 stack should have reset skb->mark to 0
> before transmission?
>
> Initially observed on a Linux 5.10.184. But I can reproduce
> this on a Linux 6.3.7, too.
>
> Regards, Linus
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-07-20 20:05 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-17 11:22 skb->mark not cleared for MLDv2 Reports? (skb->mark == 212 / 0xd4) Linus Lüssing
2023-07-20 20:05 ` Kuniyuki Iwashima
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).