Vulnerability · Published Mar 6, 2024 · Assigned by Linux

CVE-2024-26627scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler

Medium 5.5

In plain English

A medium-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 15% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)5.5Medium
Exploit odds (30 days)0.2%top 84.6% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

In the Linux kernel, the following vulnerability has been resolved: scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler Inside scsi_eh_wakeup(), scsi_host_busy() is called & checked with host lock every time for deciding if error handler kthread needs to be waken up. This can be too heavy in case of recovery, such as: - N hardware queues - queue depth is M for each hardware queue - each scsi_host_busy() iterates over (N * M) tag/requests If recovery is triggered in case that all requests are in-flight, each scsi_eh_wakeup() is strictly serialized, when scsi_eh_wakeup() is called for the last in-flight request, scsi_host_busy() has been run for (N * M - 1) times, and request has been iterated for (N*M - 1) * (N * M) times. If both N and M are big enough, hard lockup can be triggered on acquiring host lock, and it is observed on mpi3mr(128 hw queues, queue depth 8169). Fix the issue by calling scsi_host_busy() outside the host lock. We don't need the host lock for getting busy count because host the lock never covers that. [mkp: Drop unnecessary 'busy' variables pointed out by Bart]

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12linux6.1.82-1DEBIAN-CVE-2024-26627
Debian:13linux6.7.7-1DEBIAN-CVE-2024-26627
Debian:14linux6.7.7-1DEBIAN-CVE-2024-26627
Ubuntu:22.04:LTSlinux5.15.0-106.116UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-allwinner-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-aws5.15.0-1061.67UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-aws-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-aws-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-aws-6.5no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure5.15.0-1063.72UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure-6.56.5.0-1022.23~22.04.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure-fde5.15.0-1063.72.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure-fde-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-azure-fde-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-gcp5.15.0-1059.67UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-gcp-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-gcp-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-gcp-6.56.5.0-1022.24~22.04.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-gke5.15.0-1058.63UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-gkeop5.15.0-1044.51UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-hwe-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-hwe-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-hwe-6.56.5.0-41.41~22.04.2UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-ibm5.15.0-1054.57UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-intel-iotg5.15.0-1057.63UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-kvm5.15.0-1058.63UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-lowlatency5.15.0-106.116UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-lowlatency-hwe-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-lowlatency-hwe-6.56.5.0-41.41.1~22.04.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-nvidia5.15.0-1054.55UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-nvidia-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-nvidia-6.56.5.0-1021.22UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-nvidia-tegra5.15.0-1026.26UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-nvidia-tegra-igx5.15.0-1015.15UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-oem-5.17no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-oem-6.0no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-oem-6.16.1.0-1035.35UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-oem-6.56.5.0-1024.25UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-oracle5.15.0-1059.65UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-oracle-6.56.5.0-1024.24~22.04.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-raspi5.15.0-1054.57UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-realtimeno fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-riscvno fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-riscv-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-riscv-6.56.5.0-40.40.1~22.04.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-starfive-5.19no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-starfive-6.2no fix listedUBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-starfive-6.56.5.0-1015.16~22.04.1UBUNTU-CVE-2024-26627
Ubuntu:22.04:LTSlinux-xilinx-zynqmp5.15.0-1030.34UBUNTU-CVE-2024-26627

Affected products (as reported)

VendorProductVersions
Linux Linux 6eb045e092efefafc6687409a6fa6d1dabf0fb69 – before f5944853f7a961fedc1227dc8f60393f8936d37c6eb045e092efefafc6687409a6fa6d1dabf0fb69 – before d37c1c81419fdef66ebd0747cf76fb8b7d9790596eb045e092efefafc6687409a6fa6d1dabf0fb69 – before db6338f45971b4285ea368432a84033690eaf53c6eb045e092efefafc6687409a6fa6d1dabf0fb69 – before 65ead8468c21c2676d4d06f50b46beffdea69df16eb045e092efefafc6687409a6fa6d1dabf0fb69 – before 07e3ca0f17f579491b5f54e9ed05173d6c1d6fcb6eb045e092efefafc6687409a6fa6d1dabf0fb69 – before 4373534a9850627a2695317944898eb1283a2db0
Linux Linux 5.5

References