CVE-2024-26775

Medium

Description

In the Linux kernel, the following vulnerability has been resolved: aoe: avoid potential deadlock at set_capacity Move set_capacity() outside of the section procected by (&d->lock). To avoid possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- [1] lock(&bdev->bd_size_lock); local_irq_disable(); [2] lock(&d->lock); [3] lock(&bdev->bd_size_lock); <Interrupt> [4] lock(&d->lock); *** DEADLOCK *** Where [1](&bdev->bd_size_lock) hold by zram_add()->set_capacity(). [2]lock(&d->lock) hold by aoeblk_gdalloc(). And aoeblk_gdalloc() is trying to acquire [3](&bdev->bd_size_lock) at set_capacity() call. In this situation an attempt to acquire [4]lock(&d->lock) from aoecmd_cfg_rsp() will lead to deadlock. So the simplest solution is breaking lock dependency [2](&d->lock) -> [3](&bdev->bd_size_lock) by moving set_capacity() outside.

SeverityMedium
CVSS5.5
Exploit probability—
ProductLinux Kernel
PublishedApr 3, 2024
First seenApr 3, 2024

How to fix

Update
  • linux linux_kernel6.1.80, 6.6.19, 6.7.7 or later

Affected products

ProductAffected versionsFixed in
linux linux_kernelv < 6.1.80, 6.2 ≤ v < 6.6.19, 6.7 ≤ v < 6.7.7, 6.86.1.80, 6.6.19, 6.7.7

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.

CVE-2024-26775 · Linux Kernel · Dark Radar