Skip to content

[ciqlts9_6] Multiple patches tested (8 commits)#963

Open
ciq-kernel-automation[bot] wants to merge 8 commits intociqlts9_6from
{ciq_kernel_automation}_ciqlts9_6
Open

[ciqlts9_6] Multiple patches tested (8 commits)#963
ciq-kernel-automation[bot] wants to merge 8 commits intociqlts9_6from
{ciq_kernel_automation}_ciqlts9_6

Conversation

@ciq-kernel-automation
Copy link

Summary

This PR has been automatically created after successful completion of all CI stages.

Commit Message(s)

x86/tdx: Fix "in-kernel MMIO" check

jira VULN-167666
cve CVE-2024-47727
commit-author Alexey Gladkov (Intel) <legion@kernel.org>
commit d4fc4d01471528da8a9797a065982e05090e1d81
net: af_can: do not leave a dangling sk pointer in can_create()

jira VULN-167094
cve CVE-2024-56603
commit-author Ignat Korchagin <ignat@cloudflare.com>
commit 811a7ca7320c062e15d0f5b171fe6ad8592d1434
netfilter: nft_tunnel: fix geneve_opt type confusion addition

jira VULN-161619
cve CVE-2025-22056
commit-author Lin Ma <linma@zju.edu.cn>
commit 1b755d8eb1ace3870789d48fbd94f386ad6e30be
RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug

jira VULN-163443
cve CVE-2025-38024
commit-author Zhu Yanjun <yanjun.zhu@linux.dev>
commit f81b33582f9339d2dc17c69b92040d3650bb4bae
dm: fix dm_blk_report_zones

jira VULN-162998
cve CVE-2025-38141
commit-author Benjamin Marzinski <bmarzins@redhat.com>
commit 37f53a2c60d03743e0eacf7a0c01c279776fef4e
dm: use READ_ONCE in dm_blk_report_zones

jira VULN-162998
cve-bf CVE-2025-38141
commit-author Mikulas Patocka <mpatocka@redhat.com>
commit e9f5a55b70ae6187ab64ef2d1232ae2738e31d1f
dm: fix unlocked test for dm_suspended_md

jira VULN-162998
cve-bf CVE-2025-38141
commit-author Mikulas Patocka <mpatocka@redhat.com>
commit 24c405fdbe215c45e57bba672cc42859038491ee
drm/xe: Make dma-fences compliant with the safe access rules

jira VULN-161996
cve CVE-2025-38703
commit-author Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
commit 6bd90e700b4285e6a7541e00f969cab0d696adde

Test Results

✅ Build Stage

Architecture Build Time Total Time
x86_64 33m 10s 37m 28s
aarch64 18m 35s 21m 30s

✅ Boot Verification

✅ Kernel Selftests

Architecture Passed Failed
x86_64 207 43
aarch64 154 46

Test Comparison

x86_64:

  • ✅ Status: Passed - Within acceptable threshold (±3 tests)
  • Compared against: ciqlts9_6

aarch64:

  • ✅ Status: Passed - Within acceptable threshold (±3 tests)
  • Compared against: ciqlts9_6

🤖 This PR was automatically generated by GitHub Actions
Run ID: 23000233167

CIQ Kernel Automation added 8 commits March 12, 2026 11:29
jira VULN-167666
cve CVE-2024-47727
commit-author Alexey Gladkov (Intel) <legion@kernel.org>
commit d4fc4d0

TDX only supports kernel-initiated MMIO operations. The handle_mmio()
function checks if the #VE exception occurred in the kernel and rejects
the operation if it did not.

However, userspace can deceive the kernel into performing MMIO on its
behalf. For example, if userspace can point a syscall to an MMIO address,
syscall does get_user() or put_user() on it, triggering MMIO #VE. The
kernel will treat the #VE as in-kernel MMIO.

Ensure that the target MMIO address is within the kernel before decoding
instruction.

Fixes: 31d58c4 ("x86/tdx: Handle in-kernel MMIO")
	Signed-off-by: Alexey Gladkov (Intel) <legion@kernel.org>
	Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
	Reviewed-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
	Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
	Cc:stable@vger.kernel.org
Link: https://lore.kernel.org/all/565a804b80387970460a4ebc67c88d1380f61ad1.1726237595.git.legion%40kernel.org
(cherry picked from commit d4fc4d0)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-167094
cve CVE-2024-56603
commit-author Ignat Korchagin <ignat@cloudflare.com>
commit 811a7ca

On error can_create() frees the allocated sk object, but sock_init_data()
has already attached it to the provided sock object. This will leave a
dangling sk pointer in the sock object and may cause use-after-free later.

	Signed-off-by: Ignat Korchagin <ignat@cloudflare.com>
	Reviewed-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
	Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
	Reviewed-by: Marc Kleine-Budde <mkl@pengutronix.de>
Link: https://patch.msgid.link/20241014153808.51894-5-ignat@cloudflare.com
	Signed-off-by: Jakub Kicinski <kuba@kernel.org>
(cherry picked from commit 811a7ca)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-161619
cve CVE-2025-22056
commit-author Lin Ma <linma@zju.edu.cn>
commit 1b755d8

When handling multiple NFTA_TUNNEL_KEY_OPTS_GENEVE attributes, the
parsing logic should place every geneve_opt structure one by one
compactly. Hence, when deciding the next geneve_opt position, the
pointer addition should be in units of char *.

However, the current implementation erroneously does type conversion
before the addition, which will lead to heap out-of-bounds write.

[    6.989857] ==================================================================
[    6.990293] BUG: KASAN: slab-out-of-bounds in nft_tunnel_obj_init+0x977/0xa70
[    6.990725] Write of size 124 at addr ffff888005f18974 by task poc/178
[    6.991162]
[    6.991259] CPU: 0 PID: 178 Comm: poc-oob-write Not tainted 6.1.132 #1
[    6.991655] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.0-0-gd239552ce722-prebuilt.qemu.org 04/01/2014
[    6.992281] Call Trace:
[    6.992423]  <TASK>
[    6.992586]  dump_stack_lvl+0x44/0x5c
[    6.992801]  print_report+0x184/0x4be
[    6.993790]  kasan_report+0xc5/0x100
[    6.994252]  kasan_check_range+0xf3/0x1a0
[    6.994486]  memcpy+0x38/0x60
[    6.994692]  nft_tunnel_obj_init+0x977/0xa70
[    6.995677]  nft_obj_init+0x10c/0x1b0
[    6.995891]  nf_tables_newobj+0x585/0x950
[    6.996922]  nfnetlink_rcv_batch+0xdf9/0x1020
[    6.998997]  nfnetlink_rcv+0x1df/0x220
[    6.999537]  netlink_unicast+0x395/0x530
[    7.000771]  netlink_sendmsg+0x3d0/0x6d0
[    7.001462]  __sock_sendmsg+0x99/0xa0
[    7.001707]  ____sys_sendmsg+0x409/0x450
[    7.002391]  ___sys_sendmsg+0xfd/0x170
[    7.003145]  __sys_sendmsg+0xea/0x170
[    7.004359]  do_syscall_64+0x5e/0x90
[    7.005817]  entry_SYSCALL_64_after_hwframe+0x6e/0xd8
[    7.006127] RIP: 0033:0x7ec756d4e407
[    7.006339] Code: 48 89 fa 4c 89 df e8 38 aa 00 00 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 1a 5b c3 0f 1f 84 00 00 00 00 00 48 8b 44 24 10 0f 05 <5b> c3 0f 1f 80 00 00 00 00 83 e2 39 83 faf
[    7.007364] RSP: 002b:00007ffed5d46760 EFLAGS: 00000202 ORIG_RAX: 000000000000002e
[    7.007827] RAX: ffffffffffffffda RBX: 00007ec756cc4740 RCX: 00007ec756d4e407
[    7.008223] RDX: 0000000000000000 RSI: 00007ffed5d467f0 RDI: 0000000000000003
[    7.008620] RBP: 00007ffed5d468a0 R08: 0000000000000000 R09: 0000000000000000
[    7.009039] R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000000
[    7.009429] R13: 00007ffed5d478b0 R14: 00007ec756ee5000 R15: 00005cbd4e655cb8

Fix this bug with correct pointer addition and conversion in parse
and dump code.

Fixes: 925d844 ("netfilter: nft_tunnel: add support for geneve opts")
	Signed-off-by: Lin Ma <linma@zju.edu.cn>
	Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
(cherry picked from commit 1b755d8)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-163443
cve CVE-2025-38024
commit-author Zhu Yanjun <yanjun.zhu@linux.dev>
commit f81b335

Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x7d/0xa0 lib/dump_stack.c:120
 print_address_description mm/kasan/report.c:378 [inline]
 print_report+0xcf/0x610 mm/kasan/report.c:489
 kasan_report+0xb5/0xe0 mm/kasan/report.c:602
 rxe_queue_cleanup+0xd0/0xe0 drivers/infiniband/sw/rxe/rxe_queue.c:195
 rxe_cq_cleanup+0x3f/0x50 drivers/infiniband/sw/rxe/rxe_cq.c:132
 __rxe_cleanup+0x168/0x300 drivers/infiniband/sw/rxe/rxe_pool.c:232
 rxe_create_cq+0x22e/0x3a0 drivers/infiniband/sw/rxe/rxe_verbs.c:1109
 create_cq+0x658/0xb90 drivers/infiniband/core/uverbs_cmd.c:1052
 ib_uverbs_create_cq+0xc7/0x120 drivers/infiniband/core/uverbs_cmd.c:1095
 ib_uverbs_write+0x969/0xc90 drivers/infiniband/core/uverbs_main.c:679
 vfs_write fs/read_write.c:677 [inline]
 vfs_write+0x26a/0xcc0 fs/read_write.c:659
 ksys_write+0x1b8/0x200 fs/read_write.c:731
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xaa/0x1b0 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

In the function rxe_create_cq, when rxe_cq_from_init fails, the function
rxe_cleanup will be called to handle the allocated resources. In fact,
some memory resources have already been freed in the function
rxe_cq_from_init. Thus, this problem will occur.

The solution is to let rxe_cleanup do all the work.

Fixes: 8700e3e ("Soft RoCE driver")
Link: https://paste.ubuntu.com/p/tJgC42wDf6/
	Tested-by: liuyi <liuy22@mails.tsinghua.edu.cn>
	Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev>
Link: https://patch.msgid.link/20250412075714.3257358-1-yanjun.zhu@linux.dev
	Reviewed-by: Daisuke Matsuda <matsuda-daisuke@fujitsu.com>
	Signed-off-by: Leon Romanovsky <leon@kernel.org>
(cherry picked from commit f81b335)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-162998
cve CVE-2025-38141
commit-author Benjamin Marzinski <bmarzins@redhat.com>
commit 37f53a2

If dm_get_live_table() returned NULL, dm_put_live_table() was never
called. Also, it is possible that md->zone_revalidate_map will change
while calling this function. Only read it once, so that we are always
using the same value. Otherwise we might miss a call to
dm_put_live_table().

Finally, while md->zone_revalidate_map is set and a process is calling
blk_revalidate_disk_zones() to set up the zone append emulation
resources, it is possible that another process, perhaps triggered by
blkdev_report_zones_ioctl(), will call dm_blk_report_zones(). If
blk_revalidate_disk_zones() fails, these resources can be freed while
the other process is still using them, causing a use-after-free error.

blk_revalidate_disk_zones() will only ever be called when initially
setting up the zone append emulation resources, such as when setting up
a zoned dm-crypt table for the first time. Further table swaps will not
set md->zone_revalidate_map or call blk_revalidate_disk_zones().
However it must be called using the new table (referenced by
md->zone_revalidate_map) and the new queue limits while the DM device is
suspended. dm_blk_report_zones() needs some way to distinguish between a
call from blk_revalidate_disk_zones(), which must be allowed to use
md->zone_revalidate_map to access this not yet activated table, and all
other calls to dm_blk_report_zones(), which should not be allowed while
the device is suspended and cannot use md->zone_revalidate_map, since
the zone resources might be freed by the process currently calling
blk_revalidate_disk_zones().

Solve this by tracking the process that sets md->zone_revalidate_map in
dm_revalidate_zones() and only allowing that process to make use of it
in dm_blk_report_zones().

Fixes: f211268 ("dm: Use the block layer zone append emulation")
	Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
	Tested-by: Damien Le Moal <dlemoal@kernel.org>
	Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
	Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
(cherry picked from commit 37f53a2)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-162998
cve-bf CVE-2025-38141
commit-author Mikulas Patocka <mpatocka@redhat.com>
commit e9f5a55

The functon dm_blk_report_zones reads md->zone_revalidate_map, however it
may change while the function is running. Use READ_ONCE.

	Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Fixes: 37f53a2 ("dm: fix dm_blk_report_zones")
	Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
(cherry picked from commit e9f5a55)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-162998
cve-bf CVE-2025-38141
commit-author Mikulas Patocka <mpatocka@redhat.com>
commit 24c405f

The function dm_blk_report_zones tests if the device is suspended with
the "dm_suspended_md" call. However, this function is called without
holding any locks, so the device may be suspended just after it.

Move the call to dm_suspended_md after dm_get_live_table, so that the
device can't be suspended after the suspended state was tested.

	Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Fixes: 37f53a2 ("dm: fix dm_blk_report_zones")
	Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
(cherry picked from commit 24c405f)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
jira VULN-161996
cve CVE-2025-38703
commit-author Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
commit 6bd90e7

Xe can free some of the data pointed to by the dma-fences it exports. Most
notably the timeline name can get freed if userspace closes the associated
submit queue. At the same time the fence could have been exported to a
third party (for example a sync_fence fd) which will then cause an use-
after-free on subsequent access.

To make this safe we need to make the driver compliant with the newly
documented dma-fence rules. Driver has to ensure a RCU grace period
between signalling a fence and freeing any data pointed to by said fence.

For the timeline name we simply make the queue be freed via kfree_rcu and
for the shared lock associated with multiple queues we add a RCU grace
period before freeing the per GT structure holding the lock.

	Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
	Reviewed-by: Matthew Brost <matthew.brost@intel.com>
	Acked-by: Lucas De Marchi <lucas.demarchi@intel.com>
	Signed-off-by: Tvrtko Ursulin <tursulin@ursulin.net>
Link: https://lore.kernel.org/r/20250610164226.10817-5-tvrtko.ursulin@igalia.com
(cherry picked from commit 6bd90e7)
	Signed-off-by: CIQ Kernel Automation <ciq_kernel_automation@ciq.com>
@github-actions
Copy link

🤖 Validation Checks In Progress Workflow run: https://github.com/ctrliq/kernel-src-tree/actions/runs/23008746232

@github-actions
Copy link

🔍 Interdiff Analysis

  • ⚠️ PR commit 85c2f5ed9cf (dm: fix unlocked test for dm_suspended_md) → upstream 24c405fdbe21
    Differences found:
================================================================================
*    CONTEXT DIFFERENCES - surrounding code differences between the patches    *
================================================================================

--- b/drivers/md/dm-zone.c
+++ b/drivers/md/dm-zone.c
@@ -77,5 +71,5 @@
-		ret = dm_blk_do_report_zones(md, map, sector, nr_zones, cb,
-					     data);
+		ret = dm_blk_do_report_zones(md, map, nr_zones, &dm_args);
+	}
 
 	if (put_table)
 		dm_put_live_table(md, srcu_idx);

This is an automated interdiff check for backported commits.

@github-actions
Copy link

Validation checks completed successfully View full results: https://github.com/ctrliq/kernel-src-tree/actions/runs/23008746232

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.

0 participants