Skip to content

Conversation

PlaidCat
Copy link
Collaborator

General Process:

Checking Rebuidl Commits for Potentially missing commits:

commit a39fe3afb84ba6f552c9fa196a2fa3a94d648b5e (HEAD -> rocky8_10_rebuild, tag: resf_kernel-4.18.0-553.52.1.el8_10, rocky8_10_rebuild_kernel-4.18.0-553.52.1.el8_10)
Author: Jonathan Maple <jmaple@ciq.com>
Date:   Tue May 20 15:46:09 2025 -0400

    Rebuild rocky8_10 with kernel-4.18.0-553.52.1.el8_10

    Rebuild_History BUILDABLE
    Rebuilding Kernel from rpm changelog with Fuzz Limit: 87.50%
    Number of commits in upstream range v5.14~1..kernel-mainline: 296506
    Number of commits in rpm: 20
    Number of commits matched with upstream: 8 (40.00%)
    Number of commits in upstream but not in rpm: 296498
    Number of commits NOT found in upstream: 12 (60.00%)

    Rebuilding Kernel on Branch rocky8_10_rebuild_kernel-4.18.0-553.52.1.el8_10 for kernel-4.18.0-553.52.1.el8_10
    Clean Cherry Picks: 2 (25.00%)
    Empty Cherry Picks: 6 (75.00%)
    _______________________________

    Full Details Located here:
    ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/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

BUILD

[jmaple@devbox code]$ egrep -B 5 -A 5 "\[TIMER\]|^Starting Build" kbuild.resf_kernel-4.18.0-553.52.1.el8_10.log
/mnt/code/kernel-src-tree
no .config file found, moving on
[TIMER]{MRPROPER}: 0s
x86_64 architecture detected, copying config
'configs/kernel-x86_64.config' -> '.config'
Setting Local Version for build
CONFIG_LOCALVERSION="-rocky8_10_rebuild-2cd5a462b154"
Making olddefconfig
--
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --olddefconfig Kconfig
#
# configuration written to .config
#
Starting Build
scripts/kconfig/conf  --syncconfig Kconfig
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_32_ia32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_64_x32.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_64.h
--
  LD [M]  sound/usb/usx2y/snd-usb-usx2y.ko
  LD [M]  sound/virtio/virtio_snd.ko
  LD [M]  sound/x86/snd-hdmi-lpe-audio.ko
  LD [M]  sound/xen/snd_xen_front.ko
  LD [M]  virt/lib/irqbypass.ko
[TIMER]{BUILD}: 1940s
Making Modules
  INSTALL arch/x86/crypto/blowfish-x86_64.ko
  INSTALL arch/x86/crypto/camellia-aesni-avx-x86_64.ko
  INSTALL arch/x86/crypto/camellia-aesni-avx2.ko
  INSTALL arch/x86/crypto/camellia-x86_64.ko
--
  INSTALL sound/virtio/virtio_snd.ko
  INSTALL sound/x86/snd-hdmi-lpe-audio.ko
  INSTALL sound/xen/snd_xen_front.ko
  INSTALL virt/lib/irqbypass.ko
  DEPMOD  4.18.0-rocky8_10_rebuild-2cd5a462b154+
[TIMER]{MODULES}: 20s
Making Install
sh ./arch/x86/boot/install.sh 4.18.0-rocky8_10_rebuild-2cd5a462b154+ arch/x86/boot/bzImage \
	System.map "/boot"
[TIMER]{INSTALL}: 22s
Checking kABI
Checking kABI
kABI check passed
Setting Default Kernel to /boot/vmlinuz-4.18.0-rocky8_10_rebuild-2cd5a462b154+ and Index to 2
Hopefully Grub2.0 took everything ... rebooting after time metrices
[TIMER]{MRPROPER}: 0s
[TIMER]{BUILD}: 1940s
[TIMER]{MODULES}: 20s
[TIMER]{INSTALL}: 22s
[TIMER]{TOTAL} 1987s
Rebooting in 10 seconds

Kernel Self Tests

[jmaple@devbox code]$ ls kselftest.resf_kernel-4.18.0-553.51.1.el8_10.4.18.0-jmaple_sig-cloud-8_4.18.0-553.51.1.el8_10-cc12e7845910+.log kselftest.4.18.0-rocky8_10_rebuild-2cd5a462b154+.log | while read line; do echo $line; grep '^ok ' $line | wc -l; done
kselftest.4.18.0-rocky8_10_rebuild-2cd5a462b154+.log
206
kselftest.resf_kernel-4.18.0-553.51.1.el8_10.4.18.0-jmaple_sig-cloud-8_4.18.0-553.51.1.el8_10-cc12e7845910+.log
206

PlaidCat added 9 commits May 20, 2025 15:45
jira LE-12345
cve CVE-2022-49011
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Yang Yingliang <yangyingliang@huawei.com>
commit 7dec145

As comment of pci_get_domain_bus_and_slot() says, it returns
a pci device with refcount increment, when finish using it,
the caller must decrement the reference count by calling
pci_dev_put(). So call it after using to avoid refcount leak.

Fixes: 14513ee ("hwmon: (coretemp) Use PCI host bridge ID to identify CPU if necessary")
	Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Link: https://lore.kernel.org/r/20221118093303.214163-1-yangyingliang@huawei.com
	Signed-off-by: Guenter Roeck <linux@roeck-us.net>
(cherry picked from commit 7dec145)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
jira LE-12345
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Andreas Gruenbacher <agruenba@redhat.com>
commit 0b2355f
Empty-Commit: Cherry-Pick Conflicts during history rebuild.
Will be included in final tarball splat. Ref for failed cherry-pick at:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/0b2355fe.failed

For non-static function declarations, external linkage is implied and
the 'extern' keyword isn't needed.  Some static checkers complain about
the overuse of 'extern', so clean up all the function declarations.

In addition, remove 'extern' from the definition of
free_local_statfs_inodes(); it isn't needed there, either.

	Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
(cherry picked from commit 0b2355f)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>

# Conflicts:
#	fs/gfs2/acl.h
#	fs/gfs2/aops.h
#	fs/gfs2/bmap.h
#	fs/gfs2/glock.h
#	fs/gfs2/inode.h
#	fs/gfs2/log.h
#	fs/gfs2/lops.h
#	fs/gfs2/rgrp.h
#	fs/gfs2/super.c
#	fs/gfs2/super.h
jira LE-12345
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Joshua Hay <joshua.a.hay@intel.com>
commit 9c4a27d
Empty-Commit: Cherry-Pick Conflicts during history rebuild.
Will be included in final tarball splat. Ref for failed cherry-pick at:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/9c4a27da.failed

Tell hardware to write back completed descriptors even when interrupts
are disabled. Otherwise, descriptors might not be written back until
the hardware can flush a full cacheline of descriptors. This can cause
unnecessary delays when traffic is light (or even trigger Tx queue
timeout).

The example scenario to reproduce the Tx timeout if the fix is not
applied:
  - configure at least 2 Tx queues to be assigned to the same q_vector,
  - generate a huge Tx traffic on the first Tx queue
  - try to send a few packets using the second Tx queue.
In such a case Tx timeout will appear on the second Tx queue because no
completion descriptors are written back for that queue while interrupts
are disabled due to NAPI polling.

Fixes: c2d548c ("idpf: add TX splitq napi poll support")
Fixes: a5ab9ee ("idpf: add singleq start_xmit and napi poll")
	Signed-off-by: Joshua Hay <joshua.a.hay@intel.com>
Co-developed-by: Michal Kubiak <michal.kubiak@intel.com>
	Signed-off-by: Michal Kubiak <michal.kubiak@intel.com>
	Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
	Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
	Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
(cherry picked from commit 9c4a27d)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>

# Conflicts:
#	drivers/net/ethernet/intel/idpf/idpf_txrx.h
jira LE-12345
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Ahmed Zaki <ahmed.zaki@intel.com>
commit d382c7b
Empty-Commit: Cherry-Pick Conflicts during history rebuild.
Will be included in final tarball splat. Ref for failed cherry-pick at:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/d382c7bc.failed

The VF's dynamic interrupt ctl "dyn_ctl_intrvl_s" is not initialized
in idpf_vf_intr_reg_init(). This resulted in the following UBSAN error
whenever a VF is created:

[  564.345655] UBSAN: shift-out-of-bounds in drivers/net/ethernet/intel/idpf/idpf_txrx.c:3654:10
[  564.345663] shift exponent 4294967295 is too large for 32-bit type 'int'
[  564.345671] CPU: 33 UID: 0 PID: 2458 Comm: NetworkManager Not tainted 6.11.0-rc4+ #1
[  564.345678] Hardware name: Intel Corporation M50CYP2SBSTD/M50CYP2SBSTD, BIOS SE5C6200.86B.0027.P10.2201070222 01/07/2022
[  564.345683] Call Trace:
[  564.345688]  <TASK>
[  564.345693]  dump_stack_lvl+0x91/0xb0
[  564.345708]  __ubsan_handle_shift_out_of_bounds+0x16b/0x320
[  564.345730]  idpf_vport_intr_update_itr_ena_irq.cold+0x13/0x39 [idpf]
[  564.345755]  ? __pfx_idpf_vport_intr_update_itr_ena_irq+0x10/0x10 [idpf]
[  564.345771]  ? static_obj+0x95/0xd0
[  564.345782]  ? lockdep_init_map_type+0x1a5/0x800
[  564.345794]  idpf_vport_intr_ena+0x5ef/0x9f0 [idpf]
[  564.345814]  idpf_vport_open+0x2cc/0x1240 [idpf]
[  564.345837]  idpf_open+0x6d/0xc0 [idpf]
[  564.345850]  __dev_open+0x241/0x420

Fixes: d4d5587 ("idpf: initialize interrupts and enable vport")
	Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
	Signed-off-by: Ahmed Zaki <ahmed.zaki@intel.com>
	Reviewed-by: Simon Horman <horms@kernel.org>
	Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
	Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
(cherry picked from commit d382c7b)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>

# Conflicts:
#	drivers/net/ethernet/intel/idpf/idpf_vf_dev.c
jira LE-12345
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Joshua Hay <joshua.a.hay@intel.com>
commit 93433c1
Empty-Commit: Cherry-Pick Conflicts during history rebuild.
Will be included in final tarball splat. Ref for failed cherry-pick at:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/93433c1d.failed

SW triggered interrupts are guaranteed to fire after their timer
expires, unlike Tx and Rx interrupts which will only fire after the
timer expires _and_ a descriptor write back is available to be processed
by the driver.

Add the necessary fields, defines, and initializations to enable a SW
triggered interrupt in the vector's dyn_ctl register.

	Reviewed-by: Madhu Chittim <madhu.chittim@intel.com>
	Signed-off-by: Joshua Hay <joshua.a.hay@intel.com>
	Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
	Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
(cherry picked from commit 93433c1)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>

# Conflicts:
#	drivers/net/ethernet/intel/idpf/idpf_dev.c
#	drivers/net/ethernet/intel/idpf/idpf_txrx.h
#	drivers/net/ethernet/intel/idpf/idpf_vf_dev.c
jira LE-12345
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Joshua Hay <joshua.a.hay@intel.com>
commit 0c1683c
Empty-Commit: Cherry-Pick Conflicts during history rebuild.
Will be included in final tarball splat. Ref for failed cherry-pick at:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/0c1683c6.failed

There is a race condition between exiting wb_on_itr and completion write
backs. For example, we are in wb_on_itr mode and a Tx completion is
generated by HW, ready to be written back, as we are re-enabling
interrupts:

	HW                      SW
	|                       |
	|			| idpf_tx_splitq_clean_all
	|                       | napi_complete_done
	|			|
	| tx_completion_wb 	| idpf_vport_intr_update_itr_ena_irq

That tx_completion_wb happens before the vector is fully re-enabled.
Continuing with this example, it is a UDP stream and the
tx_completion_wb is the last one in the flow (there are no rx packets).
Because the HW generated the completion before the interrupt is fully
enabled, the HW will not fire the interrupt once the timer expires and
the write back will not happen. NAPI poll won't be called.  We have
indicated we're back in interrupt mode but nothing else will trigger the
interrupt. Therefore, the completion goes unprocessed, triggering a Tx
timeout.

To mitigate this, fire a SW triggered interrupt upon exiting wb_on_itr.
This interrupt will catch the rogue completion and avoid the timeout.
Add logic to set the appropriate bits in the vector's dyn_ctl register.

Fixes: 9c4a27d ("idpf: enable WB_ON_ITR")
	Reviewed-by: Madhu Chittim <madhu.chittim@intel.com>
	Signed-off-by: Joshua Hay <joshua.a.hay@intel.com>
	Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
	Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
(cherry picked from commit 0c1683c)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>

# Conflicts:
#	drivers/net/ethernet/intel/idpf/idpf_txrx.c
jira LE-12345
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Benjamin Coddington <bcodding@redhat.com>
commit cfe1f87
Empty-Commit: Cherry-Pick Conflicts during history rebuild.
Will be included in final tarball splat. Ref for failed cherry-pick at:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/cfe1f877.failed

There are certain users that wish to force the NFS client to choose
READDIRPLUS over READDIR for a particular mount.  Update the "rdirplus" mount
option to optionally accept values.  For "rdirplus=force", the NFS client
will always attempt to use READDDIRPLUS.  The setting of "rdirplus=none" is
aliased to the existing "nordirplus".

	Signed-off-by: Benjamin Coddington <bcodding@redhat.com>
Link: https://lore.kernel.org/r/c4cf0de4c8be0930b91bc74bee310d289781cd3b.1741885071.git.bcodding@redhat.com
	Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
(cherry picked from commit cfe1f87)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>

# Conflicts:
#	fs/nfs/fs_context.c
#	include/linux/nfs_fs_sb.h
jira LE-12345
cve CVE-2024-53141
Rebuild_History Non-Buildable kernel-4.18.0-553.52.1.el8_10
commit-author Jeongjun Park <aha310510@gmail.com>
commit 35f56c5

When tb[IPSET_ATTR_IP_TO] is not present but tb[IPSET_ATTR_CIDR] exists,
the values of ip and ip_to are slightly swapped. Therefore, the range check
for ip should be done later, but this part is missing and it seems that the
vulnerability occurs.

So we should add missing range checks and remove unnecessary range checks.

	Cc: <stable@vger.kernel.org>
	Reported-by: syzbot+58c872f7790a4d2ac951@syzkaller.appspotmail.com
Fixes: 72205fc ("netfilter: ipset: bitmap:ip set type support")
	Signed-off-by: Jeongjun Park <aha310510@gmail.com>
	Acked-by: Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
	Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
(cherry picked from commit 35f56c5)
	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 v5.14~1..kernel-mainline: 296506
Number of commits in rpm: 20
Number of commits matched with upstream: 8 (40.00%)
Number of commits in upstream but not in rpm: 296498
Number of commits NOT found in upstream: 12 (60.00%)

Rebuilding Kernel on Branch rocky8_10_rebuild_kernel-4.18.0-553.52.1.el8_10 for kernel-4.18.0-553.52.1.el8_10
Clean Cherry Picks: 2 (25.00%)
Empty Cherry Picks: 6 (75.00%)
_______________________________

Full Details Located here:
ciq/ciq_backports/kernel-4.18.0-553.52.1.el8_10/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 May 20, 2025
@PlaidCat PlaidCat closed this May 20, 2025
@PlaidCat PlaidCat deleted the rocky8_10_rebuild branch May 20, 2025 20:22
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.

1 participant