CVE-2024-56700

media: wl128x: Fix atomicity violation in fmc_send_cmd()

State
Published
Severity
Not scored
Published
Dec 28, 2024
Updated
May 11, 2026
Reserved
Dec 27, 2024

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

media: wl128x: Fix atomicity violation in fmc_send_cmd()

Atomicity violation occurs when the fmc_send_cmd() function is executed simultaneously with the modification of the fmdev->resp_skb value. Consider a scenario where, after passing the validity check within the function, a non-null fmdev->resp_skb variable is assigned a null value. This results in an invalid fmdev->resp_skb variable passing the validity check. As seen in the later part of the function, skb = fmdev->resp_skb; when the invalid fmdev->resp_skb passes the check, a null pointer dereference error may occur at line 478, evt_hdr = (void *)skb->data;

To address this issue, it is recommended to include the validity check of fmdev->resp_skb within the locked section of the function. This modification ensures that the value of fmdev->resp_skb does not change during the validation process, thereby maintaining its validity.

This possible bug is found by an experimental static analysis tool developed by our team. This tool analyzes the locking APIs to extract function pairs that can be concurrently executed, and then analyzes the instructions in the paired functions to identify possible concurrency bugs including data races and atomicity violations.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before d16109c9fdc1b8cea4fe63b42e06e926c3f68990Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before 3c818ad07e964bca3d27adac1e1f50e1e3c9180eAffected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before d7408a052aa1b4f6fb6f1c7a8877b84017a07ac9Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before ed228b74d8a500380150965d5becabf9a1e33141Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before 372dc9509122e5d45d4c12978e31c3c7d00aaca4Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before 378ce4e08ca2b1ac7bbf1d57b68643ca4226c5f8Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before 2e63c908de357048180516b84740ed62dac0b269Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before 80a3b2ee01eecf22dfa06968b3cde92c691dea10Affected
  • e8454ff7b9a4d56f02c095bff12d3c92ef4c7fa6 to before ca59f9956d4519ab18ab2270be47c6b8c6ced091Affected
LinuxLinux
  • 2.6.39Affected
  • before 2.6.39Not affected
  • 4.19.325 through 4.19.*Not affected
  • 5.4.287 through 5.4.*Not affected
  • 5.10.231 through 5.10.*Not affected
  • 5.15.174 through 5.15.*Not affected
  • 6.1.120 through 6.1.*Not affected
  • 6.6.64 through 6.6.*Not affected
  • 6.11.11 through 6.11.*Not affected
  • 6.12.2 through 6.12.*Not affected
  • 6.13 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.