Control: tags -1 + moreinfo

Hi BAstien, hi Tobias,

On Tue, Feb 10, 2026 at 09:57:15AM +0100, Bastien Durel wrote:
> Source: linux
> Version: 6.12.48+deb13-amd64
> Severity: important
> Tags: ipv6
> X-Debbugs-Cc: [email protected]
> User: [email protected]
> Usertags: amd64
> 
> Dear Maintainer,
> 
> When I boot on the 6.12.48+deb13-amd64 version of the kernel, my
> GRE6 tunnels stop to work, it seems that decapsulation fail
> 
> Rolling back to 6.12.63+deb13-amd64 make them work again, so I
> _think_ this is not a configuration issue.
> 
> I have two GRE6 tunnels on which I run BGP sessions.
> 
> Here's a capture of the external interface, filtered on ip6[40] = 47
> 
> 21:56:44.411270 IP6 (flowlabel 0x7759c, hlim 64, next-header unknown (60) 
> payload length: 92) 2001:41d0:302:2000::2144 > 2a0c:b641:6::: DSTOPT 
> (opt_type 0x04: len=1)(padn) GREv0, Flags [none], length 84
>       IP6 (class 0xc0, flowlabel 0x7759c, hlim 255, next-header TCP (6) 
> payload length: 40) 2a0c:b640:fffe::21:2834:2.47098 > 
> 2a0c:b640:fffe::21:2834:1.179: Flags [S], cksum 0xc046 (correct), seq 
> 2822657693, win 65236, options [mss 1388,sackOK,TS val 903776896 ecr 
> 0,nop,wscale 7], length 0
> 21:56:44.421735 IP6 (flowlabel 0xc3931, hlim 242, next-header unknown (60) 
> payload length: 92) 2a0c:b641:6:: > 2001:41d0:302:2000::2144: DSTOPT 
> (opt_type 0x04: len=1)(padn) GREv0, Flags [none], length 84
>       IP6 (class 0xc0, flowlabel 0xc3931, hlim 255, next-header TCP (6) 
> payload length: 40) 2a0c:b640:fffe::21:2834:1.179 > 
> 2a0c:b640:fffe::21:2834:2.47098: Flags [S.], cksum 0x03b1 (correct), seq 
> 1998626730, ack 2822657694, win 64672, options [mss 1388,sackOK,TS val 
> 911965588 ecr 903773822,nop,wscale 7], length 0
> 
> We can see the SYN sent by bird, and the SYN/ACK returned by the peer.
> Meanwile, when capturing on the gre interfact itself, only the SYNs sent by 
> my side shows up
> 
> 21:56:43.387145 IP6 (class 0xc0, flowlabel 0xd8556, hlim 255, next-header TCP 
> (6) payload length: 40) 2a0c:b640:fffe::21:2834:2.47098 > 
> 2a0c:b640:fffe::21:2834:1.179: Flags [S], cksum 0x1173 (incorrect -> 0xc446), 
> seq 2822657693, win 65236, options [mss 1388,sackOK,TS val 903775872 ecr 
> 0,nop,wscale 7], length 0
> 21:56:44.411239 IP6 (class 0xc0, flowlabel 0x7759c, hlim 255, next-header TCP 
> (6) payload length: 40) 2a0c:b640:fffe::21:2834:2.47098 > 
> 2a0c:b640:fffe::21:2834:1.179: Flags [S], cksum 0x1173 (incorrect -> 0xc046), 
> seq 2822657693, win 65236, options [mss 1388,sackOK,TS val 903776896 ecr 
> 0,nop,wscale 7], length 0
> 21:56:45.435116 IP6 (class 0xc0, flowlabel 0x9203f, hlim 255, next-header TCP 
> (6) payload length: 40) 2a0c:b640:fffe::21:2834:2.47098 > 
> 2a0c:b640:fffe::21:2834:1.179: Flags [S], cksum 0x1173 (incorrect -> 0xbc46), 
> seq 2822657693, win 65236, options [mss 1388,sackOK,TS val 903777920 ecr 
> 0,nop,wscale 7], length 0
> 
> ICMP inside the tunnels behave the same (seen from the outer
> interface, not on the GRE one)

Thanks for your both reports. So this look we introduced a regression
from the preivous 6.12.63-1 to 6.12.69-1 with gre6. 

I will have a look at this shortly.

If any of you both has a testing environment where you can bisect the
upstream changes between 6.12.63 and 6.12.69 to clearly isolate the
breaking change that would be great, let me know if you need
instructions on how to do it. It might be the ip6_gre change
db5b4e39c4e6 ("ip6_gre: make ip6gre_header() robust") in 6.12.64.

Regards,
Salvatore

Reply via email to