CVE-2026-74311

Source
https://cve.org/CVERecord?id=CVE-2026-74311
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74311.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-74311
Downstream
Published
2026-08-15T05:58:10.711Z
Modified
2026-08-16T03:48:33.624140311Z
Summary
virtio: rtc: tear down old virtqueues before restore
Details

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

virtio: rtc: tear down old virtqueues before restore

virtiodevicerestore() resets the device and restores the negotiated features before calling ->restore(). viortcfreeze() intentionally leaves the existing virtqueues in place so the alarm queue can still wake the system, but viortcrestore() immediately calls viortcinitvqs() without first deleting those old queues.

If virtqueue reinitialization fails on virtio-pci, the transport error path can run vpdelvqs() against a newly allocated vpdev->vqs array while vdev->vqs still contains the old virtqueues. vpdelvqs() then looks up queue state through the new array and can dereference a NULL info pointer in vpdel_vq(), crashing the guest kernel during restore.

This can also happen during a non-faulty reinitialization, when one of the vpfindvqs_msix() attempts is unsuccessful before a later attempt would succeed.

Delete the stale virtqueues before rebuilding them. If restore fails before virtiodeviceready(), reuse the remove path to stop the device. Once the device is ready, return errors directly instead of deleting the virtqueues again.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74311.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0623c759276885c3ae88197ba6fb5c9c6ba8612f
Fixed
79366023aa891ca31376021a7bccff6384ca1ff1
Fixed
aebebd1e9d70b650fc9e877082e0134edcf511da
Fixed
548d2208455f14e6121404c6e30e997bfe0cd264

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74311.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.16.0
Fixed
6.18.40
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.1.5

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74311.json"