CVE-2026-45898

Updated on 27 May 2026

Severity

7.0 High severity

Details

CVSS score
7.0
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Overview

About vulnerability

In the Linux kernel, the following vulnerability has been resolved:

RDMA/iwcm: Fix workqueue list corruption by removing work_list

The commit e1168f0 (“RDMA/iwcm: Simplify cm_event_handler()”) changed the work submission logic to unconditionally call queue_work() with the expectation that queue_work() would have no effect if work was already pending. The problem is that a free list of struct iwcm_work is used (for which struct work_struct is embedded), so each call to queue_work() is basically unique and therefore does indeed queue the work.

This causes a problem in the work handler which walks the work_list until it’s empty to process entries. This means that a single run of the work handler could process item N+1 and release it back to the free list while the actual workqueue entry is still queued. It could then get reused (INIT_WORK…) and lead to list corruption in the workqueue logic.

Fix this by just removing the work_list. The workqueue already does this for us.

This fixes the following error that was observed when stress testing with ucmatose on an Intel E830 in iWARP mode:

[ 151.465780] list_del corruption. next->prev should be ffff9f0915c69c08, but was ffff9f0a1116be08. (next=ffff9f0a15b11c08) [ 151.466639] ————[ cut here ]———— [ 151.466986] kernel BUG at lib/list_debug.c:67! [ 151.467349] Oops: invalid opcode: 0000 [#1] SMP NOPTI [ 151.467753] CPU: 14 UID: 0 PID: 2306 Comm: kworker/u64:18 Not tainted 6.19.0-rc4+ #1 PREEMPT(voluntary) [ 151.468466] Hardware name: QEMU Ubuntu 24.04 PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 [ 151.469192] Workqueue: 0x0 (iw_cm_wq) [ 151.469478] RIP: 0010:__list_del_entry_valid_or_report+0xf0/0x100 [ 151.469942] Code: c7 58 5f 4c b2 e8 10 50 aa ff 0f 0b 48 89 ef e8 36 57 cb ff 48 8b 55 08 48 89 e9 48 89 de 48 c7 c7 a8 5f 4c b2 e8 f0 4f aa ff <0f> 0b 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 90 90 90 90 90 90 [ 151.471323] RSP: 0000:ffffb15644e7bd68 EFLAGS: 00010046 [ 151.471712] RAX: 000000000000006d RBX: ffff9f0915c69c08 RCX: 0000000000000027 [ 151.472243] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffff9f0a37d9c600 [ 151.472768] RBP: ffff9f0a15b11c08 R08: 0000000000000000 R09: c0000000ffff7fff [ 151.473294] R10: 0000000000000001 R11: ffffb15644e7bba8 R12: ffff9f092339ee68 [ 151.473817] R13: ffff9f0900059c28 R14: ffff9f092339ee78 R15: 0000000000000000 [ 151.474344] FS: 0000000000000000(0000) GS:ffff9f0a847b5000(0000) knlGS:0000000000000000 [ 151.474934] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 151.475362] CR2: 0000559e233a9088 CR3: 000000020296b004 CR4: 0000000000770ef0 [ 151.475895] PKRU: 55555554 [ 151.476118] Call Trace: [ 151.476331] [ 151.476497] move_linked_works+0x49/0xa0 [ 151.476792] __pwq_activate_work.isra.46+0x2f/0xa0 [ 151.477151] pwq_dec_nr_in_flight+0x1e0/0x2f0 [ 151.477479] process_scheduled_works+0x1c8/0x410 [ 151.477823] worker_thread+0x125/0x260 [ 151.478108] ? __pfx_worker_thread+0x10/0x10 [ 151.478430] kthread+0xfe/0x240 [ 151.478671] ? __pfx_kthread+0x10/0x10 [ 151.478955] ? __pfx_kthread+0x10/0x10 [ 151.479240] ret_from_fork+0x208/0x270 [ 151.479523] ? __pfx_kthread+0x10/0x10 [ 151.479806] ret_from_fork_asm+0x1a/0x30 [ 151.480103]

Details

Affected product:
AlmaLinux 9.2 ESU , TuxCare 9.6 ESU
Affected packages:
kernel @ 5.14.0 (+1 more)

KernelCare state

Live-patch status from KernelCare for each operating system.

Operating system Status Covered kernels
AlmaLinux 10 In Rollout
45 kernels
  • 6.12.0-55.27.1.el10_0
  • 6.12.0-55.28.1.el10_0
  • 6.12.0-55.29.1.el10_0
  • 6.12.0-55.30.1.el10_0
  • 6.12.0-55.31.1.el10_0
  • 6.12.0-55.32.1.el10_0
  • 6.12.0-55.33.1.el10_0
  • 6.12.0-55.34.1.el10_0
  • 6.12.0-55.37.1.el10_0
  • 6.12.0-55.38.1.el10_0
  • 6.12.0-55.39.1.el10_0
  • 6.12.0-55.40.1.el10_0
  • 6.12.0-55.42.1.el10_0
  • 6.12.0-55.43.1.el10_0
  • 6.12.0-124.8.1.el10_1
  • 6.12.0-124.13.1.el10_1
  • 6.12.0-124.16.1.el10_1
  • 6.12.0-124.20.1.el10_1
  • 6.12.0-124.21.1.el10_1
  • 6.12.0-124.27.1.el10_1
  • 6.12.0-124.28.1.el10_1
  • 6.12.0-124.29.1.el10_1
  • 6.12.0-124.31.1.el10_1
  • 6.12.0-124.35.1.el10_1
  • 6.12.0-124.38.1.el10_1
  • 6.12.0-124.39.1.el10_1
  • 6.12.0-124.43.1.el10_1
  • 6.12.0-124.45.1.el10_1
  • 6.12.0-124.47.1.el10_1
  • 6.12.0-124.49.1.el10_1
  • 6.12.0-124.52.1.el10_1
  • 6.12.0-124.55.1.el10_1
  • 6.12.0-124.40.1.el10_1
  • 6.12.0-124.52.2.el10_1
  • 6.12.0-124.52.3.el10_1
  • 6.12.0-211.7.1.el10_2
  • 6.12.0-211.7.3.el10_2
  • 6.12.0-124.56.5.el10_1
  • 6.12.0-124.55.3.el10_1
  • 6.12.0-211.20.1.el10_2
  • 6.12.0-211.18.1.el10_2
  • 6.12.0-211.16.1.el10_2
  • 6.12.0-211.22.1.el10_2
  • 6.12.0-211.26.1.el10_2
  • 6.12.0-211.7.4.el10_2
AlmaLinux 9 In Rollout
61 kernels
  • 5.14.0-570.12.1.el9_6
  • 5.14.0-570.16.1.el9_6
  • 5.14.0-570.17.1.el9_6
  • 5.14.0-570.18.1.el9_6
  • 5.14.0-570.19.1.el9_6
  • 5.14.0-570.21.1.el9_6
  • 5.14.0-570.22.1.el9_6
  • 5.14.0-570.23.1.el9_6
  • 5.14.0-570.24.1.el9_6
  • 5.14.0-570.25.1.el9_6
  • 5.14.0-570.26.1.el9_6
  • 5.14.0-570.28.1.el9_6
  • 5.14.0-570.30.1.el9_6
  • 5.14.0-570.32.1.el9_6
  • 5.14.0-570.33.2.el9_6
  • 5.14.0-570.35.1.el9_6
  • 5.14.0-570.37.1.el9_6
  • 5.14.0-570.39.1.el9_6
  • 5.14.0-570.41.1.el9_6
  • 5.14.0-570.42.2.el9_6
  • 5.14.0-570.44.1.el9_6
  • 5.14.0-570.46.1.el9_6
  • 5.14.0-570.49.1.el9_6
  • 5.14.0-570.51.1.el9_6
  • 5.14.0-570.52.1.el9_6
  • 5.14.0-570.55.1.el9_6
  • 5.14.0-570.58.1.el9_6
  • 5.14.0-570.60.1.el9_6
  • 5.14.0-570.62.1.el9_6
  • 5.14.0-611.5.1.el9_7
  • 5.14.0-611.9.1.el9_7
  • 5.14.0-611.11.1.el9_7
  • 5.14.0-611.13.1.el9_7
  • 5.14.0-611.16.1.el9_7
  • 5.14.0-611.20.1.el9_7
  • 5.14.0-611.24.1.el9_7
  • 5.14.0-611.26.1.el9_7
  • 5.14.0-611.27.1.el9_7
  • 5.14.0-611.30.1.el9_7
  • 5.14.0-611.34.1.el9_7
  • 5.14.0-611.35.1.el9_7
  • 5.14.0-611.36.1.el9_7
  • 5.14.0-611.38.1.el9_7
  • 5.14.0-611.41.1.el9_7
  • 5.14.0-611.45.1.el9_7
  • 5.14.0-611.42.1.el9_7
  • 5.14.0-611.47.1.el9_7
  • 5.14.0-611.49.1.el9_7
  • 5.14.0-611.54.1.el9_7
  • 5.14.0-611.49.2.el9_7
  • 5.14.0-611.54.3.el9_7
  • 5.14.0-611.54.6.el9_7
  • 5.14.0-687.5.1.el9_8
  • 5.14.0-687.5.3.el9_8
  • 5.14.0-611.55.1.el9_7
  • 5.14.0-687.10.1.el9_8
  • 5.14.0-687.12.1.el9_8
  • 5.14.0-687.13.1.el9_8
  • 5.14.0-687.15.1.el9_8
  • 5.14.0-687.5.4.el9_8
  • 5.14.0-687.17.1.el9_8
Debian 13 Planned
Oracle Linux 9 Released
54 kernels
  • 5.14.0-570.12.1.0.1.el9_6
  • 5.14.0-570.16.1.0.1.el9_6
  • 5.14.0-570.17.1.0.1.el9_6
  • 5.14.0-570.18.1.0.1.el9_6
  • 5.14.0-570.19.1.0.1.el9_6
  • 5.14.0-570.21.1.0.1.el9_6
  • 5.14.0-570.22.1.0.1.el9_6
  • 5.14.0-570.23.1.0.1.el9_6
  • 5.14.0-570.24.1.0.1.el9_6
  • 5.14.0-570.25.1.0.1.el9_6
  • 5.14.0-570.26.1.0.1.el9_6
  • 5.14.0-570.28.1.0.1.el9_6
  • 5.14.0-570.30.1.0.1.el9_6
  • 5.14.0-570.32.1.0.1.el9_6
  • 5.14.0-570.33.2.0.1.el9_6
  • 5.14.0-570.35.1.0.1.el9_6
  • 5.14.0-570.37.1.0.1.el9_6
  • 5.14.0-570.39.1.0.1.el9_6
  • 5.14.0-570.41.1.0.1.el9_6
  • 5.14.0-570.42.2.0.1.el9_6
  • 5.14.0-570.44.1.0.1.el9_6
  • 5.14.0-570.46.1.0.1.el9_6
  • 5.14.0-570.49.1.0.1.el9_6
  • 5.14.0-570.51.1.0.1.el9_6
  • 5.14.0-570.52.1.0.1.el9_6
  • 5.14.0-570.55.1.0.1.el9_6
  • 5.14.0-570.58.1.0.1.el9_6
  • 5.14.0-570.60.1.0.1.el9_6
  • 5.14.0-570.62.1.0.1.el9_6
  • 5.14.0-611.5.1.el9_7
  • 5.14.0-611.9.1.el9_7
  • 5.14.0-611.7.1.el9_7
  • 5.14.0-611.8.1.el9_7
  • 5.14.0-611.11.1.el9_7
  • 5.14.0-611.13.1.el9_7
  • 5.14.0-611.16.1.el9_7
  • 5.14.0-611.20.1.el9_7
  • 5.14.0-611.24.1.el9_7
  • 5.14.0-611.26.1.el9_7
  • 5.14.0-611.27.1.el9_7
  • 5.14.0-611.30.1.el9_7
  • 5.14.0-611.34.1.el9_7
  • 5.14.0-611.35.1.el9_7
  • 5.14.0-611.36.1.el9_7
  • 5.14.0-611.38.1.el9_7
  • 5.14.0-611.41.1.el9_7
  • 5.14.0-611.42.1.el9_7
  • 5.14.0-611.45.1.el9_7
  • 5.14.0-611.47.1.el9_7
  • 5.14.0-611.49.1.el9_7
  • 5.14.0-611.54.1.el9_7
  • 5.14.0-611.55.1.el9_7
  • 5.14.0-687.5.3.el9_8
  • 5.14.0-687.17.1.el9_8
RHEL 10 In Rollout
44 kernels
  • 6.12.0-55.27.1.el10_0
  • 6.12.0-55.28.1.el10_0
  • 6.12.0-55.29.1.el10_0
  • 6.12.0-55.30.1.el10_0
  • 6.12.0-55.31.1.el10_0
  • 6.12.0-55.32.1.el10_0
  • 6.12.0-55.33.1.el10_0
  • 6.12.0-55.34.1.el10_0
  • 6.12.0-55.37.1.el10_0
  • 6.12.0-55.38.1.el10_0
  • 6.12.0-55.39.1.el10_0
  • 6.12.0-55.40.1.el10_0
  • 6.12.0-55.41.1.el10_0
  • 6.12.0-55.42.1.el10_0
  • 6.12.0-55.43.1.el10_0
  • 6.12.0-124.9.1.el10_1
  • 6.12.0-124.8.1.el10_1
  • 6.12.0-124.11.1.el10_1
  • 6.12.0-124.13.1.el10_1
  • 6.12.0-124.16.1.el10_1
  • 6.12.0-124.20.1.el10_1
  • 6.12.0-124.21.1.el10_1
  • 6.12.0-124.27.1.el10_1
  • 6.12.0-124.28.1.el10_1
  • 6.12.0-124.29.1.el10_1
  • 6.12.0-124.31.1.el10_1
  • 6.12.0-124.35.1.el10_1
  • 6.12.0-124.38.1.el10_1
  • 6.12.0-124.39.1.el10_1
  • 6.12.0-124.43.1.el10_1
  • 6.12.0-124.45.1.el10_1
  • 6.12.0-124.47.1.el10_1
  • 6.12.0-124.49.1.el10_1
  • 6.12.0-124.52.1.el10_1
  • 6.12.0-124.55.1.el10_1
  • 6.12.0-124.56.1.el10_1
  • 6.12.0-211.16.1.el10_2
  • 6.12.0-211.7.1.el10_2
  • 6.12.0-211.7.3.el10_2
  • 6.12.0-124.40.1.el10_1
  • 6.12.0-211.18.1.el10_2
  • 6.12.0-211.20.1.el10_2
  • 6.12.0-211.22.1.el10_2
  • 6.12.0-211.26.1.el10_2
RHEL 9 Released
59 kernels
  • 5.14.0-570.12.1.el9_6
  • 5.14.0-570.16.1.el9_6
  • 5.14.0-570.17.1.el9_6
  • 5.14.0-570.18.1.el9_6
  • 5.14.0-570.19.1.el9_6
  • 5.14.0-570.21.1.el9_6
  • 5.14.0-570.22.1.el9_6
  • 5.14.0-570.23.1.el9_6
  • 5.14.0-570.24.1.el9_6
  • 5.14.0-570.25.1.el9_6
  • 5.14.0-570.26.1.el9_6
  • 5.14.0-570.28.1.el9_6
  • 5.14.0-570.30.1.el9_6
  • 5.14.0-570.32.1.el9_6
  • 5.14.0-570.33.2.el9_6
  • 5.14.0-570.35.1.el9_6
  • 5.14.0-570.37.1.el9_6
  • 5.14.0-570.39.1.el9_6
  • 5.14.0-570.41.1.el9_6
  • 5.14.0-570.42.2.el9_6
  • 5.14.0-570.44.1.el9_6
  • 5.14.0-570.46.1.el9_6
  • 5.14.0-570.49.1.el9_6
  • 5.14.0-570.51.1.el9_6
  • 5.14.0-570.52.1.el9_6
  • 5.14.0-570.55.1.el9_6
  • 5.14.0-570.58.1.el9_6
  • 5.14.0-570.60.1.el9_6
  • 5.14.0-570.62.1.el9_6
  • 5.14.0-611.5.1.el9_7
  • 5.14.0-611.7.1.el9_7
  • 5.14.0-611.8.1.el9_7
  • 5.14.0-611.9.1.el9_7
  • 5.14.0-611.11.1.el9_7
  • 5.14.0-611.13.1.el9_7
  • 5.14.0-611.16.1.el9_7
  • 5.14.0-611.20.1.el9_7
  • 5.14.0-611.24.1.el9_7
  • 5.14.0-611.26.1.el9_7
  • 5.14.0-611.27.1.el9_7
  • 5.14.0-611.30.1.el9_7
  • 5.14.0-611.34.1.el9_7
  • 5.14.0-611.35.1.el9_7
  • 5.14.0-611.36.1.el9_7
  • 5.14.0-611.38.1.el9_7
  • 5.14.0-611.41.1.el9_7
  • 5.14.0-611.42.1.el9_7
  • 5.14.0-611.45.1.el9_7
  • 5.14.0-611.47.1.el9_7
  • 5.14.0-611.49.1.el9_7
  • 5.14.0-611.54.1.el9_7
  • 5.14.0-611.55.1.el9_7
  • 5.14.0-687.5.1.el9_8
  • 5.14.0-687.5.3.el9_8
  • 5.14.0-687.10.1.el9_8
  • 5.14.0-687.12.1.el9_8
  • 5.14.0-687.13.1.el9_8
  • 5.14.0-687.15.1.el9_8
  • 5.14.0-687.17.1.el9_8
Rocky Linux 10 In Rollout
31 kernels
  • 6.12.0-55.27.1.el10_0
  • 6.12.0-55.29.1.el10_0
  • 6.12.0-55.30.1.el10_0
  • 6.12.0-55.32.1.el10_0
  • 6.12.0-55.34.1.el10_0
  • 6.12.0-55.37.1.el10_0
  • 6.12.0-55.39.1.el10_0
  • 6.12.0-55.40.1.el10_0
  • 6.12.0-55.41.1.el10_0
  • 6.12.0-124.8.1.el10_1
  • 6.12.0-124.13.1.el10_1
  • 6.12.0-124.16.1.el10_1
  • 6.12.0-124.20.1.el10_1
  • 6.12.0-124.21.1.el10_1
  • 6.12.0-124.27.1.el10_1
  • 6.12.0-124.28.1.el10_1
  • 6.12.0-124.29.1.el10_1
  • 6.12.0-124.31.1.el10_1
  • 6.12.0-124.35.1.el10_1
  • 6.12.0-124.38.1.el10_1
  • 6.12.0-124.45.1.el10_1
  • 6.12.0-124.47.1.el10_1
  • 6.12.0-124.49.1.el10_1
  • 6.12.0-124.52.1.el10_1
  • 6.12.0-124.55.1.el10_1
  • 6.12.0-124.56.1.el10_1
  • 6.12.0-124.40.1.el10_1
  • 6.12.0-211.18.1.el10_2
  • 6.12.0-211.22.1.el10_2
  • 6.12.0-211.26.1.el10_2
  • 6.12.0-211.16.1.el10_2.0.1
Rocky Linux 9 In Rollout
40 kernels
  • 5.14.0-570.18.1.el9_6
  • 5.14.0-570.19.1.el9_6
  • 5.14.0-570.21.1.el9_6
  • 5.14.0-570.22.1.el9_6
  • 5.14.0-570.23.1.el9_6
  • 5.14.0-570.25.1.el9_6
  • 5.14.0-570.26.1.el9_6
  • 5.14.0-570.28.1.el9_6
  • 5.14.0-570.30.1.el9_6
  • 5.14.0-570.32.1.el9_6
  • 5.14.0-570.33.2.el9_6
  • 5.14.0-570.37.1.el9_6
  • 5.14.0-570.39.1.el9_6
  • 5.14.0-570.42.2.el9_6
  • 5.14.0-570.49.1.el9_6
  • 5.14.0-570.52.1.el9_6
  • 5.14.0-570.55.1.el9_6
  • 5.14.0-570.58.1.el9_6
  • 5.14.0-611.5.1.el9_7
  • 5.14.0-611.9.1.el9_7
  • 5.14.0-611.11.1.el9_7
  • 5.14.0-611.13.1.el9_7
  • 5.14.0-611.16.1.el9_7
  • 5.14.0-611.20.1.el9_7
  • 5.14.0-611.24.1.el9_7
  • 5.14.0-611.27.1.el9_7
  • 5.14.0-611.26.1.el9_7
  • 5.14.0-611.30.1.el9_7
  • 5.14.0-611.34.1.el9_7
  • 5.14.0-611.36.1.el9_7
  • 5.14.0-611.41.1.el9_7
  • 5.14.0-611.45.1.el9_7
  • 5.14.0-611.47.1.el9_7
  • 5.14.0-611.49.1.el9_7
  • 5.14.0-611.54.1.el9_7
  • 5.14.0-611.55.1.el9_7
  • 5.14.0-687.12.1.el9_8
  • 5.14.0-687.15.1.el9_8
  • 5.14.0-687.17.1.el9_8
  • 5.14.0-687.10.1.el9_8.0.1