From 0d0e25fa3a010e7c57dd40d5de21be35f218355b Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Thu, 7 May 2026 12:15:50 -0600 Subject: [PATCH] kernel-7.1.0-0.rc2.260507g8ab992f815d6.19 * Thu May 07 2026 Fedora Kernel Team [7.1.0-0.rc2.8ab992f815d6.19] - Disable MODULE_SIG_KEY_TYPE_MLDSA_87 for RHEL right now (Justin M. Forbes) - Gate Fedora ELN kernel updates on openQA tests (Adam Williamson) - automotive: enable HUGETLBFS to workaround build error (Scott Weaver) - disable selftests by default for now (Thorsten Leemhuis) Resolves: Signed-off-by: Justin M. Forbes --- Patchlist.changelog | 6 +++ kernel.spec | 4 ++ patch-7.1-redhat.patch | 88 +++++++++++++++++++++++++++++++++++++++++- sources | 2 +- 4 files changed, 98 insertions(+), 2 deletions(-) diff --git a/Patchlist.changelog b/Patchlist.changelog index 3351e3146..82da5f26d 100644 --- a/Patchlist.changelog +++ b/Patchlist.changelog @@ -1,3 +1,9 @@ +https://gitlab.com/cki-project/kernel-ark/-/commit/a65ed893ebac4efd11e535603a6079bbc03d50ba + a65ed893ebac4efd11e535603a6079bbc03d50ba xfrm: esp: avoid in-place decrypt on shared skb frags + +https://gitlab.com/cki-project/kernel-ark/-/commit/12a2ae195063274f78186cdd3dffc613219b2549 + 12a2ae195063274f78186cdd3dffc613219b2549 rxrpc: Also unshare DATA/RESPONSE packets when paged frags are present + https://gitlab.com/cki-project/kernel-ark/-/commit/49dc112a24f8c571d32554e8a1dfdc74c0140b42 49dc112a24f8c571d32554e8a1dfdc74c0140b42 redhat: rh_flags: mark !CONFIG_RHEL_DIFFERENCES stubs as static inline diff --git a/kernel.spec b/kernel.spec index c39104b40..6925a19f2 100644 --- a/kernel.spec +++ b/kernel.spec @@ -4847,6 +4847,10 @@ fi\ # # %changelog +* Thu May 07 2026 Justin M. Forbes [7.1.0-0.rc2.260507g8ab992f815d6.19] +- xfrm: esp: avoid in-place decrypt on shared skb frags (Kuan-Ting Chen) +- rxrpc: Also unshare DATA/RESPONSE packets when paged frags are present (Hyunwoo Kim) + * Thu May 07 2026 Fedora Kernel Team [7.1.0-0.rc2.8ab992f815d6.19] - Disable MODULE_SIG_KEY_TYPE_MLDSA_87 for RHEL right now (Justin M. Forbes) - Gate Fedora ELN kernel updates on openQA tests (Adam Williamson) diff --git a/patch-7.1-redhat.patch b/patch-7.1-redhat.patch index f3b0cd1c0..3a12268e9 100644 --- a/patch-7.1-redhat.patch +++ b/patch-7.1-redhat.patch @@ -70,6 +70,12 @@ kernel/rh_messages.c | 414 ++++++++++++++++ kernel/rh_messages.h | 334 +++++++++++++ kernel/rh_waived.c | 147 ++++++ + net/ipv4/esp4.c | 3 +- + net/ipv4/ip_output.c | 2 + + net/ipv6/esp6.c | 3 +- + net/ipv6/ip6_output.c | 2 + + net/rxrpc/call_event.c | 2 +- + net/rxrpc/conn_event.c | 2 +- scripts/Makefile.lib | 3 + scripts/mod/modpost.c | 8 + scripts/tags.sh | 2 + @@ -79,7 +85,7 @@ tools/testing/selftests/bpf/DENYLIST.rhel | 76 +++ tools/testing/selftests/bpf/Makefile | 2 +- tools/testing/selftests/bpf/prog_tests/ksyms_btf.c | 31 -- - 81 files changed, 2900 insertions(+), 243 deletions(-) + 87 files changed, 2910 insertions(+), 247 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 4d0f545fb3ec..767989050205 100644 @@ -4412,6 +4418,86 @@ index 000000000000..20966f7c7277 + return 0; +} +late_initcall(__add_rh_flag); +diff --git a/net/ipv4/esp4.c b/net/ipv4/esp4.c +index 6dfc0bcdef65..6a5febbdbee4 100644 +--- a/net/ipv4/esp4.c ++++ b/net/ipv4/esp4.c +@@ -873,7 +873,8 @@ static int esp_input(struct xfrm_state *x, struct sk_buff *skb) + nfrags = 1; + + goto skip_cow; +- } else if (!skb_has_frag_list(skb)) { ++ } else if (!skb_has_frag_list(skb) && ++ !skb_has_shared_frag(skb)) { + nfrags = skb_shinfo(skb)->nr_frags; + nfrags++; + +diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c +index e4790cc7b5c2..5bcd73cbdb41 100644 +--- a/net/ipv4/ip_output.c ++++ b/net/ipv4/ip_output.c +@@ -1233,6 +1233,8 @@ static int __ip_append_data(struct sock *sk, + if (err < 0) + goto error; + copy = err; ++ if (!(flags & MSG_NO_SHARED_FRAGS)) ++ skb_shinfo(skb)->flags |= SKBFL_SHARED_FRAG; + wmem_alloc_delta += copy; + } else if (!zc) { + int i = skb_shinfo(skb)->nr_frags; +diff --git a/net/ipv6/esp6.c b/net/ipv6/esp6.c +index 9f75313734f8..9c06c5a1419d 100644 +--- a/net/ipv6/esp6.c ++++ b/net/ipv6/esp6.c +@@ -915,7 +915,8 @@ static int esp6_input(struct xfrm_state *x, struct sk_buff *skb) + nfrags = 1; + + goto skip_cow; +- } else if (!skb_has_frag_list(skb)) { ++ } else if (!skb_has_frag_list(skb) && ++ !skb_has_shared_frag(skb)) { + nfrags = skb_shinfo(skb)->nr_frags; + nfrags++; + +diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c +index 7e92909ab5be..1f2a33fbed6e 100644 +--- a/net/ipv6/ip6_output.c ++++ b/net/ipv6/ip6_output.c +@@ -1794,6 +1794,8 @@ static int __ip6_append_data(struct sock *sk, + if (err < 0) + goto error; + copy = err; ++ if (!(flags & MSG_NO_SHARED_FRAGS)) ++ skb_shinfo(skb)->flags |= SKBFL_SHARED_FRAG; + wmem_alloc_delta += copy; + } else if (!zc) { + int i = skb_shinfo(skb)->nr_frags; +diff --git a/net/rxrpc/call_event.c b/net/rxrpc/call_event.c +index fdd683261226..6c924ef55208 100644 +--- a/net/rxrpc/call_event.c ++++ b/net/rxrpc/call_event.c +@@ -334,7 +334,7 @@ bool rxrpc_input_call_event(struct rxrpc_call *call) + + if (sp->hdr.type == RXRPC_PACKET_TYPE_DATA && + sp->hdr.securityIndex != 0 && +- skb_cloned(skb)) { ++ (skb_cloned(skb) || skb->data_len)) { + /* Unshare the packet so that it can be + * modified by in-place decryption. + */ +diff --git a/net/rxrpc/conn_event.c b/net/rxrpc/conn_event.c +index a2130d25aaa9..eab7c5f2517a 100644 +--- a/net/rxrpc/conn_event.c ++++ b/net/rxrpc/conn_event.c +@@ -245,7 +245,7 @@ static int rxrpc_verify_response(struct rxrpc_connection *conn, + { + int ret; + +- if (skb_cloned(skb)) { ++ if (skb_cloned(skb) || skb->data_len) { + /* Copy the packet if shared so that we can do in-place + * decryption. + */ diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 0718e39cedda..10e94a1b8b6e 100644 --- a/scripts/Makefile.lib diff --git a/sources b/sources index 2e5caa581..7b5aaaa5d 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ SHA512 (linux-7.1-rc2-117-g8ab992f815d6.tar.xz) = ff505057e359c7bb15f507a0e102164ced53c12dc96495a0e4833c43cd8929a2646b833718f229d887fa4d987e622e4a627fb944ab6e16bf6a40e1d710069d76 -SHA512 (kernel-abi-stablelists-7.1.0.tar.xz) = 2d21848278abb2a8f9b4d7fcc325a4f6faf4d0dd80adbcfed6c55fcef83157c09b804a1bc8b8e2c67fedaa363eebbd4250a3ef53e4d68f1b29e1efc44c05ca9d +SHA512 (kernel-abi-stablelists-7.1.0.tar.xz) = 3ce9e86edf0970be619f7731dba0bf6be622f26816de4a717443bdcdf06ef1a14f0499d998edda8c607720accb93226f8841847a9b4c83d85b0fc0b524fd7265 SHA512 (kernel-kabi-dw-7.1.0.tar.xz) = 1ae6c2ebcb6ca1b4399fe6f49cec43f4afe746c109509121f76c0a2c35229c553b0f2aeb21a6dfe513fa044f8b680b61507cdbb1ea0de2007675445d476e05d6