CVE-2021-47412

Source
https://cve.org/CVERecord?id=CVE-2021-47412
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2021-47412.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2021-47412
Downstream
Related
Published
2024-05-21T15:15:26Z
Modified
2026-03-13T05:20:44Z
Severity
  • 5.5 (Medium) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
[none]
Details

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

block: don't call rq_qos_ops->done_bio if the bio isn't tracked

rq_qos framework is only applied on request based driver, so:

  1. rq_qos_done_bio() needn't to be called for bio based driver

  2. rq_qos_done_bio() needn't to be called for bio which isn't tracked, such as bios ended from error handling code.

Especially in bio_endio():

  1. request queue is referred via bio->bi_bdev->bd_disk->queue, which may be gone since request queue refcount may not be held in above two cases

  2. q->rq_qos may be freed in blk_cleanup_queue() when calling into __rq_qos_done_bio()

Fix the potential kernel panic by not calling rq_qos_ops->done_bio if the bio isn't tracked. This way is safe because both ioc_rqos_done_bio() and blkcg_iolatency_done_bio() are nop if the bio isn't tracked.

References

Affected packages

Git /

Affected ranges

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2021-47412.json"
unresolved_ranges
[
    {
        "events":  [
            {
                "introduced":  "0"
            },
            {
                "fixed":  "5.10.241"
            }
        ]
    },
    {
        "events":  [
            {
                "introduced":  "5.11"
            },
            {
                "fixed":  "5.14.11"
            }
        ]
    },
    {
        "events":  [
            {
                "introduced":  "0"
            },
            {
                "last_affected":  "5.15-rc1"
            }
        ]
    },
    {
        "events":  [
            {
                "introduced":  "0"
            },
            {
                "last_affected":  "5.15-rc2"
            }
        ]
    }
]