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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2024-38600— ALSA: Fix deadlocks with kctl removals at disconnection

EPSS 0.02% · P7
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-38600

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
ALSA: Fix deadlocks with kctl removals at disconnection
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: ALSA: Fix deadlocks with kctl removals at disconnection In snd_card_disconnect(), we set card->shutdown flag at the beginning, call callbacks and do sync for card->power_ref_sleep waiters at the end. The callback may delete a kctl element, and this can lead to a deadlock when the device was in the suspended state. Namely: * A process waits for the power up at snd_power_ref_and_wait() in snd_ctl_info() or read/write() inside card->controls_rwsem. * The system gets disconnected meanwhile, and the driver tries to delete a kctl via snd_ctl_remove*(); it tries to take card->controls_rwsem again, but this is already locked by the above. Since the sleeper isn't woken up, this deadlocks. An easy fix is to wake up sleepers before processing the driver disconnect callbacks but right after setting the card->shutdown flag. Then all sleepers will abort immediately, and the code flows again. So, basically this patch moves the wait_event() call at the right timing. While we're at it, just to be sure, call wait_event_all() instead of wait_event(), although we don't use exclusive events on this queue for now.
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存在安全漏洞,该漏洞源于断开连接时删除 kctl 会导致死锁。
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 e94fdbd7b25d87e64688bb109e2c550217a4c879 ~ ff80185e7b7b547a0911fcfc8aefc61c3e8304d7 -
LinuxLinux 5.14 -

II. Public POCs for CVE-2024-38600

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-38600

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-06-19 · 122 CVEs total

CVE-2024-38611media: i2c: et8ek8: Don't strip remove function when driver is builtin
CVE-2021-47585btrfs: fix memory leak in __add_inode_ref()
CVE-2021-47584iocost: Fix divide-by-zero on donation from low hweight cgroup
CVE-2021-47582USB: core: Make do_proc_control() and do_proc_bulk() killable
CVE-2021-47583media: mxl111sf: change mutex_init() location
CVE-2021-47579ovl: fix warning in ovl_create_real()
CVE-2021-47580scsi: scsi_debug: Fix type in min_t to avoid stack OOB
CVE-2021-47578scsi: scsi_debug: Don't call kcalloc() if size arg is zero
CVE-2021-47576scsi: scsi_debug: Sanity check block descriptor length in resp_mode_select()
CVE-2021-47577io-wq: check for wq exit after adding new worker task_work
CVE-2024-38617kunit/fortify: Fix mismatched kvalloc()/vfree() usage
CVE-2024-38618ALSA: timer: Set lower bound of start tick time
CVE-2024-38616wifi: carl9170: re-fix fortified-memset warning
CVE-2024-38615cpufreq: exit() callback is optional
CVE-2024-38614openrisc: traps: Don't send signals to kernel mode threads
CVE-2024-38613m68k: Fix spinlock race in kernel thread creation
CVE-2024-38602ax25: Fix reference count leak issues of ax25_dev
CVE-2024-38603drivers/perf: hisi: hns3: Actually use devm_add_action_or_reset()
CVE-2024-38601ring-buffer: Fix a race between readers and resize checks
CVE-2024-38604block: refine the EOF check in blkdev_iomap_begin

Showing top 20 of 122 CVEs. View all on vendor page → →

IV. Related Vulnerabilities

V. Comments for CVE-2024-38600

No comments yet


Leave a comment