public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/kernel] rawhide: kernel-7.2.0-0.rc3.28
@ 2026-07-14 6:22 Justin M. Forbes
0 siblings, 0 replies; only message in thread
From: Justin M. Forbes @ 2026-07-14 6:22 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/kernel
Branch : rawhide
Commit : dd6d1124ab36f0049c74165918ab843c2fb9f504
Author : Justin M. Forbes <jforbes@fedoraproject.org>
Date : 2026-07-14T00:22:16-06:00
Stats : +85/-6 in 6 file(s)
URL : https://src.fedoraproject.org/rpms/kernel/c/dd6d1124ab36f0049c74165918ab843c2fb9f504?branch=rawhide
Log:
kernel-7.2.0-0.rc3.28
* Tue Jul 14 2026 Justin M. Forbes <jforbes@fedoraproject.org> [7.2.0-0.rc3.28]
- xfs: resample the data fork mapping after cycling ILOCK (Darrick J. Wong)
Resolves:
Signed-off-by: Justin M. Forbes <jforbes@fedoraproject.org>
---
diff --git a/Makefile.rhelver b/Makefile.rhelver
index 8022cf9..893a150 100644
--- a/Makefile.rhelver
+++ b/Makefile.rhelver
@@ -12,7 +12,7 @@ RHEL_MINOR = 99
#
# Use this spot to avoid future merge conflicts.
# Do not trim this comment.
-RHEL_RELEASE = 26
+RHEL_RELEASE = 28
#
# RHEL_REBASE_NUM
diff --git a/Patchlist.changelog b/Patchlist.changelog
index 8c0e973..a94a5ba 100644
--- a/Patchlist.changelog
+++ b/Patchlist.changelog
@@ -1,3 +1,6 @@
+https://gitlab.com/cki-project/kernel-ark/-/commit/8eb6fed6858440a757afee188d25c61c064aa3da
+ 8eb6fed6858440a757afee188d25c61c064aa3da xfs: resample the data fork mapping after cycling ILOCK
+
https://gitlab.com/cki-project/kernel-ark/-/commit/75c8343f66def9d6ab14cd59f464c872593298df
75c8343f66def9d6ab14cd59f464c872593298df Revert "Input: rmi4 - remove the need for artificial IRQ in case of HID"
diff --git a/kernel.changelog b/kernel.changelog
index aad9095..e1b80e8 100644
--- a/kernel.changelog
+++ b/kernel.changelog
@@ -1,3 +1,7 @@
+* Tue Jul 14 2026 Justin M. Forbes <jforbes@fedoraproject.org> [7.2.0-0.rc3.28]
+- xfs: resample the data fork mapping after cycling ILOCK (Darrick J. Wong)
+Resolves:
+
* Mon Jul 13 2026 Fedora Kernel Team <kernel-team@fedoraproject.org> [7.2.0-0.rc3.26]
- redhat/kernel.spec: require libbabeltrace2-devel (Yaakov Selkowitz)
- automotive: enable HUGETLBFS to workaround build error (Scott Weaver)
diff --git a/kernel.spec b/kernel.spec
index f9d0cb8..107bea5 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -190,13 +190,13 @@ Summary: The Linux kernel
%define specrpmversion 7.2.0
%define specversion 7.2.0
%define patchversion 7.2
-%define pkgrelease 0.rc3.26
+%define pkgrelease 0.rc3.28
%define kversion 7
%define tarfile_release 7.2-rc3
# This is needed to do merge window version magic
%define patchlevel 2
# This allows pkg_release to have configurable %%{?dist} tag
-%define specrelease 0.rc3.26%{?buildid}%{?dist}
+%define specrelease 0.rc3.28%{?buildid}%{?dist}
# This defines the kabi tarball version
%define kabiversion 7.2.0
@@ -4942,6 +4942,9 @@ fi\
#
#
%changelog
+* Tue Jul 14 2026 Justin M. Forbes <jforbes@fedoraproject.org> [7.2.0-0.rc3.28]
+- xfs: resample the data fork mapping after cycling ILOCK (Darrick J. Wong)
+
* Mon Jul 13 2026 Fedora Kernel Team <kernel-team@fedoraproject.org> [7.2.0-0.rc3.26]
- redhat/kernel.spec: require libbabeltrace2-devel (Yaakov Selkowitz)
- automotive: enable HUGETLBFS to workaround build error (Scott Weaver)
diff --git a/patch-7.2-redhat.patch b/patch-7.2-redhat.patch
index 7c87d97..9de649e 100644
--- a/patch-7.2-redhat.patch
+++ b/patch-7.2-redhat.patch
@@ -42,6 +42,7 @@
fs/afs/main.c | 3 +
fs/erofs/super.c | 9 +
fs/ext4/super.c | 11 +
+ fs/xfs/xfs_reflink.c | 36 ++
include/linux/crypto.h | 2 +
include/linux/efi.h | 22 +-
include/linux/kernel.h | 28 ++
@@ -74,7 +75,7 @@
tools/testing/selftests/bpf/DENYLIST.rhel | 76 +++
tools/testing/selftests/bpf/Makefile | 2 +-
tools/testing/selftests/bpf/prog_tests/ksyms_btf.c | 31 --
- 76 files changed, 2669 insertions(+), 108 deletions(-)
+ 77 files changed, 2705 insertions(+), 108 deletions(-)
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index b5493a7f8f22..491293827544 100644
@@ -1722,6 +1723,74 @@ index 245f67d10ded..f1e49d37b270 100644
/* Register sysfs after all initializations are complete. */
err = ext4_register_sysfs(sb);
if (err)
+diff --git a/fs/xfs/xfs_reflink.c b/fs/xfs/xfs_reflink.c
+index a5c188b78138..480136136635 100644
+--- a/fs/xfs/xfs_reflink.c
++++ b/fs/xfs/xfs_reflink.c
+@@ -440,6 +440,7 @@ xfs_reflink_fill_cow_hole(
+ struct xfs_mount *mp = ip->i_mount;
+ struct xfs_trans *tp;
+ xfs_filblks_t resaligned;
++ unsigned int seq_before = READ_ONCE(ip->i_df.if_seq);
+ unsigned int dblocks = 0, rblocks = 0;
+ int nimaps;
+ int error;
+@@ -465,6 +466,22 @@ xfs_reflink_fill_cow_hole(
+
+ *lockmode = XFS_ILOCK_EXCL;
+
++ /*
++ * The data fork mapping may have changed while we dropped the ILOCK
++ * (a racing O_DIRECT writer under IOLOCK_SHARED can complete a full
++ * CoW cycle including xfs_reflink_end_cow(), which remaps this offset
++ * and drops the refcount of the old shared block). Re-read it so the
++ * shared-status recheck below and the caller's in-place iomap both
++ * operate on the current mapping rather than a stale physical block.
++ */
++ if (seq_before != READ_ONCE(ip->i_df.if_seq)) {
++ nimaps = 1;
++ error = xfs_bmapi_read(ip, imap->br_startoff,
++ imap->br_blockcount, imap, &nimaps, 0);
++ if (error)
++ goto out_trans_cancel;
++ }
++
+ error = xfs_find_trim_cow_extent(ip, imap, cmap, shared, &found);
+ if (error || !*shared)
+ goto out_trans_cancel;
+@@ -511,6 +528,8 @@ xfs_reflink_fill_delalloc(
+ bool found;
+
+ do {
++ unsigned int seq_before = READ_ONCE(ip->i_df.if_seq);
++
+ xfs_iunlock(ip, *lockmode);
+ *lockmode = 0;
+
+@@ -521,6 +540,23 @@ xfs_reflink_fill_delalloc(
+
+ *lockmode = XFS_ILOCK_EXCL;
+
++ /*
++ * The data fork mapping may have changed while we dropped the
++ * ILOCK (a racing O_DIRECT writer under IOLOCK_SHARED can
++ * complete a full CoW cycle including xfs_reflink_end_cow(),
++ * which remaps this offset and drops the refcount of the old
++ * shared block). Re-read it so the shared-status recheck
++ * below and the caller's in-place iomap both operate on the
++ * current mapping rather than a stale physical block.
++ */
++ if (seq_before != READ_ONCE(ip->i_df.if_seq)) {
++ nimaps = 1;
++ error = xfs_bmapi_read(ip, imap->br_startoff,
++ imap->br_blockcount, imap, &nimaps, 0);
++ if (error)
++ goto out_trans_cancel;
++ }
++
+ error = xfs_find_trim_cow_extent(ip, imap, cmap, shared,
+ &found);
+ if (error || !*shared)
diff --git a/include/linux/crypto.h b/include/linux/crypto.h
index b7c97f1c47c9..0a484f45b24a 100644
--- a/include/linux/crypto.h
diff --git a/sources b/sources
index ef0e2f3..407dd55 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
SHA512 (linux-7.2-rc3.tar.xz) = 791d9744cb5123ff8d9712010ac8e794a7261f46b40b1eb73c41d5624610f98a40ba18c93200b76cce8b455dd3a31733af55837f99a159edcc17aa5928498b94
-SHA512 (kernel-abi-stablelists-7.2.0.tar.xz) = de769a08df7fd84711819290d5a819df1b7e58b84326825961a44b37edd1fb10a1dfe87bc5ea74a46752ee21e93926b164aca5e96f0ddda5fc218ebf3b65e401
-SHA512 (kernel-kabi-dw-7.2.0.tar.xz) = 3f1dcad0b9e39b7415e90d8a29ac6678304422389e1cec322e6af4bb179c632524674d906e22b93f4e16f0573261dab05ba85c6d05a7a896c1156cedd5c893ee
+SHA512 (kernel-abi-stablelists-7.2.0.tar.xz) = af585f9ff85f6c12549410f893573602822382b901b6e3cae2a3570d08d59d5dfeacf12f58399f00189206633cc420311fbf95469842871d72186b63cdf98173
+SHA512 (kernel-kabi-dw-7.2.0.tar.xz) = 11040e2ac52436da8901ca4d2d7e055c7a936dce3f7885a365e5727cb72072508e318aec7b030904f979a8977e568e364b6472e639d69955fa03a305b02ef57e
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-07-14 6:22 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-14 6:22 [rpms/kernel] rawhide: kernel-7.2.0-0.rc3.28 Justin M. Forbes
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox