LiveActive security incident?Get immediate response
CVE Record

CVE-2022-50818: scsi: pm8001: Fix running_req for internal abort commands

In the Linux kernel, the following vulnerability has been resolved: scsi: pm8001: Fix running_req for internal abort commands Disabling the remote phy for a SATA disk causes a hang: root@(none)$ more /sys/class/sas_phy/phy-0:0:8/target_port_protocols sata root@(none)$ echo 0 > sys/class/sas_phy/phy-0:0:8/enable root@(none)$ [ 67.855950] sas: ex 500e004aaaaaaa1f phy08 change count has changed [ 67.920585] sd 0:0:2:0: [sdc] Synchronizing SCSI cache [ 67.925780] sd 0:0:2:0: [sdc] Synchronize Cache(10) failed: Result: hostbyte=0x04 driverbyte=DRIVER_OK [ 67.935094] sd 0:0:2:0: [sdc] Stopping disk [ 67.939305] sd 0:0:2:0: [sdc] Start/Stop Unit failed: Result: hostbyte=0x04 driverbyte=DRIVER_OK ... [ 123.998998] INFO: task kworker/u192:1:642 blocked for more than 30 seconds. [ 124.005960] Not tainted 6.0.0-rc1-205202-gf26f8f761e83 #218 [ 124.012049] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. [ 124.019872] task:kworker/u192:1 state:D stack:0 pid: 642 ppid: 2 flags:0x00000008 [ 124.028223] Workqueue: 0000:04:00.0_event_q sas_port_event_worker [ 124.034319] Call trace: [ 124.036758] __switch_to+0x128/0x278 [ 124.040333] __schedule+0x434/0xa58 [ 124.043820] schedule+0x94/0x138 [ 124.047045] schedule_timeout+0x2fc/0x368 [ 124.051052] wait_for_completion+0xdc/0x200 [ 124.055234] __flush_workqueue+0x1a8/0x708 [ 124.059328] sas_porte_broadcast_rcvd+0xa8/0xc0 [ 124.063858] sas_port_event_worker+0x60/0x98 [ 124.068126] process_one_work+0x3f8/0x660 [ 124.072134] worker_thread+0x70/0x700 [ 124.075793] kthread+0x1a4/0x1b8 [ 124.079014] ret_from_fork+0x10/0x20 The issue is that the per-device running_req read in pm8001_dev_gone_notify() never goes to zero and we never make progress. This is caused by missing accounting for running_req for when an internal abort command completes. In commit 2cbbf489778e ("scsi: pm8001: Use libsas internal abort support") we started to send internal abort commands as a proper sas_task. In this when we deliver a sas_task to HW the per-device running_req is incremented in pm8001_queue_command(). However it is never decremented for internal abort commnds, so decrement in pm8001_mpi_task_abort_resp().

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

CVE-2022-50818 is a Linux kernel bug in the pm8001 SAS/SATA storage controller driver. Under a device removal or PHY-disable condition, the kernel can hang waiting for storage work to finish. The business impact is primarily availability on systems using this hardware path, not data theft based on the provided sources.

Executive priority

Treat as a targeted availability risk for Linux storage infrastructure, not a broad internet-facing emergency. Prioritize patch validation on servers using pm8001-backed SAS/SATA storage where hangs could affect business operations.

Technical view

The pm8001 driver increments per-device running_req when queuing a sas_task, including internal abort commands, but failed to decrement it when an internal abort completed. pm8001_dev_gone_notify() can then wait forever because running_req never reaches zero, producing blocked kernel worker tasks. The supplied references point to stable kernel commits addressing this accounting bug.

Likely exposure

Exposure appears limited to Linux systems using the pm8001 SCSI/SAS driver with affected kernel versions and relevant SAS/SATA hardware. General Linux hosts without this driver or hardware are unlikely to be exposed.

Exploitation context

The source describes a reproducible hang when disabling a remote PHY for a SATA disk. No CISA KEV listing or provided source indicates active exploitation. Practical triggering likely requires local administrative control, hardware management capability, or specific storage fault conditions.

Researcher notes

Evidence is limited to the CVE record and Linux stable commits. No CVSS, CWE, exploit report, or downstream vendor advisory is included. The bug is tied to commit 2cbbf489778e behavior and fixed by correcting running_req accounting on internal abort completion.

Mitigation direction

  • Identify systems using the Linux pm8001 driver and SAS/SATA storage controllers.
  • Update affected kernels to versions containing the referenced stable fixes.
  • Use distribution kernel advisories to confirm backported fixes.
  • If pm8001 is unused, consider disabling the driver through approved platform controls.
  • Prioritize storage servers where a kernel hang would disrupt critical services.

Validation and detection

  • Check kernel versions against vendor advisories and referenced stable commits.
  • Inventory hosts for loaded pm8001 driver and compatible SAS hardware.
  • Review logs for hung kworker tasks during SAS/SATA device removal events.
  • Confirm patched kernels include the running_req decrement fix.
  • Test remediation in non-production storage environments first.
Prepared
Confidence
medium
Sources
5

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2022-50818 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

0CVSS vectors
0Timeline events
0ADP providers
4Source links

CVSS and timeline data

No CVSS vectors or timeline events were available in the normalized CVE source material.

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux2cbbf489778eb9dde51392ec5f74ae2868e4b857, 2cbbf489778eb9dde51392ec5f74ae2868e4b857, 2cbbf489778eb9dde51392ec5f74ae2868e4b857unaffected
LinuxLinux5.18, 0, 5.19.17, 6.0.3, 6.1affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.