Просмотр исходного кода

kernel: bump 6.6 to 6.6.96

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.96

Remove upstream patch:
  generic/pending-6.6/650-Revert-ipv6-save-dontfrag-in-cork.patch[1]

All other patches are automatically refreshed.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.96&id=c46358d0275953b27c3d86f7a224e229f2d57d05

Signed-off-by: Shiji Yang <[email protected]>
Tested-by: John Audia <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/19317
Signed-off-by: Hauke Mehrtens <[email protected]>
Shiji Yang 5 месяцев назад
Родитель
Сommit
2d8d11a42c

+ 1 - 1
target/linux/airoha/patches-6.6/048-06-v6.15-net-dsa-mt7530-Enable-Rx-sptag-for-EN7581-SoC.patch

@@ -19,7 +19,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
 
 --- a/drivers/net/dsa/mt7530.c
 +++ b/drivers/net/dsa/mt7530.c
-@@ -2585,6 +2585,11 @@ mt7531_setup_common(struct dsa_switch *d
+@@ -2588,6 +2588,11 @@ mt7531_setup_common(struct dsa_switch *d
  	/* Allow mirroring frames received on the local port (monitor port). */
  	mt7530_set(priv, MT753X_AGC, LOCAL_EN);
  

+ 2 - 2
target/linux/generic/kernel-6.6

@@ -1,2 +1,2 @@
-LINUX_VERSION-6.6 = .95
-LINUX_KERNEL_HASH-6.6.95 = 18640ae9a2c952f8f8868324378df1a9e138ad29e6b93a9c38155764ea67ea85
+LINUX_VERSION-6.6 = .96
+LINUX_KERNEL_HASH-6.6.96 = 9ee45843d43adb2e2ac5f6a8cb10a334e39e3e3384af8a0ce383a37f78221bdd

+ 0 - 72
target/linux/generic/pending-6.6/650-Revert-ipv6-save-dontfrag-in-cork.patch

@@ -1,72 +0,0 @@
-From 988e05f0c036c9c64f211b8b91a4a33c34db216a Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <[email protected]>
-Date: Sat, 21 Jun 2025 19:08:30 +0200
-Subject: [PATCH] Revert "ipv6: save dontfrag in cork"
-
-This reverts commit 8ebf2709fe4dcd0a1b7b95bf61e529ddcd3cdf51.
-
-This change breaks IPv6 UDP packet fragmentation.
-See discussion: https://lore.kernel.org/stable/[email protected]/
-
-Signed-off-by: Hauke Mehrtens <[email protected]>
----
- include/linux/ipv6.h  | 1 -
- net/ipv6/ip6_output.c | 9 ++++-----
- 2 files changed, 4 insertions(+), 6 deletions(-)
-
---- a/include/linux/ipv6.h
-+++ b/include/linux/ipv6.h
-@@ -199,7 +199,6 @@ struct inet6_cork {
- 	struct ipv6_txoptions *opt;
- 	u8 hop_limit;
- 	u8 tclass;
--	u8 dontfrag:1;
- };
- 
- /* struct ipv6_pinfo - ipv6 private area */
---- a/net/ipv6/ip6_output.c
-+++ b/net/ipv6/ip6_output.c
-@@ -1452,7 +1452,6 @@ static int ip6_setup_cork(struct sock *s
- 	}
- 	v6_cork->hop_limit = ipc6->hlimit;
- 	v6_cork->tclass = ipc6->tclass;
--	v6_cork->dontfrag = ipc6->dontfrag;
- 	if (rt->dst.flags & DST_XFRM_TUNNEL)
- 		mtu = np->pmtudisc >= IPV6_PMTUDISC_PROBE ?
- 		      READ_ONCE(rt->dst.dev->mtu) : dst_mtu(&rt->dst);
-@@ -1486,7 +1485,7 @@ static int __ip6_append_data(struct sock
- 			     int getfrag(void *from, char *to, int offset,
- 					 int len, int odd, struct sk_buff *skb),
- 			     void *from, size_t length, int transhdrlen,
--			     unsigned int flags)
-+			     unsigned int flags, struct ipcm6_cookie *ipc6)
- {
- 	struct sk_buff *skb, *skb_prev = NULL;
- 	struct inet_cork *cork = &cork_full->base;
-@@ -1542,7 +1541,7 @@ static int __ip6_append_data(struct sock
- 	if (headersize + transhdrlen > mtu)
- 		goto emsgsize;
- 
--	if (cork->length + length > mtu - headersize && v6_cork->dontfrag &&
-+	if (cork->length + length > mtu - headersize && ipc6->dontfrag &&
- 	    (sk->sk_protocol == IPPROTO_UDP ||
- 	     sk->sk_protocol == IPPROTO_ICMPV6 ||
- 	     sk->sk_protocol == IPPROTO_RAW)) {
-@@ -1914,7 +1913,7 @@ int ip6_append_data(struct sock *sk,
- 
- 	return __ip6_append_data(sk, &sk->sk_write_queue, &inet->cork,
- 				 &np->cork, sk_page_frag(sk), getfrag,
--				 from, length, transhdrlen, flags);
-+				 from, length, transhdrlen, flags, ipc6);
- }
- EXPORT_SYMBOL_GPL(ip6_append_data);
- 
-@@ -2119,7 +2118,7 @@ struct sk_buff *ip6_make_skb(struct sock
- 	err = __ip6_append_data(sk, &queue, cork, &v6_cork,
- 				&current->task_frag, getfrag, from,
- 				length + exthdrlen, transhdrlen + exthdrlen,
--				flags);
-+				flags, ipc6);
- 	if (err) {
- 		__ip6_flush_pending_frames(sk, &queue, cork, &v6_cork);
- 		return ERR_PTR(err);