CVE-2026-98212 (GCVE-0-2026-98212)

Vulnerability from cvelistv5 – Published: 2026-10-06 08:44 – Updated: 2026-10-06 08:44
VLAI
Title
mmc: hsq: Fix use-after-free in retry work
Summary
In the Linux kernel, the following vulnerability has been resolved: mmc: hsq: Fix use-after-free in retry work mmc_hsq_pump_requests() queues retry_work when request_atomic() returns -EBUSY; today sdhci-sprd is the only consumer that implements request_atomic(). The work is embedded in a devm-allocated mmc_hsq, but is never cancelled during driver removal. Work still pending at unbind can therefore run after the devm allocation has been released and dereference hsq->mmc and hsq->mrq. Use devm_work_autocancel() to cancel and drain retry_work before the devm allocation is released. By the time devres cleanup begins, mmc_remove_host() has already stopped the host, so no new requests can arm the work. This issue was found by an in-house static analysis tool.
Severity
No CVSS data available.
Impacted products
Vendor Product Version
Linux Linux Affected: 6db96e5810e0a6a345b7d78549de7676ae5b2662 , < c50d6515bffb148c2c12be6d587ec201dfab4c34 (git)
Affected: 6db96e5810e0a6a345b7d78549de7676ae5b2662 , < df2eb59fd9eb33663dc1053f5a4ed851e0aa1f67 (git)
Affected: 6db96e5810e0a6a345b7d78549de7676ae5b2662 , < 8439bf262ce3267bcfee29d3c61605f1731a2271 (git)
Affected: 6db96e5810e0a6a345b7d78549de7676ae5b2662 , < 45341b341642c377192c95e4d48e0a859cf85f42 (git)
Affected: 6db96e5810e0a6a345b7d78549de7676ae5b2662 , < 5d132990475f02cfa1debe03d50b479432864ebd (git)
Create a notification for this product.
Linux Linux Affected: 5.8
Unaffected: 0 , < 5.8 (semver)
Unaffected: 6.6.158 , ≤ 6.6.* (semver)
Unaffected: 6.12.112 , ≤ 6.12.* (semver)
Unaffected: 6.18.54 , ≤ 6.18.* (semver)
Unaffected: 7.2.8 , ≤ 7.2.* (semver)
Unaffected: 7.3-rc4 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/mmc/host/mmc_hsq.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "c50d6515bffb148c2c12be6d587ec201dfab4c34",
              "status": "affected",
              "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
              "versionType": "git"
            },
            {
              "lessThan": "df2eb59fd9eb33663dc1053f5a4ed851e0aa1f67",
              "status": "affected",
              "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
              "versionType": "git"
            },
            {
              "lessThan": "8439bf262ce3267bcfee29d3c61605f1731a2271",
              "status": "affected",
              "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
              "versionType": "git"
            },
            {
              "lessThan": "45341b341642c377192c95e4d48e0a859cf85f42",
              "status": "affected",
              "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
              "versionType": "git"
            },
            {
              "lessThan": "5d132990475f02cfa1debe03d50b479432864ebd",
              "status": "affected",
              "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/mmc/host/mmc_hsq.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.8"
            },
            {
              "lessThan": "5.8",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.158",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.112",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.54",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.8",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3-rc4",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.158",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.112",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.54",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.8",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3-rc4",
                  "versionStartIncluding": "5.8",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmmc: hsq: Fix use-after-free in retry work\n\nmmc_hsq_pump_requests() queues retry_work when request_atomic() returns\n-EBUSY; today sdhci-sprd is the only consumer that implements\nrequest_atomic(). The work is embedded in a devm-allocated mmc_hsq, but\nis never cancelled during driver removal. Work still pending at unbind\ncan therefore run after the devm allocation has been released and\ndereference hsq-\u003emmc and hsq-\u003emrq.\n\nUse devm_work_autocancel() to cancel and drain retry_work before the devm\nallocation is released. By the time devres cleanup begins,\nmmc_remove_host() has already stopped the host, so no new requests can\narm the work.\n\nThis issue was found by an in-house static analysis tool."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-06T08:44:48.498Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/c50d6515bffb148c2c12be6d587ec201dfab4c34"
        },
        {
          "url": "https://git.kernel.org/stable/c/df2eb59fd9eb33663dc1053f5a4ed851e0aa1f67"
        },
        {
          "url": "https://git.kernel.org/stable/c/8439bf262ce3267bcfee29d3c61605f1731a2271"
        },
        {
          "url": "https://git.kernel.org/stable/c/45341b341642c377192c95e4d48e0a859cf85f42"
        },
        {
          "url": "https://git.kernel.org/stable/c/5d132990475f02cfa1debe03d50b479432864ebd"
        }
      ],
      "title": "mmc: hsq: Fix use-after-free in retry work",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-98212",
    "datePublished": "2026-10-06T08:44:48.498Z",
    "dateReserved": "2026-09-25T10:25:14.325Z",
    "dateUpdated": "2026-10-06T08:44:48.498Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-98212",
      "date": "2026-10-08",
      "epss": "0.00209",
      "percentile": "0.10126"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/mmc/host/mmc_hsq.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "c50d6515bffb148c2c12be6d587ec201dfab4c34",
                    "status": "affected",
                    "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "df2eb59fd9eb33663dc1053f5a4ed851e0aa1f67",
                    "status": "affected",
                    "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "8439bf262ce3267bcfee29d3c61605f1731a2271",
                    "status": "affected",
                    "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "45341b341642c377192c95e4d48e0a859cf85f42",
                    "status": "affected",
                    "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5d132990475f02cfa1debe03d50b479432864ebd",
                    "status": "affected",
                    "version": "6db96e5810e0a6a345b7d78549de7676ae5b2662",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/mmc/host/mmc_hsq.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "5.8"
                  },
                  {
                    "lessThan": "5.8",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.158",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.112",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.54",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.2.*",
                    "status": "unaffected",
                    "version": "7.2.8",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.3-rc4",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmmc: hsq: Fix use-after-free in retry work\n\nmmc_hsq_pump_requests() queues retry_work when request_atomic() returns\n-EBUSY; today sdhci-sprd is the only consumer that implements\nrequest_atomic(). The work is embedded in a devm-allocated mmc_hsq, but\nis never cancelled during driver removal. Work still pending at unbind\ncan therefore run after the devm allocation has been released and\ndereference hsq-\u003emmc and hsq-\u003emrq.\n\nUse devm_work_autocancel() to cancel and drain retry_work before the devm\nallocation is released. By the time devres cleanup begins,\nmmc_remove_host() has already stopped the host, so no new requests can\narm the work.\n\nThis issue was found by an in-house static analysis tool."
          }
        ],
        "id": "CVE-2026-98212",
        "lastModified": "2026-10-06T09:18:07.627",
        "metrics": {},
        "published": "2026-10-06T09:18:07.627",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/45341b341642c377192c95e4d48e0a859cf85f42"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/5d132990475f02cfa1debe03d50b479432864ebd"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/8439bf262ce3267bcfee29d3c61605f1731a2271"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/c50d6515bffb148c2c12be6d587ec201dfab4c34"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/df2eb59fd9eb33663dc1053f5a4ed851e0aa1f67"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-10-08T16:50:24Z",
      "cve": "CVE-2026-98212",
      "id": "CVE-2026-98212",
      "initial_release_date": "2026-10-08T16:50:24Z",
      "product_status:known_affected": "158",
      "product_status:known_not_affected": "189",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-98212",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-98212.json",
      "version": "2"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…