Skip to content

Conversation

@PlaidCat
Copy link
Collaborator

@PlaidCat PlaidCat commented Jan 31, 2026

This is the attempt at a re-builder built on Cron and some internal tools, but the same process is as follows as previous rebuilds

  • Download all unprocessed src.rpm
  • for each src,pm
    • Find all commits in changelog up to last known tag ... in this case 6.12.0-124
    • Re-play commits in reverse order (oldest in change log to newest) with git cherry-pick
    • After replay replace ENTIRE code in branch with rpmbuild -bp from corresponding src.rpm.
    • Tag Rebuild branch

JIRA Tickets

Rebuild Splat Inspection

kernel-6.12.0-124.29.1.el10_1

[jmaple@devbox kernel-src-tree]$ cat ciq/ciq_backports/kernel-6.12.0-124.29.1.el10_1/rebuild.details.txt
Rebuild_History BUILDABLE
Rebuilding Kernel from rpm changelog with Fuzz Limit: 87.50%
Number of commits in upstream range v6.12~1..kernel-mainline: 93416
Number of commits in rpm: 28
Number of commits matched with upstream: 24 (85.71%)
Number of commits in upstream but not in rpm: 93392
Number of commits NOT found in upstream: 4 (14.29%)

Rebuilding Kernel on Branch rocky10_1_rebuild_kernel-6.12.0-124.29.1.el10_1 for kernel-6.12.0-124.29.1.el10_1
Clean Cherry Picks: 24 (100.00%)
Empty Cherry Picks: 0 (0.00%)
_______________________________

__EMPTY COMMITS__________________________

__CHANGES NOT IN UPSTREAM________________
Add partial riscv64 support for build root'
Provide basic VisionFive 2 support'
Patch MMU for riscv64'
gitlab-ci: use rhel10.1 builder image

BUILD

[jmaple@devbox code]$ egrep -B 5 -A 5 "\[TIMER\]|^Starting Build" $(ls -t kbuild* | head -n1)
/mnt/code/kernel-src-tree-build
Running make mrproper...
  CLEAN   scripts/basic
  CLEAN   scripts/kconfig
  CLEAN   include/config include/generated
[TIMER]{MRPROPER}: 7s
x86_64 architecture detected, copying config
'configs/kernel-x86_64-rhel.config' -> '.config'
Setting Local Version for build
CONFIG_LOCALVERSION="-rocky10_1_rebuild-8224a053ff60"
Making olddefconfig
--
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
Starting Build
  GEN     arch/x86/include/generated/asm/orc_hash.h
  WRAP    arch/x86/include/generated/uapi/asm/bpf_perf_event.h
  WRAP    arch/x86/include/generated/uapi/asm/errno.h
  WRAP    arch/x86/include/generated/uapi/asm/fcntl.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctl.h
--
  BTF [M] net/qrtr/qrtr.ko
  BTF [M] net/hsr/hsr.ko
  BTF [M] net/qrtr/qrtr-mhi.ko
  LD [M]  virt/lib/irqbypass.ko
  BTF [M] virt/lib/irqbypass.ko
[TIMER]{BUILD}: 2120s
Making Modules
  SYMLINK /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/build
  INSTALL /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/modules.order
  INSTALL /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/modules.builtin
  INSTALL /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/modules.builtin.modinfo
--
  SIGN    /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/kernel/virt/lib/irqbypass.ko
  SIGN    /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/kernel/net/qrtr/qrtr-mhi.ko
  SIGN    /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/kernel/net/qrtr/qrtr.ko
  SIGN    /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+/kernel/net/ceph/libceph.ko
  DEPMOD  /lib/modules/6.12.0-rocky10_1_rebuild-8224a053ff60+
[TIMER]{MODULES}: 9s
Making Install
  INSTALL /boot
[TIMER]{INSTALL}: 30s
Checking kABI
kABI check passed
Setting Default Kernel to /boot/vmlinuz-6.12.0-rocky10_1_rebuild-8224a053ff60+ and Index to 2
Hopefully Grub2.0 took everything ... rebooting after time metrices
[TIMER]{MRPROPER}: 7s
[TIMER]{BUILD}: 2120s
[TIMER]{MODULES}: 9s
[TIMER]{INSTALL}: 30s
[TIMER]{TOTAL} 2171s
Rebooting in 10 seconds

KSelfTests

[jmaple@devbox code]$ ~/workspace/auto_kernel_history_rebuild/Rocky10/rocky10/code/get_kselftest_diff.sh
kselftest.6.12.0-rocky10_1_rebuild-f77e30dbf8f3+.log
459
kselftest.6.12.0-jmaple_rlc-10_6.12.0-124.28.1.el10_1-19cb071a47bd+.log
457
kselftest.6.12.0-rocky10_1_rebuild-55f749008285+.log
448
kselftest.6.12.0-rocky10_1_rebuild-8224a053ff60+.log
448
Before: kselftest.6.12.0-rocky10_1_rebuild-55f749008285+.log
After: kselftest.6.12.0-rocky10_1_rebuild-8224a053ff60+.log
Diff:
-ok 7 selftests: timers: raw_skew # SKIP
+ok 7 selftests: timers: raw_skew

jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Kees Cook <kees@kernel.org>
commit 39ec9ea

The sorting of VMAs by size in commit 7d442a3 ("binfmt_elf: Dump
smaller VMAs first in ELF cores") breaks elfutils[1]. Instead, sort
based on the setting of the new sysctl, core_sort_vma, which defaults
to 0, no sorting.

	Reported-by: Michael Stapelberg <michael@stapelberg.ch>
Closes: https://lore.kernel.org/all/20250218085407.61126-1-michael@stapelberg.de/ [1]
Fixes: 7d442a3 ("binfmt_elf: Dump smaller VMAs first in ELF cores")
	Signed-off-by: Kees Cook <kees@kernel.org>
(cherry picked from commit 39ec9ea)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Wang Zhaolong <wangzhaolong@huaweicloud.com>
commit 6976c7a

Reading /proc/fs/cifs/open_dirs may hit a NULL dereference when
tcon->cfids is NULL.

Add NULL check before accessing cfids to prevent the crash.

Reproduction:
- Mount CIFS share
- cat /proc/fs/cifs/open_dirs

Fixes: 844e5c0 ("smb3 client: add way to show directory leases for improved debugging")
	Signed-off-by: Wang Zhaolong <wangzhaolong@huaweicloud.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 6976c7a)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Bharath SM <bharathsm@microsoft.com>
commit 72595cb

Add smb3_lease_break_enter to trace lease break notifications,
recording lease state, flags, epoch, and lease key. Align
smb3_lease_not_found to use the same payload and print format.

	Signed-off-by: Bharath SM <bharathsm@microsoft.com>
	Acked-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 72595cb)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Bharath SM <bharathsm@microsoft.com>
commit 91be128

Print the negotiated encryption cipher type in DebugData

	Signed-off-by: Bharath SM <bharathsm@microsoft.com>
	Acked-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 91be128)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Bharath SM <bharathsm@microsoft.com>
commit ac3ad98

Print the lease/oplock caching state for each open file as a
compact string of letters: R (read), H (handle), W (write).

	Signed-off-by: Bharath SM <bharathsm@microsoft.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit ac3ad98)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
… dirents

jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Bharath SM <bharathsm@microsoft.com>
commit dde6667

Add write-only /sys/module/cifs/parameters/drop_dir_cache. Writing a
non-zero value iterates all tcons and calls invalidate_all_cached_dirs()
to drop cached directory entries. This is useful to force a dirent cache
drop across mounts for debugging and testing purpose.

	Signed-off-by: Bharath SM <bharathsm@microsoft.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit dde6667)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Bharath SM <bharathsm@microsoft.com>
commit 63eb8bd

Add lightweight accounting for directory lease cache usage
to aid debugging and limiting cache size in future. Track
per-directory entry/byte counts and maintain per-tcon
aggregates. Also expose the totals in /proc/fs/cifs/open_dirs.

	Signed-off-by: Bharath SM <bharathsm@microsoft.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 63eb8bd)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Steve French <stfrench@microsoft.com>
commit a365f2c

open_cached_dir_by_dentry() was exposing an invalid cached directory to
callers. The validity check outside the function was exclusively based
on cfid->time.

Add validity check before returning success and introduce
is_valid_cached_dir() helper for consistent checks across the code.

	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
Reviwed-by: Enzo Matsumiya <ematsumiya@suse.de>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit a365f2c)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
…ry()

jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 5676398

open_cached_dir_by_dentry() was missing an update of
cfid->last_access_time to jiffies, similar to what open_cached_dir()
has.

Add it to the function.

	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Reviewed-by: Enzo Matsumiya <ematsumiya@suse.de>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 5676398)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 17ef15f

The fid_lock in struct cached_fid does not currently provide any real
synchronization. Previously, it had the intention to prevent a double
release of the dentry, but every change to cfid->dentry is already
protected either by cfid_list_lock (while the entry is in the list) or
happens after the cfid has been removed (so no other thread should find
it).

Since there is no scenario in which fid_lock prevents any race, it is
vestigial and can be removed along with its associated
spin_lock()/spin_unlock() calls.

	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Reviewed-by: Enzo Matsumiya <ematsumiya@suse.de>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 17ef15f)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 2f6a4af

open_cached_dir() will only return a valid cfid, which has both
has_lease = true and time != 0.

Remove the pointless check of cfid->has_lease right after
open_cached_dir() returns no error.

	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Reviewed-by: Enzo Matsumiya <ematsumiya@suse.de>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 2f6a4af)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 55580ad

When dentry is NULL, the current code acquires the spinlock and traverses
the entire list, but the condition (dentry && cfid->dentry == dentry)
ensures no match will ever be found.

Return -ENOENT early in this case, avoiding unnecessary lock acquisition
and list traversal.

	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 55580ad)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
…cached

jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 3160253

When the parent directory has a valid and complete cached enumeration we
can assume that negative dentries are not present in the directory, thus
we can return without issuing a request.

This reduces traffic for common ENOENT when the directory entries are
cached.

	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 3160253)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Bharath SM <bharathsm@microsoft.com>
commit aa12118

Test generic/637 spotted a problem with create of a new file in a
cached directory (by the same client) could cause cases where the
new file does not show up properly in ls on that client until the
lease times out.

Fixes: 037e1ba ("smb: client: use ParentLeaseKey in cifs_do_create")
	Cc: stable@vger.kernel.org
	Signed-off-by: Bharath SM <bharathsm@microsoft.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit aa12118)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Enzo Matsumiya <ematsumiya@suse.de>
commit 7ae6152

We can do the same cleanup on laundromat.

On invalidate_all_cached_dirs(), run laundromat worker with 0 timeout
and flush it for immediate + sync cleanup.

	Signed-off-by: Enzo Matsumiya <ematsumiya@suse.de>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 7ae6152)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Eugene Korenevsky <ekorenevsky@aliyun.com>
commit 6447b0e

Malicious SMB server can send invalid reply to FSCTL_DFS_GET_REFERRALS

- reply smaller than sizeof(struct get_dfs_referral_rsp)
- reply with number of referrals smaller than NumberOfReferrals in the
header

Processing of such replies will cause oob.

Return -EINVAL error on such replies to prevent oob-s.

	Signed-off-by: Eugene Korenevsky <ekorenevsky@aliyun.com>
	Cc: stable@vger.kernel.org
	Suggested-by: Nathan Chancellor <nathan@kernel.org>
	Acked-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 6447b0e)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Shuhao Fu <sfual@cse.ust.hk>
commit c2b77f4

Fix three refcount inconsistency issues related to `cifs_sb_tlink`.

Comments for `cifs_sb_tlink` state that `cifs_put_tlink()` needs to be
called after successful calls to `cifs_sb_tlink()`. Three calls fail to
update refcount accordingly, leading to possible resource leaks.

Fixes: 8ceb984 ("CIFS: Move rename to ops struct")
Fixes: 2f1afe2 ("cifs: Use smb 2 - 3 and cifsacl mount options getacl functions")
Fixes: 366ed84 ("cifs: Use smb 2 - 3 and cifsacl mount options setacl function")
	Cc: stable@vger.kernel.org
	Signed-off-by: Shuhao Fu <sfual@cse.ust.hk>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit c2b77f4)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 5c76f99

When smb2_query_info_compound() retries, a previously allocated cfid may
have been freed in the first attempt.
Because cfid wasn't reset on replay, later cleanup could act on a stale
pointer, leading to a potential use-after-free.

Reinitialize cfid to NULL under the replay label.

Example trace (trimmed):

refcount_t: underflow; use-after-free.
WARNING: CPU: 1 PID: 11224 at ../lib/refcount.c:28 refcount_warn_saturate+0x9c/0x110
[...]
RIP: 0010:refcount_warn_saturate+0x9c/0x110
[...]
Call Trace:
 <TASK>
 smb2_query_info_compound+0x29c/0x5c0 [cifs f90b72658819bd21c94769b6a652029a07a7172f]
 ? step_into+0x10d/0x690
 ? __legitimize_path+0x28/0x60
 smb2_queryfs+0x6a/0xf0 [cifs f90b72658819bd21c94769b6a652029a07a7172f]
 smb311_queryfs+0x12d/0x140 [cifs f90b72658819bd21c94769b6a652029a07a7172f]
 ? kmem_cache_alloc+0x18a/0x340
 ? getname_flags+0x46/0x1e0
 cifs_statfs+0x9f/0x2b0 [cifs f90b72658819bd21c94769b6a652029a07a7172f]
 statfs_by_dentry+0x67/0x90
 vfs_statfs+0x16/0xd0
 user_statfs+0x54/0xa0
 __do_sys_statfs+0x20/0x50
 do_syscall_64+0x58/0x80

	Cc: stable@kernel.org
Fixes: 4f1fffa ("cifs: commands that are retried should have replay flag set")
	Reviewed-by: Paulo Alcantara (Red Hat) <pc@manguebit.com>
	Acked-by: Shyam Prasad N <sprasad@microsoft.com>
	Reviewed-by: Enzo Matsumiya <ematsumiya@suse.de>
	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 5c76f99)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Henrique Carvalho <henrique.carvalho@suse.com>
commit 734e996

find_or_create_cached_dir() could grab a new reference after kref_put()
had seen the refcount drop to zero but before cfid_list_lock is acquired
in smb2_close_cached_fid(), leading to use-after-free.

Switch to kref_put_lock() so cfid_release() is called with
cfid_list_lock held, closing that gap.

Fixes: ebe98f1 ("cifs: enable caching of directories for which a lease is held")
	Cc: stable@vger.kernel.org
	Reported-by: Jay Shin <jaeshin@redhat.com>
	Reviewed-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
	Signed-off-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit 734e996)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Shuhao Fu <sfual@cse.ust.hk>
commit b540de9

Fix refcount leak in `smb2_set_path_attr` when path conversion fails.

Function `cifs_get_writable_path` returns `cfile` with its reference
counter `cfile->count` increased on success. Function `smb2_compound_op`
would decrease the reference counter for `cfile`, as stated in its
comment. By calling `smb2_rename_path`, the reference counter of `cfile`
would leak if `cifs_convert_path_to_utf16` fails in `smb2_set_path_attr`.

Fixes: 8de9e86 ("cifs: create a helper to find a writeable handle by path name")
	Acked-by: Henrique Carvalho <henrique.carvalho@suse.com>
	Signed-off-by: Shuhao Fu <sfual@cse.ust.hk>
	Signed-off-by: Steve French <stfrench@microsoft.com>
(cherry picked from commit b540de9)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Uladzislau Rezki (Sony) <urezki@gmail.com>
commit 4318255

To simplify iteration over vmap-nodes, add the for_each_vmap_node() macro
that iterates over all nodes in a system.  It tends to simplify the code.

Link: https://lkml.kernel.org/r/20250408151549.77937-1-urezki@gmail.com
	Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
	Cc: Christop Hellwig <hch@infradead.org>
	Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
(cherry picked from commit 4318255)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Uladzislau Rezki (Sony) <urezki@gmail.com>
commit ce906d7

There are places which can be updated easily to use the helper to iterate
over all vmap-nodes.  This is what this patch does.

The aim is to improve readability and simplify the code.

[akpm@linux-foundation.org: fix build warning]
Link: https://lkml.kernel.org/r/20250408151549.77937-2-urezki@gmail.com
	Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
	Cc: Christop Hellwig <hch@infradead.org>
	Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
(cherry picked from commit ce906d7)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Uladzislau Rezki (Sony) <urezki@gmail.com>
commit 24c76f3

Update a __purge_vmap_area_lazy() to use introduced helper.  This is last
place in vmalloc code.  Also this patch introduces an extra function which
is node_to_id() that converts a vmap_node pointer to an index in array.

__purge_vmap_area_lazy() requires that extra function.

Link: https://lkml.kernel.org/r/20250408151549.77937-3-urezki@gmail.com
	Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
	Cc: Christop Hellwig <hch@infradead.org>
	Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
(cherry picked from commit 24c76f3)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira KERNEL-558
cve CVE-2025-38383
Rebuild_History Non-Buildable kernel-6.12.0-124.29.1.el10_1
commit-author Jeongjun Park <aha310510@gmail.com>
commit 5c5f046

The following data-race was found in show_numa_info():

==================================================================
BUG: KCSAN: data-race in vmalloc_info_show / vmalloc_info_show

read to 0xffff88800971fe30 of 4 bytes by task 8289 on cpu 0:
 show_numa_info mm/vmalloc.c:4936 [inline]
 vmalloc_info_show+0x5a8/0x7e0 mm/vmalloc.c:5016
 seq_read_iter+0x373/0xb40 fs/seq_file.c:230
 proc_reg_read_iter+0x11e/0x170 fs/proc/inode.c:299
....

write to 0xffff88800971fe30 of 4 bytes by task 8287 on cpu 1:
 show_numa_info mm/vmalloc.c:4934 [inline]
 vmalloc_info_show+0x38f/0x7e0 mm/vmalloc.c:5016
 seq_read_iter+0x373/0xb40 fs/seq_file.c:230
 proc_reg_read_iter+0x11e/0x170 fs/proc/inode.c:299
....

value changed: 0x0000008f -> 0x00000000
==================================================================

According to this report,there is a read/write data-race because
m->private is accessible to multiple CPUs.  To fix this, instead of
allocating the heap in proc_vmalloc_init() and passing the heap address to
m->private, vmalloc_info_show() should allocate the heap.

Link: https://lkml.kernel.org/r/20250508165620.15321-1-aha310510@gmail.com
Fixes: 8e1d743 ("mm: vmalloc: support multiple nodes in vmallocinfo")
	Signed-off-by: Jeongjun Park <aha310510@gmail.com>
	Suggested-by: Eric Dumazet <edumazet@google.com>
	Suggested-by: Andrew Morton <akpm@linux-foundation.org>
	Reviewed-by: "Uladzislau Rezki (Sony)" <urezki@gmail.com>
	Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
(cherry picked from commit 5c5f046)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
Rebuild_History BUILDABLE
Rebuilding Kernel from rpm changelog with Fuzz Limit: 87.50%
Number of commits in upstream range v6.12~1..kernel-mainline: 93416
Number of commits in rpm: 28
Number of commits matched with upstream: 24 (85.71%)
Number of commits in upstream but not in rpm: 93392
Number of commits NOT found in upstream: 4 (14.29%)

Rebuilding Kernel on Branch rocky10_1_rebuild_kernel-6.12.0-124.29.1.el10_1 for kernel-6.12.0-124.29.1.el10_1
Clean Cherry Picks: 24 (100.00%)
Empty Cherry Picks: 0 (0.00%)
_______________________________

Full Details Located here:
ciq/ciq_backports/kernel-6.12.0-124.29.1.el10_1/rebuild.details.txt

Includes:
* git commit header above
* Empty Commits with upstream SHA
* RPM ChangeLog Entries that could not be matched

Individual Empty Commit failures contained in the same containing directory.
The git message for empty commits will have the path for the failed commit.
File names are the first 8 characters of the upstream SHA
@PlaidCat PlaidCat self-assigned this Jan 31, 2026
@PlaidCat PlaidCat requested review from a team January 31, 2026 00:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants