Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2024-43098— i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock

EPSS 0.01% · P0

Affected Version Matrix 16

VendorProductVersion RangeStatus
LinuxLinux3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 9a2173660ee53d5699744f02e6ab7bf89fcd0b1aaffected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 5ac1dd51aaa0ce8b5421d1137e857955a4b6f55eaffected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 2d98fa2a50b8058de52ada168fa5dbabb574711baffected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 816187b1833908941286e71b0041059a4acd52edaffected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< ffe19e363c6f8b992ba835a361542568dea17409affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 1f51ae217d09c361ede900b94735a6d2df6c0344affected
3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0< 6cf7b65f7029914dc0cd7db86fac9ee5159008c6affected
5.0affected
… +8 more rows
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-43098

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: i3c: Use i3cdev->desc->info instead of calling i3c_device_get_info() to avoid deadlock A deadlock may happen since the i3c_master_register() acquires &i3cbus->lock twice. See the log below. Use i3cdev->desc->info instead of calling i3c_device_info() to avoid acquiring the lock twice. v2: - Modified the title and commit message ============================================ WARNING: possible recursive locking detected 6.11.0-mainline -------------------------------------------- init/1 is trying to acquire lock: f1ffff80a6a40dc0 (&i3cbus->lock){++++}-{3:3}, at: i3c_bus_normaluse_lock but task is already holding lock: f1ffff80a6a40dc0 (&i3cbus->lock){++++}-{3:3}, at: i3c_master_register other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&i3cbus->lock); lock(&i3cbus->lock); *** DEADLOCK *** May be due to missing lock nesting notation 2 locks held by init/1: #0: fcffff809b6798f8 (&dev->mutex){....}-{3:3}, at: __driver_attach #1: f1ffff80a6a40dc0 (&i3cbus->lock){++++}-{3:3}, at: i3c_master_register stack backtrace: CPU: 6 UID: 0 PID: 1 Comm: init Call trace: dump_backtrace+0xfc/0x17c show_stack+0x18/0x28 dump_stack_lvl+0x40/0xc0 dump_stack+0x18/0x24 print_deadlock_bug+0x388/0x390 __lock_acquire+0x18bc/0x32ec lock_acquire+0x134/0x2b0 down_read+0x50/0x19c i3c_bus_normaluse_lock+0x14/0x24 i3c_device_get_info+0x24/0x58 i3c_device_uevent+0x34/0xa4 dev_uevent+0x310/0x384 kobject_uevent_env+0x244/0x414 kobject_uevent+0x14/0x20 device_add+0x278/0x460 device_register+0x20/0x34 i3c_master_register_new_i3c_devs+0x78/0x154 i3c_master_register+0x6a0/0x6d4 mtk_i3c_master_probe+0x3b8/0x4d8 platform_probe+0xa0/0xe0 really_probe+0x114/0x454 __driver_probe_device+0xa0/0x15c driver_probe_device+0x3c/0x1ac __driver_attach+0xc4/0x1f0 bus_for_each_dev+0x104/0x160 driver_attach+0x24/0x34 bus_add_driver+0x14c/0x294 driver_register+0x68/0x104 __platform_driver_register+0x20/0x30 init_module+0x20/0xfe4 do_one_initcall+0x184/0x464 do_init_module+0x58/0x1ec load_module+0xefc/0x10c8 __arm64_sys_finit_module+0x238/0x33c invoke_syscall+0x58/0x10c el0_svc_common+0xa8/0xdc do_el0_svc+0x1c/0x28 el0_svc+0x50/0xac el0t_64_sync_handler+0x70/0xbc el0t_64_sync+0x1a8/0x1ac
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于I3C驱动在调用i3c_device_get_info时,可能导致死锁。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 3a379bbcea0af6280e1ca0d1edfcf4e68cde6ee0 ~ 9a2173660ee53d5699744f02e6ab7bf89fcd0b1a -
LinuxLinux 5.0 -

II. Public POCs for CVE-2024-43098

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-43098

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-01-11 · 67 CVEs total

CVE-2024-57793virt: tdx-guest: Just leak decrypted memory on unrecoverable errors
CVE-2024-57878arm64: ptrace: fix partial SETREGSET for NT_ARM_FPMR
CVE-2024-57877arm64: ptrace: fix partial SETREGSET for NT_ARM_POE
CVE-2024-57876drm/dp_mst: Fix resetting msg rx state after topology removal
CVE-2024-57806btrfs: fix transaction atomicity bug when enabling simple quotas
CVE-2024-57805ASoC: SOF: Intel: hda-dai: Do not release the link DMA on STOP
CVE-2024-57804scsi: mpi3mr: Fix corrupt config pages PHY state is switched in sysfs
CVE-2024-57800ALSA: memalloc: prefer dma_mapping_error() over explicit address checking
CVE-2024-57799phy: rockchip: samsung-hdptx: Set drvdata before enabling runtime PM
CVE-2024-57798drm/dp_mst: Ensure mst_primary pointer is valid in drm_dp_mst_handle_up_req()
CVE-2024-57807scsi: megaraid_sas: Fix for a potential deadlock
CVE-2024-57792power: supply: gpio-charger: Fix set charge current limits
CVE-2024-57791net/smc: check return value of sock_recvmsg when draining clc data
CVE-2024-56788net: ethernet: oa_tc6: fix tx skb race condition between reference pointers
CVE-2024-56372net: tun: fix tun_napi_alloc_frags()
CVE-2024-56369drm/modes: Avoid divide by zero harder in drm_mode_vrefresh()
CVE-2024-56368ring-buffer: Fix overflow in __rb_map_vma
CVE-2024-55916Drivers: hv: util: Avoid accessing a ringbuffer not initialized yet
CVE-2024-55881KVM: x86: Play nice with protected guests in complete_hypercall_exit()
CVE-2024-54193accel/ivpu: Fix WARN in ivpu_ipc_send_receive_internal()

Showing top 20 of 67 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2024-43098

No comments yet


Leave a comment