Skip to content

Conversation

PlaidCat
Copy link
Collaborator

@PlaidCat PlaidCat commented Oct 3, 2025

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 5.14.0-570
    • 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

Rebuild Splat Inspection

kernel-5.14.0-570.46.1.el9_6

[jmaple@devbox kernel-src-tree]$ cat ciq/ciq_backports/kernel-5.14.0-570.46.1.el9_6/rebuild.details.txt
Rebuild_History BUILDABLE
Rebuilding Kernel from rpm changelog with Fuzz Limit: 87.50%
Number of commits in upstream range v5.14~1..kernel-mainline: 324124
Number of commits in rpm: 130
Number of commits matched with upstream: 128 (98.46%)
Number of commits in upstream but not in rpm: 323998
Number of commits NOT found in upstream: 2 (1.54%)

Rebuilding Kernel on Branch rocky9_6_rebuild_kernel-5.14.0-570.46.1.el9_6 for kernel-5.14.0-570.46.1.el9_6
Clean Cherry Picks: 75 (58.59%)
Empty Cherry Picks: 49 (38.28%)
_______________________________

__EMPTY COMMITS__________________________
9a71892cbcdb9d1459c84f5a4c722b14354158a5 Revert "driver core: Fix uevent_show() vs driver detach race"
a7510fbd879e98baf2848b4646adbbd2b9d0fbb3 scsi: fnic: Call scsi_done() directly
924cb24df4fc4d08d32fcb42fa967fdc3f2137cb scsi: fnic: Stop using the SCSI pointer
15924b0503630016dee4dbb945a8df4df659070b scsi: fnic: Replace sgreset tag with max_tag_id
514f0c400bde6b62405467daaf2a0a86bcf7794b scsi: fnic: Fix sg_reset success path
3df9dd0d51c2e4b0c4a400f8ce94308a2d93ef61 scsi: fnic: Add and improve log messages
848d010ab934f1b4326a516396873ddae41db056 scsi: fnic: Remove usage of host_lock
52f6e196e52ef834f928aac297d895f4c32276ea scsi: fnic: Add support for multiqueue (MQ) in fnic_main.c
c81df08cd2944f89921033e5f1744ae2960f4e69 scsi: fnic: Add support for multiqueue (MQ) in fnic driver
55cf715244a7dfda42191445d97628e837158091 scsi: fnic: Improve logs and add support for multiqueue (MQ)
38945c2b006b23a1a7a0c88d76e3294c6199891c scsi: fnic: unlock on error path in fnic_queuecommand()
e2813fc27d274747fa6e204e135e3c89cc6426a3 scsi: fnic: Replace shost_printk() with dev_info()/dev_err()
a63e78eb2b0f654b138abfc323f6bd7573e26145 scsi: fnic: Add support for fabric based solicited requests and responses
b5a57f153bdf772ed41ef286826cef7a1c52f433 scsi: fnic: Add support for target based solicited requests and responses
f828af44b8ddef3500fda70ef1f6daffe97db36b scsi: fnic: Add support for unsolicited requests and responses
2c77081969ee00ec31abda0cf6a26bc269f12ab2 scsi: fnic: Add Cisco hardware model names
09c1e6ab4ab2a107d96f119950dc330e446dc2b0 scsi: fnic: Add and integrate support for FDMI
098585aa8acab3fcd46ce908af84ef168f5ccab6 scsi: fnic: Add and integrate support for FIP
9cf9fe2f3ec5dad8b459267a9e977c0b7811b3f8 scsi: fnic: Add functionality in fnic to support FDLS
6335be1c5009f888367db095a0442cdb256980f8 scsi: fnic: Modify IO path to use FDLS
9243626c211e4d6f5add84c5a7b141e94a2e7222 scsi: fnic: Modify fnic interfaces to use FDLS
a8650a5eaaf123572a7b2d6b1fe9f6b000b6b6a6 scsi: fnic: Add stats and related functionality
7e6886b705fd8b338dbd4b7492bd45f0259cc55f scsi: fnic: Code cleanup
8d26bfcf1d2e829d37ef7f2b506b95e46f25f993 scsi: fnic: Add support to handle port channel RSCN
53021c192cc55074eee744cb41dcdfb9318d1f80 scsi: fnic: Increment driver version
5b6179d4b661e3c22ffa5f3fe2523bad4cd01983 scsi: fnic: Remove unnecessary else and unnecessary break in FDLS
6cfba11510d6f4d0e863fc0fa939c7a983cf13bd scsi: fnic: Remove extern definition from .c files
bab8551e33f7f5e8743ccb49be41fe3228178e8a scsi: fnic: Remove unnecessary else to fix warning in FDLS FIP
17789f8a5b81356fc83cf20de899fc351679574e scsi: fnic: Delete incorrect debugfs error handling
8ccc5947f5d1608f7217cdbee532c7fc2431f7c9 scsi: fnic: Fix use of uninitialized value in debug message
0620efe789a73586b5b3ed38b27d1b69b2150958 scsi: fnic: Remove always-true IS_FNIC_FCP_INITIATOR macro
7dbe3aa2f3f83949174b64860dadfaeec3454cff scsi: fnic: Return appropriate error code for mem alloc failure
3986001ca11ec630d631467d788aac513c61cb52 scsi: fnic: Return appropriate error code from failure of scsi drv init
54428671aac88dd11074c47cb7e7726e41d40f4a scsi: fnic: Test for memory allocation failure and return error code
8697934682f1873b7b1cb9cc61b81edf042c9272 scsi: fnic: Propagate SCSI error code from fnic_scsi_drv_init()
9b2d1ecf8797a82371c9f9209722949fb35b4d15 scsi: fnic: Remove unnecessary debug print
9ae7563e270372f401a06486a92cdf151d1b27ee scsi: fnic: Fix indentation and remove unnecessary parenthesis
e984fa2542e1308d67140bd7a76f678dabbcd9a8 scsi: fnic: Replace use of sizeof with standard usage
7f5dce6e7f0150ee57b8d1186011f57fa62c2843 scsi: fnic: Replace fnic->lock_flags with local flags
f421692be10133a66a3a8a7d5c76fe9713ea5a8b scsi: fnic: Remove unnecessary spinlock locking and unlocking
160d6ec69f401037a9a00b9b6569082e4d0649b0 scsi: fnic: Remove redundant flush_workqueue() calls
bd067766ee2aeb35589ad74d599b0e6311f68c73 scsi: fnic: Remove unnecessary NUL-terminations
a35b29bdedb4d2ae3160d4d6684a6f1ecd9ca7c2 scsi: fnic: Fix crash in fnic_wq_cmpl_handler when FDMI times out
74f46a0524f8d2f01dc7ca95bb5fc463a8603e72 scsi: fnic: Turn off FDMI ACTIVE flags on link down
9b9b8594654a79e3d4166356fd86cd5397477b24 scsi: fnic: Add and improve logs in FDMI and FDMI ABTS paths
18b5cb6f1fdda4454f55a31f7c78d94da62be495 scsi: fnic: Set appropriate logging level for log message
85d6fbc47c3087c5d048e6734926b0c36af34fe9 scsi: fnic: Fix missing DMA mapping error in fnic_send_frame()
c353e8983e0dea5dbba7789033326e1ad34135b7 net: introduce per netns packet chains
cffd0441872e7f6b1fce5e78fb1c99187a291330 use uniform permission checks for all mount propagation changes

__CHANGES NOT IN UPSTREAM________________
Porting to Rocky Linux 9, debranding and Rocky branding'
Ensure aarch64 kernel is not compressed'

kernel-5.14.0-570.49.1.el9_6

[jmaple@devbox kernel-src-tree]$ cat ciq/ciq_backports/kernel-5.14.0-570.49.1.el9_6/rebuild.details.txt
Rebuild_History BUILDABLE
Rebuilding Kernel from rpm changelog with Fuzz Limit: 87.50%
Number of commits in upstream range v5.14~1..kernel-mainline: 324124
Number of commits in rpm: 33
Number of commits matched with upstream: 31 (93.94%)
Number of commits in upstream but not in rpm: 324093
Number of commits NOT found in upstream: 2 (6.06%)

Rebuilding Kernel on Branch rocky9_6_rebuild_kernel-5.14.0-570.49.1.el9_6 for kernel-5.14.0-570.49.1.el9_6
Clean Cherry Picks: 25 (80.65%)
Empty Cherry Picks: 6 (19.35%)
_______________________________

__EMPTY COMMITS__________________________
690e47d1403e90b7f2366f03b52ed3304194c793 sched/rt: Fix race in push_rt_task
914639464b760a4ec659a46cc2de9a2fdc4eff5a ice: Add in/out PTP pin delays
f003075227864344c14f53302c28acd0174d9225 ice: Implement PTP support for E830 devices
15f519e9f883b316d86e2bb6b767a023aafd9d83 ceph: fix race condition validating r_parent before applying state
bec324f33d1ed346394b2eee25bf6dbf3511f727 ceph: fix race condition where r_parent becomes stale before sending message
a61a3e961baff65b0a49f862fe21ce304f279b24 selftests: tls: add tests for zero-length records

__CHANGES NOT IN UPSTREAM________________
Porting to Rocky Linux 9, debranding and Rocky branding'
Ensure aarch64 kernel is not compressed'

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}: 5s
x86_64 architecture detected, copying config
'configs/kernel-x86_64-rhel.config' -> '.config'
Setting Local Version for build
CONFIG_LOCALVERSION="-rocky9_6_rebuild-6be68ff1dc33"
Making olddefconfig
--
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
Starting Build
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_32.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_64.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_x32.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_32_ia32.h
--
  LD [M]  sound/x86/snd-hdmi-lpe-audio.ko
  BTF [M] sound/usb/usx2y/snd-usb-usx2y.ko
  BTF [M] sound/x86/snd-hdmi-lpe-audio.ko
  BTF [M] sound/virtio/virtio_snd.ko
  BTF [M] sound/xen/snd_xen_front.ko
[TIMER]{BUILD}: 1543s
Making Modules
  INSTALL /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/arch/x86/crypto/blake2s-x86_64.ko
  INSTALL /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/arch/x86/crypto/blowfish-x86_64.ko
  INSTALL /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/arch/x86/crypto/camellia-aesni-avx-x86_64.ko
  INSTALL /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/arch/x86/crypto/camellia-aesni-avx2.ko
--
  SIGN    /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/sound/usb/usx2y/snd-usb-usx2y.ko
  SIGN    /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/sound/x86/snd-hdmi-lpe-audio.ko
  SIGN    /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/sound/virtio/virtio_snd.ko
  SIGN    /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33/kernel/sound/xen/snd_xen_front.ko
  DEPMOD  /lib/modules/5.14.0-rocky9_6_rebuild-6be68ff1dc33
[TIMER]{MODULES}: 7s
Making Install
sh ./arch/x86/boot/install.sh 5.14.0-rocky9_6_rebuild-6be68ff1dc33 \
        arch/x86/boot/bzImage System.map "/boot"
[TIMER]{INSTALL}: 24s
Checking kABI
kABI check passed
Setting Default Kernel to /boot/vmlinuz-5.14.0-rocky9_6_rebuild-6be68ff1dc33 and Index to 0
Hopefully Grub2.0 took everything ... rebooting after time metrices
[TIMER]{MRPROPER}: 5s
[TIMER]{BUILD}: 1543s
[TIMER]{MODULES}: 7s
[TIMER]{INSTALL}: 24s
[TIMER]{TOTAL} 1585s
Rebooting in 10 seconds

KSelfTests

[jmaple@devbox code]$ ~/workspace/auto_kernel_history_rebuild/Rocky10/rocky10/code/get_kselftest_diff.sh
kselftest.5.14.0-570.32.1.el9_6.x86_64.log
317
kselftest.5.14.0-rocky9_6_rebuild-e0a1a84bc26b.log
317
kselftest.5.14.0-rocky9_6_rebuild-ee328fded72f.log
317
kselftest.5.14.0-rocky9_6_rebuild-6be68ff1dc33.log
320
Before: kselftest.5.14.0-rocky9_6_rebuild-ee328fded72f.log
After: kselftest.5.14.0-rocky9_6_rebuild-6be68ff1dc33.log
Diff:
+ok 1 selftests: filesystems: devpts_pts # SKIP
+ok 1 selftests: seccomp: seccomp_bpf
-ok 1 selftests: tty: tty_tstamp_update
+ok 1 selftests: tty: tty_tstamp_update # SKIP
+ok 1 selftests: x86/bugs: its_sysfs.py

jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Greg Kroah-Hartman <[email protected]>
commit 9a71892
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-5.14.0-570.46.1.el9_6/9a71892c.failed

This reverts commit 15fffc6.

This commit causes a regression, so revert it for now until it can come
back in a way that works for everyone.

Link: https://lore.kernel.org/all/172790598832.1168608.4519484276671503678.stgit@dwillia2-xfh.jf.intel.com/
Fixes: 15fffc6 ("driver core: Fix uevent_show() vs driver detach race")
	Cc: stable <[email protected]>
	Cc: Ashish Sangwan <[email protected]>
	Cc: Namjae Jeon <[email protected]>
	Cc: Dirk Behme <[email protected]>
	Cc: Greg Kroah-Hartman <[email protected]>
	Cc: Rafael J. Wysocki <[email protected]>
	Cc: Dan Williams <[email protected]>
	Signed-off-by: Greg Kroah-Hartman <[email protected]>
(cherry picked from commit 9a71892)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/base/core.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Bart Van Assche <[email protected]>
commit a7510fb
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-5.14.0-570.46.1.el9_6/a7510fbd.failed

Conditional statements are faster than indirect calls. Hence call
scsi_done() directly.

Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Bart Van Assche <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit a7510fb)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Bart Van Assche <[email protected]>
commit 3032ed7

Report both the command flags and command state instead of only the
command state.

Link: https://lore.kernel.org/r/[email protected]
Fixes: 4d7007b ("[SCSI] fnic: Fnic Trace Utility")
	Cc: Hiral Patel <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Reviewed-by: Himanshu Madhani <[email protected]>
	Signed-off-by: Bart Van Assche <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 3032ed7)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Bart Van Assche <[email protected]>
commit 924cb24
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-5.14.0-570.46.1.el9_6/924cb24d.failed

Set .cmd_size in the SCSI host template instead of using the SCSI pointer
from struct scsi_cmnd. This patch prepares for removal of the SCSI pointer
from struct scsi_cmnd.

Link: https://lore.kernel.org/r/[email protected]
	Reviewed-by: Johannes Thumshirn <[email protected]>
	Reviewed-by: Himanshu Madhani <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Signed-off-by: Bart Van Assche <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 924cb24)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Haowen Bai <[email protected]>
commit 1dcd96c

Fix the following warning reported by coccicheck:

drivers/scsi/fnic/fnic_debugfs.c:90:2-7: WARNING: NULL check before some freeing functions is not needed.

Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Haowen Bai <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 1dcd96c)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author ran jianping <[email protected]>
commit 671a52f

All work currently pending will be done first by calling
destroy_workqueue(). There is no need to flush it explicitly.

Link: https://lore.kernel.org/r/[email protected]
	Reported-by: Zeal Robot <[email protected]>
	Signed-off-by: ran jianping <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 671a52f)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit b559b99

Cisco VIC supports only 47 bits.  If the host sends DMA addresses that are
greater than 47 bits, it causes work queue (WQ) errors in the VIC.

Link: https://lore.kernel.org/r/[email protected]
	Tested-by: Karan Tilak Kumar <[email protected]>
Co-developed-by: Dhanraj Jhawar <[email protected]>
	Signed-off-by: Dhanraj Jhawar <[email protected]>
Co-developed-by: Sesidhar Baddela <[email protected]>
	Signed-off-by: Sesidhar Baddela <[email protected]>
	Signed-off-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit b559b99)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit aec95e3

Refactor code from fnic probe into a different function so that
scsi layer initialization code is grouped together.
Also, add log messages for better debugging.

Link: https://lore.kernel.org/r/[email protected]
Co-developed-by: Gian Carlo Boffa <[email protected]>
	Signed-off-by: Gian Carlo Boffa <[email protected]>
Co-developed-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit aec95e3)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Christophe JAILLET <[email protected]>
commit 14ce2c2

Use vzalloc() instead of hand writing it with vmalloc()+memset().  This is
less verbose.

This also fixes some style issues :)

	Signed-off-by: Christophe JAILLET <[email protected]>
Link: https://lore.kernel.org/r/a1179941a6d440140513e681f4f3a1b92c8d83ae.1685210773.git.christophe.jaillet@wanadoo.fr
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 14ce2c2)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Julia Lawall <[email protected]>
commit b34c7dc

Use vmalloc_array() and vcalloc() to protect against multiplication
overflows.

The changes were done using the following Coccinelle semantic patch:

// <smpl>
@initialize:ocaml@
@@

let rename alloc =
  match alloc with
    "vmalloc" -> "vmalloc_array"
  | "vzalloc" -> "vcalloc"
  | _ -> failwith "unknown"

@@
    size_t e1,e2;
    constant C1, C2;
    expression E1, E2, COUNT, x1, x2, x3;
    typedef u8;
    typedef __u8;
    type t = {u8,__u8,char,unsigned char};
    identifier alloc = {vmalloc,vzalloc};
    fresh identifier realloc = script:ocaml(alloc) { rename alloc };
@@

(
      alloc(x1*x2*x3)
|
      alloc(C1 * C2)
|
      alloc((sizeof(t)) * (COUNT), ...)
|
-     alloc((e1) * (e2))
+     realloc(e1, e2)
|
-     alloc((e1) * (COUNT))
+     realloc(COUNT, e1)
|
-     alloc((E1) * (E2))
+     realloc(E1, E2)
)
// </smpl>

	Signed-off-by: Julia Lawall <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit b34c7dc)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 5a43b07

fnic_clean_pending_aborts() was returning a non-zero value irrespective of
failure or success.  This caused the caller of this function to assume that
the device reset had failed, even though it would succeed in most cases. As
a consequence, a successful device reset would escalate to host reset.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Tested-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 5a43b07)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 15924b0
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-5.14.0-570.46.1.el9_6/15924b05.failed

sgreset is issued with a SCSI command pointer. The device reset code
assumes that it was issued on a hardware queue, and calls block multiqueue
layer. However, the assumption is broken, and there is no hardware queue
associated with the sgreset, and this leads to a crash due to a null
pointer exception.

Fix the code to use the max_tag_id as a tag which does not overlap with the
other tags issued by mid layer.

Tested by running FC traffic for a few minutes, and by issuing sgreset on
the device in parallel.  Without the fix, the crash is observed right away.
With this fix, no crash is observed.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Tested-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 15924b0)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic.h
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Yang Li <[email protected]>
commit e7cf3a3

The functions fnic_scsi_host_start_tag() and fnic_scsi_host_end_tag() are
not used anywhere, so remove them.

silence the warnings:
drivers/scsi/fnic/fnic_scsi.c:2175:1: warning: unused function 'fnic_scsi_host_start_tag'
drivers/scsi/fnic/fnic_scsi.c:2196:1: warning: unused function 'fnic_scsi_host_end_tag'

	Signed-off-by: Yang Li <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Acked-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit e7cf3a3)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 514f0c4
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-5.14.0-570.46.1.el9_6/514f0c40.failed

sg_reset performs a target or LUN reset. Since the command is issued by the
user, it does not come into the driver with a tag or a queue id. Fix the
fnic driver to create an io_req and use a SCSI command tag.  Fix the ITMF
path to special case the sg_reset response.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Tested-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 514f0c4)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic.h
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Artem Chernyshev <[email protected]>
commit f5f27a3

In fnic_init_module() exists redundant check for return value from
fnic_debugfs_init(), because at moment it only can return zero. It make
sense to process theoretical vmalloc() failure.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 9730ddf ("scsi: fnic: remove redundant assignment of variable rc")
	Signed-off-by: Artem Chernyshev <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Reviewed-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit f5f27a3)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 2cda90e

VIC firmware has updated definitions.  Modify structure and definitions to
sync with the latest VIC firmware.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 2cda90e)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit ca008ae

Add fnic_num in fnic.h to identify fnic in a multi-fnic environment.
Increment and set the fnic number during driver load in fnic_probe.
Replace the host number with fnic number in debugfs.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit ca008ae)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 3df9dd0
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-5.14.0-570.46.1.el9_6/3df9dd0d.failed

Add link related log messages in fnic_fcs.c,
Improve log message in fnic_fcs.c,
Add log message in vnic_dev.c.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 3df9dd0)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_fcs.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 86b86a7

Rename wq_copy to hw_copy_wq to accurately describe the copy
workqueue. This will also help distinguish this data structure from
software data structures that can be introduced.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 86b86a7)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 8c2a6f8

Get the copy workqueue count and interrupt mode from the configuration. The
config can be changed via UCSM.  Add logs to print the interrupt mode and
copy workqueue count.  Add logs to print the vNIC resources.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 8c2a6f8)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 554a148

Refactor and re-define values in fnic.h to implement multiqueue (MQ)
functionality.

VIC firmware allows fnic to create up to 64 copy workqueues. Update the
copy workqueue max to 64.  Modify the interrupt index to be in sync with
the firmware to support MQ.  Add irq number to the MSIX entry.  Define a
software workqueue table to track the status of io_reqs. Define a base for
the copy workqueue.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 554a148)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 8a8449c

Modify interrupt service routines for INTx, MSI, and MSI-x to support
multiqueue.  Modify parameter list of fnic_wq_copy_cmpl_handler to take
cq_index.  Modify fnic_cleanup function to use the new function call of
fnic_wq_copy_cmpl_handler.  Refactor code to set interrupt mode to MSI-x to
a new function.  Add a new stat for intx_dummy.

	Reported-by: kernel test robot <[email protected]>
Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 8a8449c)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit b559b82

Define an array to track IOs for the different queues, print the IO stats
in fnic get stats data.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit b559b82)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 848d010
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-5.14.0-570.46.1.el9_6/848d010a.failed

Remove usage of host_lock.  Replace with fnic_lock, where necessary.  fnic
does not use host_lock. fnic uses fnic_lock.  Use fnic lock to protect fnic
members in fnic_queuecommand.  Add log messages in error cases.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 848d010)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 52f6e19
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-5.14.0-570.46.1.el9_6/52f6e196.failed

Set map_queues in the fnic_host_template to fnic_mq_map_queues_cpus.
Define fnic_mq_map_queues_cpus to set cpu assignment to fnic queues.
Refactor code in fnic_probe to enable vnic queues before scsi_add_host.
Modify notify set to the correct index.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Reviewed-by: John Garry <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 52f6e19)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_main.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit c81df08
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-5.14.0-570.46.1.el9_6/c81df08c.failed

Implement support for MQ in fnic driver:

The block multiqueue layer issues IO to the fnic driver with an MQ tag. Use
the mqtag and derive a tag from it.  Derive the hardware queue from the
mqtag and use it in all paths. Modify queuecommand to handle mqtag.

Replace wq and cq indices to support MQ. Replace the zeroth queue with a
hardware queue.  Implement spin locks on a per hardware queue basis.
Replace io_lock with per hardware queue spinlock.  Implement out of range
tag checks.

Allocate an io_req_table to track status of the io_req.

Test the driver by building it, loading it, and configuring 64 queues in
UCSM. Issue IOs using Medusa on multiple fnics. Enable/disable links to
exercise the abort and clean up path.

	Reported-by: kernel test robot <[email protected]>
Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/
	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Tested-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit c81df08)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_main.c
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Karan Tilak Kumar <[email protected]>
commit 55cf715
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-5.14.0-570.46.1.el9_6/55cf7152.failed

Improve existing logs by adding fnic number, hardware queue, tag, and mqtag
in the prints.  Add logs with the above elements for effective debugging.

	Reviewed-by: Sesidhar Baddela <[email protected]>
	Reviewed-by: Arulprabhu Ponnusamy <[email protected]>
	Tested-by: Karan Tilak Kumar <[email protected]>
	Reviewed-by: Hannes Reinecke <[email protected]>
	Signed-off-by: Karan Tilak Kumar <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 55cf715)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Dan Carpenter <[email protected]>
commit 38945c2
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-5.14.0-570.46.1.el9_6/38945c2b.failed

Call spin_unlock_irqrestore(&fnic->wq_copy_lock[hwq], flags) before
returning.

Fixes: c81df08 ("scsi: fnic: Add support for multiqueue (MQ) in fnic driver")
	Signed-off-by: Dan Carpenter <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Reviewed-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 38945c2)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/scsi/fnic/fnic_scsi.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Jiapeng Chong <[email protected]>
commit 5ef104b

No functional modification involved.

drivers/scsi/fnic/fnic_fcs.c:152 fnic_handle_link() warn: inconsistent indenting.

	Reported-by: Abaci Robot <[email protected]>
Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=6678
	Signed-off-by: Jiapeng Chong <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 5ef104b)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.46.1.el9_6
commit-author Li Zhijian <[email protected]>
commit 1ad717c

Per filesystems/sysfs.rst, show() should only use sysfs_emit() or
sysfs_emit_at() when formatting the value to be returned to user space.

coccinelle complains that there are still a couple of functions that use
snprintf(). Convert them to sysfs_emit().

> ./drivers/scsi/fnic/fnic_attrs.c:17:8-16: WARNING: please use sysfs_emit
> ./drivers/scsi/fnic/fnic_attrs.c:23:8-16: WARNING: please use sysfs_emit
> ./drivers/scsi/fnic/fnic_attrs.c:31:8-16: WARNING: please use sysfs_emit

No functional change intended

CC: Satish Kharat <[email protected]>
CC: Sesidhar Baddela <[email protected]>
CC: Karan Tilak Kumar <[email protected]>
CC: James E.J. Bottomley <[email protected]>
CC: Martin K. Petersen <[email protected]>
CC: [email protected]
	Signed-off-by: Li Zhijian <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Reviewed-by: Karan Tilak Kumar <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit 1ad717c)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit 258f5f9

Driver always naively assumes, that for PTP purposes, PHY lane to
configure is corresponding to PF ID.

This is not true for some port configurations, e.g.:
- 2x50G per quad, where lanes used are 0 and 2 on each quad, but PF IDs
  are 0 and 1
- 100G per quad on 2 quads, where lanes used are 0 and 4, but PF IDs are
  0 and 1

Use correct PHY lane assignment by getting and parsing port options.
This is read from the NVM by the FW and provided to the driver with
the indication of active port split.

Remove ice_is_muxed_topo(), which is no longer needed.

Fixes: 4409ea1 ("ice: Adjust PTP init for 2x50G E825C devices")
	Reviewed-by: Przemek Kitszel <[email protected]>
	Reviewed-by: Arkadiusz Kubalewski <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Signed-off-by: Grzegorz Nitka <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 258f5f9)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Przemyslaw Korba <[email protected]>
commit 3214fae

Fix incorrect PHY timestamp extraction for ETH56G.
It's better to use FIELD_PREP() than manual shift.

Fixes: 7cab44f ("ice: Introduce ETH56G PHY model for E825C products")
	Reviewed-by: Przemek Kitszel <[email protected]>
	Reviewed-by: Simon Horman <[email protected]>
	Signed-off-by: Przemyslaw Korba <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 3214fae)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit 9146394
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-5.14.0-570.49.1.el9_6/91463946.failed

HW can have different input/output delays for each of the pins.

Currently, only E82X adapters have delay compensation based on TSPLL
config and E810 adapters have constant 1 ms compensation, both cases
only for output delays and the same one for all pins.

E825 adapters have different delays for SDP and other pins. Those
delays are also based on direction and input delays are different than
output ones. This is the main reason for moving delays to pin
description structure.

Add a field in ice_ptp_pin_desc structure to reflect that. Delay values
are based on approximate calculations of HW delays based on HW spec.

Implement external timestamp (input) delay compensation.

Remove existing definitions and wrappers for periodic output propagation
delays.

	Reviewed-by: Przemek Kitszel <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Reviewed-by: Simon Horman <[email protected]>
	Tested-by: Sunitha Mekala <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 9146394)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/net/ethernet/intel/ice/ice_ptp.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit e2c6737

Don't check if the device type is E810T as non-E810T devices can support
GNSS too and PCA9575 check is enough to determine if GNSS is present or
not.

Rename ice_gnss_is_gps_present() to ice_gnss_is_module_present()
because GNSS module supports multiple GNSS providers, not only GPS.

Move functions related to PCA9575 from ice_ptp_hw.c to ice_common.c
to be able to access them when PTP is disabled in the kernel, but GNSS
is enabled.

Remove logical AND with ICE_AQC_LINK_TOPO_NODE_TYPE_M in
ice_get_pca9575_handle(), which has no effect, and reorder device type
checks to check the device_id first, then set other variables.

	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit e2c6737)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit 9973ac9

Remove unnecessary ice_is_e8xx() functions and PHY model. Instead, use
MAC type where applicable.

Don't check device type in ice_ptp_maybe_trigger_tx_interrupt(), because
in reality it depends on the ready bitmap, which only E810 does not
have.

Call ice_ptp_cfg_phy_interrupt() unconditionally, because all further
function calls check the MAC type anyway and this allows simpler code
in the future with addition of the new MAC types.

Reorder ICE_MAC_* cases in switches in ice_ptp* as in enum ice_mac_type.

	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 9973ac9)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit ea7029f

Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.

Rename a couple defines for better clarity and consistency.

	Reviewed-by: Simon Horman <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit ea7029f)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit f9472aa

Simplify TSYN IRQ processing by moving it to a separate function and
having appropriate behavior per PHY model, instead of multiple
conditions not related to HW, but to specific timestamping modes.

When PTP is not enabled in the kernel, don't process timestamps and
return IRQ_HANDLED.

	Reviewed-by: Przemek Kitszel <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit f9472aa)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Jacob Keller <[email protected]>
commit 92456e7

Devices supported by ice driver use essentially the same logic for
performing a crosstimestamp. The only difference is that E830 hardware
has different offsets. Instead of having multiple implementations,
combine them into a single ice_capture_crosststamp() function.

To support both hardware types, the ice_capture_crosststamp function
must be able to determine the appropriate registers to access. To handle
this, pass a custom context structure instead of the PF pointer. This
structure, ice_crosststamp_ctx, contains a pointer to the PF, and
a pointer to the device configuration structure. This new structure also
will make it easier to implement historic snapshot support in a future
commit.

The device configuration structure is a static const data which defines
the offsets and flags for the various registers. This includes the lock
register, the cross timestamp control register, the upper and lower ART
system time capture registers, and the upper and lower device time
capture registers for each timer index.

Use the configuration structure to access all of the registers in
ice_capture_crosststamp(). Ensure that we don't over-run the device time
array by checking that the timer index is 0 or 1. Previously this was
simply assumed, and it would cause the device to read an incorrect and
likely garbage register.

It does feel like there should be a kernel interface for managing
register offsets like this, but the closest thing I saw was
<linux/regmap.h> which is interesting but not quite what we're looking
for...

Use rd32_poll_timeout() to read lock_reg and ctl_reg.

Add snapshot system time for historic interpolation.

Remove X86_FEATURE_ART and X86_FEATURE_TSC_KNOWN_FREQ from all E82X
devices because those are SoCs, which will always have those features.

	Reviewed-by: Przemek Kitszel <[email protected]>
	Signed-off-by: Jacob Keller <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 92456e7)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Karol Kolacinski <[email protected]>
commit 381d577

Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.

	Reviewed-by: Przemek Kitszel <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 381d577)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Michal Michalik <[email protected]>
commit f003075
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-5.14.0-570.49.1.el9_6/f0030752.failed

Add specific functions and definitions for E830 devices to enable
PTP support.

E830 devices support direct write to GLTSYN_ registers without shadow
registers and 64 bit read of PHC time.

Enable PTM for E830 device, which is required for cross timestamp and
and dependency on PCIE_PTM for ICE_HWTS.

Check X86_FEATURE_ART for E830 as it may not be present in the CPU.

	Cc: Anna-Maria Behnsen <[email protected]>
	Cc: Frederic Weisbecker <[email protected]>
	Cc: Thomas Gleixner <[email protected]>
	Reviewed-by: Przemek Kitszel <[email protected]>
Co-developed-by: Jacob Keller <[email protected]>
	Signed-off-by: Jacob Keller <[email protected]>
Co-developed-by: Milena Olech <[email protected]>
	Signed-off-by: Milena Olech <[email protected]>
Co-developed-by: Paul Greenwalt <[email protected]>
	Signed-off-by: Paul Greenwalt <[email protected]>
	Signed-off-by: Michal Michalik <[email protected]>
Co-developed-by: Karol Kolacinski <[email protected]>
	Signed-off-by: Karol Kolacinski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit f003075)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	drivers/net/ethernet/intel/ice/ice_ptp_hw.h
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Jacob Keller <[email protected]>
commit 403bf04

The E810 device has support for a "low latency" firmware interface to
access and read the Tx timestamps. This interface does not use the standard
Tx timestamp logic, due to the latency overhead of proxying sideband
command requests over the firmware AdminQ.

The logic still makes use of the Tx timestamp tracking structure,
ice_ptp_tx, as it uses the same "ready" bitmap to track which Tx
timestamps complete.

Unfortunately, the ice_ptp_ts_irq() function does not check if the tracker
is initialized before its first access. This results in NULL dereference or
use-after-free bugs similar to the following:

[245977.278756] BUG: kernel NULL pointer dereference, address: 0000000000000000
[245977.278774] RIP: 0010:_find_first_bit+0x19/0x40
[245977.278796] Call Trace:
[245977.278809]  ? ice_misc_intr+0x364/0x380 [ice]

This can occur if a Tx timestamp interrupt races with the driver reset
logic.

Fix this by only checking the in_use bitmap (and other fields) if the
tracker is marked as initialized. The reset flow will clear the init field
under lock before it tears the tracker down, thus preventing any
use-after-free or NULL access.

Fixes: f9472aa ("ice: Process TSYN IRQ in a separate function")
	Signed-off-by: Jacob Keller <[email protected]>
	Reviewed-by: Paul Menzel <[email protected]>
	Reviewed-by: Aleksandr Loktionov <[email protected]>
	Tested-by: Rinitha S <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 403bf04)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Jacob Keller <[email protected]>
commit f648633

Recent versions of the E810 firmware have support for an extra interrupt to
handle report of the "low latency" Tx timestamps coming from the
specialized low latency firmware interface. Instead of polling the
registers, software can wait until the low latency interrupt is fired.

This logic makes use of the Tx timestamp tracking structure, ice_ptp_tx, as
it uses the same "ready" bitmap to track which Tx timestamps complete.

Unfortunately, the ice_ll_ts_intr() function does not check if the
tracker is initialized before its first access. This results in NULL
dereference or use-after-free bugs similar to the issues fixed in the
ice_ptp_ts_irq() function.

Fix this by only checking the in_use bitmap (and other fields) if the
tracker is marked as initialized. The reset flow will clear the init field
under lock before it tears the tracker down, thus preventing any
use-after-free or NULL access.

Fixes: 82e71b2 ("ice: Enable SW interrupt from FW for LL TS")
	Signed-off-by: Jacob Keller <[email protected]>
	Reviewed-by: Paul Menzel <[email protected]>
	Tested-by: Rinitha S <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit f648633)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Anton Nadezhdin <[email protected]>
commit a5a441a

Set use_nsecs=true as timestamp is reported in ns. Lack of this result
in smaller timestamp error window which cause error during phc2sys
execution on E825 NICs:
phc2sys[1768.256]: ioctl PTP_SYS_OFFSET_PRECISE: Invalid argument

This problem was introduced in the cited commit which omitted setting
use_nsecs to true when converting the ice driver to use
convert_base_to_cs().

Testing hints (ethX is PF netdev):
phc2sys -s ethX -c CLOCK_REALTIME  -O 37 -m
phc2sys[1769.256]: CLOCK_REALTIME phc offset -5 s0 freq      -0 delay    0

Fixes: d4bea54 ("ice/ptp: Remove convert_art_to_tsc()")
	Signed-off-by: Anton Nadezhdin <[email protected]>
	Reviewed-by: Aleksandr Loktionov <[email protected]>
	Reviewed-by: Arkadiusz Kubalewski <[email protected]>
	Tested-by: Rinitha S <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit a5a441a)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Arkadiusz Kubalewski <[email protected]>
commit 6510459

Mask admin command returned max phase adjust value for both input and
output pins. Only 31 bits are relevant, last released data sheet wrongly
points that 32 bits are valid - see [1] 3.2.6.4.1 Get CCU Capabilities
Command for reference. Fix of the datasheet itself is in progress.

Fix the min/max assignment logic, previously the value was wrongly
considered as negative value due to most significant bit being set.

Example of previous broken behavior:
$ ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/dpll.yaml \
--do pin-get --json '{"id":1}'| grep phase-adjust
 'phase-adjust': 0,
 'phase-adjust-max': 16723,
 'phase-adjust-min': -16723,

Correct behavior with the fix:
$ ./tools/net/ynl/cli.py --spec Documentation/netlink/specs/dpll.yaml \
--do pin-get --json '{"id":1}'| grep phase-adjust
 'phase-adjust': 0,
 'phase-adjust-max': 2147466925,
 'phase-adjust-min': -2147466925,

[1] https://cdrdv2.intel.com/v1/dl/getContent/613875?explicitVersion=true

Fixes: 90e1c90 ("ice: dpll: implement phase related callbacks")
	Reviewed-by: Przemek Kitszel <[email protected]>
	Signed-off-by: Arkadiusz Kubalewski <[email protected]>
	Tested-by: Pucha Himasekhar Reddy <[email protected]> (A Contingent worker at Intel)
	Signed-off-by: Tony Nguyen <[email protected]>
(cherry picked from commit 6510459)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
cve CVE-2025-38718
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Xin Long <[email protected]>
commit fd60d8a

A cloned head skb still shares these frag skbs in fraglist with the
original head skb. It's not safe to access these frag skbs.

syzbot reported two use-of-uninitialized-memory bugs caused by this:

  BUG: KMSAN: uninit-value in sctp_inq_pop+0x15b7/0x1920 net/sctp/inqueue.c:211
   sctp_inq_pop+0x15b7/0x1920 net/sctp/inqueue.c:211
   sctp_assoc_bh_rcv+0x1a7/0xc50 net/sctp/associola.c:998
   sctp_inq_push+0x2ef/0x380 net/sctp/inqueue.c:88
   sctp_backlog_rcv+0x397/0xdb0 net/sctp/input.c:331
   sk_backlog_rcv+0x13b/0x420 include/net/sock.h:1122
   __release_sock+0x1da/0x330 net/core/sock.c:3106
   release_sock+0x6b/0x250 net/core/sock.c:3660
   sctp_wait_for_connect+0x487/0x820 net/sctp/socket.c:9360
   sctp_sendmsg_to_asoc+0x1ec1/0x1f00 net/sctp/socket.c:1885
   sctp_sendmsg+0x32b9/0x4a80 net/sctp/socket.c:2031
   inet_sendmsg+0x25a/0x280 net/ipv4/af_inet.c:851
   sock_sendmsg_nosec net/socket.c:718 [inline]

and

  BUG: KMSAN: uninit-value in sctp_assoc_bh_rcv+0x34e/0xbc0 net/sctp/associola.c:987
   sctp_assoc_bh_rcv+0x34e/0xbc0 net/sctp/associola.c:987
   sctp_inq_push+0x2a3/0x350 net/sctp/inqueue.c:88
   sctp_backlog_rcv+0x3c7/0xda0 net/sctp/input.c:331
   sk_backlog_rcv+0x142/0x420 include/net/sock.h:1148
   __release_sock+0x1d3/0x330 net/core/sock.c:3213
   release_sock+0x6b/0x270 net/core/sock.c:3767
   sctp_wait_for_connect+0x458/0x820 net/sctp/socket.c:9367
   sctp_sendmsg_to_asoc+0x223a/0x2260 net/sctp/socket.c:1886
   sctp_sendmsg+0x3910/0x49f0 net/sctp/socket.c:2032
   inet_sendmsg+0x269/0x2a0 net/ipv4/af_inet.c:851
   sock_sendmsg_nosec net/socket.c:712 [inline]

This patch fixes it by linearizing cloned gso packets in sctp_rcv().

Fixes: 90017ac ("sctp: Add GSO support")
	Reported-by: [email protected]
	Reported-by: [email protected]
	Signed-off-by: Xin Long <[email protected]>
	Reviewed-by: Marcelo Ricardo Leitner <[email protected]>
Link: https://patch.msgid.link/dd7dc337b99876d4132d0961f776913719f7d225.1754595611.git.lucien.xin@gmail.com
	Signed-off-by: Jakub Kicinski <[email protected]>
(cherry picked from commit fd60d8a)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Antoine Tenart <[email protected]>
commit e3c674d

If a GSO skb is sent through a Geneve tunnel and if Geneve options are
added, the split GSO skb might not fit in the MTU anymore and an ICMP
frag needed packet can be generated. In such case the ICMP packet might
go through the segmentation logic (and dropped) later if it reaches a
path were the GSO status is checked and segmentation is required.

This is especially true when an OvS bridge is used with a Geneve tunnel
attached to it. The following set of actions could lead to the ICMP
packet being wrongfully segmented:

1. An skb is constructed by the TCP layer (e.g. gso_type SKB_GSO_TCPV4,
   segs >= 2).

2. The skb hits the OvS bridge where Geneve options are added by an OvS
   action before being sent through the tunnel.

3. When the skb is xmited in the tunnel, the split skb does not fit
   anymore in the MTU and iptunnel_pmtud_build_icmp is called to
   generate an ICMP fragmentation needed packet. This is done by reusing
   the original (GSO!) skb. The GSO metadata is not cleared.

4. The ICMP packet being sent back hits the OvS bridge again and because
   skb_is_gso returns true, it goes through queue_gso_packets...

5. ...where __skb_gso_segment is called. The skb is then dropped.

6. Note that in the above example on re-transmission the skb won't be a
   GSO one as it would be segmented (len > MSS) and the ICMP packet
   should go through.

Fix this by resetting the GSO information before reusing an skb in
iptunnel_pmtud_build_icmp and iptunnel_pmtud_build_icmpv6.

Fixes: 4cb47a8 ("tunnels: PMTU discovery support for directly bridged IP packets")
	Reported-by: Adrian Moreno <[email protected]>
	Signed-off-by: Antoine Tenart <[email protected]>
	Reviewed-by: Stefano Brivio <[email protected]>
Link: https://patch.msgid.link/[email protected]
	Signed-off-by: Paolo Abeni <[email protected]>

(cherry picked from commit e3c674d)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
Rebuild_CHGLOG: - ceph: fix client race condition validating r_parent before applying state (Alex Markuze) [RHEL-114962]
Rebuild_FUZZ: 94.96%
commit-author Alex Markuze <[email protected]>
commit 15f519e
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-5.14.0-570.49.1.el9_6/15f519e9.failed

Add validation to ensure the cached parent directory inode matches the
directory info in MDS replies. This prevents client-side race conditions
where concurrent operations (e.g. rename) cause r_parent to become stale
between request initiation and reply processing, which could lead to
applying state changes to incorrect directory inodes.

[ idryomov: folded a kerneldoc fixup and a follow-up fix from Alex to
  move CEPH_CAP_PIN reference when r_parent is updated:

  When the parent directory lock is not held, req->r_parent can become
  stale and is updated to point to the correct inode.  However, the
  associated CEPH_CAP_PIN reference was not being adjusted.  The
  CEPH_CAP_PIN is a reference on an inode that is tracked for
  accounting purposes.  Moving this pin is important to keep the
  accounting balanced. When the pin was not moved from the old parent
  to the new one, it created two problems: The reference on the old,
  stale parent was never released, causing a reference leak.
  A reference for the new parent was never acquired, creating the risk
  of a reference underflow later in ceph_mdsc_release_request().  This
  patch corrects the logic by releasing the pin from the old parent and
  acquiring it for the new parent when r_parent is switched.  This
  ensures reference accounting stays balanced. ]

	Cc: [email protected]
	Signed-off-by: Alex Markuze <[email protected]>
	Reviewed-by: Viacheslav Dubeyko <[email protected]>
	Signed-off-by: Ilya Dryomov <[email protected]>
(cherry picked from commit 15f519e)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	fs/ceph/debugfs.c
#	fs/ceph/dir.c
#	fs/ceph/file.c
#	fs/ceph/inode.c
#	fs/ceph/mds_client.c
#	fs/ceph/mds_client.h
…message

jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
Rebuild_CHGLOG: - ceph: fix client race condition where r_parent becomes stale before sending message (Alex Markuze) [RHEL-114962]
Rebuild_FUZZ: 95.60%
commit-author Alex Markuze <[email protected]>
commit bec324f
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-5.14.0-570.49.1.el9_6/bec324f3.failed

When the parent directory's i_rwsem is not locked, req->r_parent may become
stale due to concurrent operations (e.g. rename) between dentry lookup and
message creation. Validate that r_parent matches the encoded parent inode
and update to the correct inode if a mismatch is detected.

[ idryomov: folded a follow-up fix from Alex to drop extra reference
  from ceph_get_reply_dir() in ceph_fill_trace():

  ceph_get_reply_dir() may return a different, referenced inode when
  r_parent is stale and the parent directory lock is not held.
  ceph_fill_trace() used that inode but failed to drop the reference
  when it differed from req->r_parent, leaking an inode reference.

  Keep the directory inode in a local variable and iput() it at
  function end if it does not match req->r_parent. ]

	Cc: [email protected]
	Signed-off-by: Alex Markuze <[email protected]>
	Reviewed-by: Viacheslav Dubeyko <[email protected]>
	Signed-off-by: Ilya Dryomov <[email protected]>
(cherry picked from commit bec324f)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	fs/ceph/inode.c
jira LE-4311
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Athira Rajeev <[email protected]>
commit 2337b72

Perf trace on perf.data fails as below:

	./perf trace record -- sleep 1
	./perf trace -i perf.data
	perf: Segmentation fault
	Segmentation fault (core dumped)

Backtrace pointed to :
	?? ()
	perf_session.process_user_event ()
	reader.read_event ()
	perf_session.process_events ()
	cmd_trace ()
	run_builtin ()
	handle_internal_command ()
	main ()

Further debug pointed that, segmentation fault happens when
trying to access id_index. Code snippet:

	case PERF_RECORD_ID_INDEX:
		err = tool->id_index(session, event);

Since 'commit 15d4a6f ("perf tool: Remove
perf_tool__fill_defaults()")', perf_tool__fill_defaults is
removed. All tools are initialized using perf_tool__init()
prior to use. But in builtin-trace, perf_tool__init is not
used and hence the defaults are not initialized. Use
perf_tool__init() in perf trace to handle the initialization.

	Reported-by: Tejas Manhas <[email protected]>
	Signed-off-by: Athira Rajeev <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Signed-off-by: Namhyung Kim <[email protected]>
(cherry picked from commit 2337b72)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
cve CVE-2025-39682
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Jakub Kicinski <[email protected]>
commit 62708b9

Each recvmsg() call must process either
 - only contiguous DATA records (any number of them)
 - one non-DATA record

If the next record has different type than what has already been
processed we break out of the main processing loop. If the record
has already been decrypted (which may be the case for TLS 1.3 where
we don't know type until decryption) we queue the pending record
to the rx_list. Next recvmsg() will pick it up from there.

Queuing the skb to rx_list after zero-copy decrypt is not possible,
since in that case we decrypted directly to the user space buffer,
and we don't have an skb to queue (darg.skb points to the ciphertext
skb for access to metadata like length).

Only data records are allowed zero-copy, and we break the processing
loop after each non-data record. So we should never zero-copy and
then find out that the record type has changed. The corner case
we missed is when the initial record comes from rx_list, and it's
zero length.

	Reported-by: Muhammad Alifa Ramdhan <[email protected]>
	Reported-by: Billy Jheng Bing-Jhong <[email protected]>
Fixes: 84c61fe ("tls: rx: do not use the standard strparser")
	Reviewed-by: Sabrina Dubroca <[email protected]>
Link: https://patch.msgid.link/[email protected]
	Signed-off-by: Jakub Kicinski <[email protected]>
(cherry picked from commit 62708b9)
	Signed-off-by: Jonathan Maple <[email protected]>
jira LE-4311
cve CVE-2025-39682
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Jakub Kicinski <[email protected]>
commit a61a3e9
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-5.14.0-570.49.1.el9_6/a61a3e96.failed

Test various combinations of zero-length records.
Unfortunately, kernel cannot be coerced into producing those,
so hardcode the ciphertext messages in the test.

	Reviewed-by: Sabrina Dubroca <[email protected]>
Link: https://patch.msgid.link/[email protected]
	Signed-off-by: Jakub Kicinski <[email protected]>
(cherry picked from commit a61a3e9)
	Signed-off-by: Jonathan Maple <[email protected]>

# Conflicts:
#	tools/testing/selftests/net/tls.c
jira LE-4311
cve CVE-2025-39698
Rebuild_History Non-Buildable kernel-5.14.0-570.49.1.el9_6
commit-author Jens Axboe <[email protected]>
commit 508c131

The io_futex_data is allocated upfront and assigned to the io_kiocb
async_data field, but the request isn't marked with REQ_F_ASYNC_DATA
at that point. Those two should always go together, as the flag tells
io_uring whether the field is valid or not.

Additionally, on failure cleanup, the futex handler frees the data but
does not clear ->async_data. Clear the data and the flag in the error
path as well.

Thanks to Trend Micro Zero Day Initiative and particularly ReDress for
reporting this.

	Cc: [email protected]
Fixes: 194bb58 ("io_uring: add support for futex wake and wait")
	Signed-off-by: Jens Axboe <[email protected]>
(cherry picked from commit 508c131)
	Signed-off-by: Jonathan Maple <[email protected]>
Rebuild_History BUILDABLE
Rebuilding Kernel from rpm changelog with Fuzz Limit: 87.50%
Number of commits in upstream range v5.14~1..kernel-mainline: 324124
Number of commits in rpm: 33
Number of commits matched with upstream: 31 (93.94%)
Number of commits in upstream but not in rpm: 324093
Number of commits NOT found in upstream: 2 (6.06%)

Rebuilding Kernel on Branch rocky9_6_rebuild_kernel-5.14.0-570.49.1.el9_6 for kernel-5.14.0-570.49.1.el9_6
Clean Cherry Picks: 25 (80.65%)
Empty Cherry Picks: 6 (19.35%)
_______________________________

Full Details Located here:
ciq/ciq_backports/kernel-5.14.0-570.49.1.el9_6/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 requested a review from a team October 3, 2025 20:35
@PlaidCat PlaidCat self-assigned this Oct 3, 2025
Copy link
Collaborator

@bmastbergen bmastbergen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🥌

@PlaidCat PlaidCat requested a review from a team October 3, 2025 21:06
Copy link
Collaborator

@kerneltoast kerneltoast left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚢

@PlaidCat PlaidCat merged commit 6be68ff into rocky9_6 Oct 3, 2025
4 of 6 checks passed
@PlaidCat PlaidCat deleted the rocky9_6_rebuild branch October 3, 2025 22:32
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.

3 participants