kernel-7.0.9-201

* Sun May 17 2026 Justin M. Forbes <jforbes@fedoraproject.org> [7.0.9-0]
- Turn on XFS_ONLINE_REPAIR for Fedora (Justin M. Forbes)
- Enable SND_DESIGNWARE for Fedora x86 (Justin M. Forbes)
- Enable HID_SENSOR_PROX for Fedora x86 (Justin M. Forbes)
- drm/i915/dp_tunnel: Don't update tunnel state during system resume (Imre Deak)
- Linux v7.0.9
Resolves:

Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
This commit is contained in:
Justin M. Forbes 2026-05-17 23:13:05 -06:00
commit c2df4a1fe4
No known key found for this signature in database
GPG key ID: B8FA7924A4B1C140
4 changed files with 84 additions and 5 deletions

View file

@ -1,3 +1,6 @@
https://gitlab.com/cki-project/kernel-ark/-/commit/ffdf20681f8d39c780e340491059ed02daf855bd
ffdf20681f8d39c780e340491059ed02daf855bd net/sched: act_pedit: extend the writable skb range per key
https://gitlab.com/cki-project/kernel-ark/-/commit/dceba3c610dce15a451f18d00744f48630616ca0
dceba3c610dce15a451f18d00744f48630616ca0 drm/i915/dp_tunnel: Don't update tunnel state during system resume

View file

@ -190,13 +190,13 @@ Summary: The Linux kernel
%define specrpmversion 7.0.9
%define specversion 7.0.9
%define patchversion 7.0
%define pkgrelease 200
%define pkgrelease 201
%define kversion 7
%define tarfile_release 7.0.9
# This is needed to do merge window version magic
%define patchlevel 0
# This allows pkg_release to have configurable %%{?dist} tag
%define specrelease 200%{?buildid}%{?dist}
%define specrelease 201%{?buildid}%{?dist}
# This defines the kabi tarball version
%define kabiversion 7.0.9
@ -4825,6 +4825,9 @@ fi\
#
#
%changelog
* Sun May 17 2026 Justin M. Forbes <jforbes@fedoraproject.org> [7.0.9-201]
- net/sched: act_pedit: extend the writable skb range per key (Zhang Cen)
* Sun May 17 2026 Justin M. Forbes <jforbes@fedoraproject.org> [7.0.9-0]
- Turn on XFS_ONLINE_REPAIR for Fedora (Justin M. Forbes)
- Enable SND_DESIGNWARE for Fedora x86 (Justin M. Forbes)

View file

@ -68,6 +68,7 @@
net/core/gro.c | 4 +
net/core/skbuff.c | 3 +
net/ipv4/tcp_output.c | 1 +
net/sched/act_pedit.c | 36 +-
scripts/Makefile.lib | 3 +
scripts/tags.sh | 2 +
security/integrity/platform_certs/load_uefi.c | 6 +-
@ -75,7 +76,7 @@
security/lockdown/lockdown.c | 11 +
tools/testing/selftests/bpf/Makefile | 2 +-
tools/testing/selftests/bpf/prog_tests/ksyms_btf.c | 31 -
77 files changed, 5401 insertions(+), 552 deletions(-)
78 files changed, 5427 insertions(+), 562 deletions(-)
diff --git a/Documentation/admin-guide/media/amdisp4-1.rst b/Documentation/admin-guide/media/amdisp4-1.rst
new file mode 100644
@ -7543,6 +7544,78 @@ index 326b58ff1118..691fc76c5508 100644
if (lastfrag &&
skb_frag_page(fragfrom) == skb_frag_page(lastfrag) &&
skb_frag_off(fragfrom) == skb_frag_off(lastfrag) +
diff --git a/net/sched/act_pedit.c b/net/sched/act_pedit.c
index bc20f08a2789..58a8eae6d43e 100644
--- a/net/sched/act_pedit.c
+++ b/net/sched/act_pedit.c
@@ -398,11 +398,12 @@ TC_INDIRECT_SCOPE int tcf_pedit_act(struct sk_buff *skb,
parms = rcu_dereference_bh(p->parms);
- max_offset = (skb_transport_header_was_set(skb) ?
- skb_transport_offset(skb) :
- skb_network_offset(skb)) +
- parms->tcfp_off_max_hint;
- if (skb_ensure_writable(skb, min(skb->len, max_offset)))
+ max_offset = min_t(u32, skb->len,
+ (skb_transport_header_was_set(skb) ?
+ skb_transport_offset(skb) :
+ skb_network_offset(skb)) +
+ parms->tcfp_off_max_hint);
+ if (skb_ensure_writable(skb, max_offset))
goto done;
tcf_lastuse_update(&p->tcf_tm);
@@ -414,8 +415,9 @@ TC_INDIRECT_SCOPE int tcf_pedit_act(struct sk_buff *skb,
for (i = parms->tcfp_nkeys; i > 0; i--, tkey++) {
int offset = tkey->off;
int hoffset = 0;
+ int write_offset;
u32 *ptr, hdata;
- u32 val;
+ u32 val, write_end;
int rc;
if (tkey_ex) {
@@ -451,12 +453,26 @@ TC_INDIRECT_SCOPE int tcf_pedit_act(struct sk_buff *skb,
}
}
- if (!offset_valid(skb, hoffset + offset)) {
- pr_info_ratelimited("tc action pedit offset %d out of bounds\n", hoffset + offset);
+ write_offset = hoffset + offset;
+ if (!offset_valid(skb, write_offset)) {
+ pr_info_ratelimited("tc action pedit offset %d out of bounds\n",
+ write_offset);
goto bad;
}
- ptr = skb_header_pointer(skb, hoffset + offset,
+ /* Earlier edits can change later header-relative offsets, so
+ * grow the writable window from the final per-key store.
+ */
+ if (write_offset >= 0) {
+ write_end = (u32)write_offset + sizeof(hdata);
+ if (write_end > max_offset) {
+ max_offset = min_t(u32, skb->len, write_end);
+ if (skb_ensure_writable(skb, max_offset))
+ goto bad;
+ }
+ }
+
+ ptr = skb_header_pointer(skb, write_offset,
sizeof(hdata), &hdata);
if (!ptr)
goto bad;
@@ -475,7 +491,7 @@ TC_INDIRECT_SCOPE int tcf_pedit_act(struct sk_buff *skb,
*ptr = ((*ptr & tkey->mask) ^ val);
if (ptr == &hdata)
- skb_store_bits(skb, hoffset + offset, ptr, 4);
+ skb_store_bits(skb, write_offset, ptr, sizeof(hdata));
}
goto done;
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 0718e39cedda..10e94a1b8b6e 100644
--- a/scripts/Makefile.lib

View file

@ -1,3 +1,3 @@
SHA512 (linux-7.0.9.tar.xz) = 40a5553bcccd34216c4925a2e1e19abea1dbb5e33b4aa1608024f96615ba05b0bb3d063d038891f828fc2dd5c8500030a8336a7db83ef0bf1a5e082d7fb92334
SHA512 (kernel-abi-stablelists-7.0.9.tar.xz) = 0e8aa0d80dd0d608dd6ac9a60774e3edfbe717c8fb04d259d7514c3c8fb82b6d06be26e31e06c3d469a2a9d631aa83fbf30a685735ca123289474223262cfe67
SHA512 (kernel-kabi-dw-7.0.9.tar.xz) = 8eb224761360104ff6271be140eaa16d85853454cbad149be6c994008ac870361a4f9065989386a64a8f876b2fd7799863819bbfe730e638be891749708da4cd
SHA512 (kernel-abi-stablelists-7.0.9.tar.xz) = 72727d5d94cbe9eae197a87c8c55ddc37b0f01e1794524cf809f28f9d140e66671d5ffe3156fd4f6401bdeccca297104d27a09a1aa3a24c04ad7f287922494ef
SHA512 (kernel-kabi-dw-7.0.9.tar.xz) = 9939a80b962e837cd5b68f33b215b6bd08be117898534590d3e12fea23a3b303245ba01fbfe01a8cd9fda3eb23555de69ebf123b568dbeffbcfb3f3b51ccb524