---
id: CVE-2026-90127
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  virtio: rtc: time out alarm requests

  RTC class operations run with rtc_device.ops_lock held
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  virtio: rtc: time out alarm requests

  RTC class operations run with rtc_device.ops_lock held. The virtio RTC
  alarm requests currently wait without a timeout for the dev…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 9d4f22fd563e0cd02e8448e84d057e7c0132a586 <
    28701b74c22d2a43ddf7aebb6378e60c18323865
  - >-
    Linux >= 9d4f22fd563e0cd02e8448e84d057e7c0132a586 <
    afbf69d1d691c06d093d7c3f17168ecb608c4977
  - >-
    Linux >= 9d4f22fd563e0cd02e8448e84d057e7c0132a586 <
    68e00d9212929805b40dcb9166755610f4f4acee
  - Linux 6.16
published: '2026-09-17'
updated: '2026-09-17'
sourceUpdated: '2026-09-17T17:17:05.080'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-90127'
references:
  - url: 'https://git.kernel.org/stable/c/28701b74c22d2a43ddf7aebb6378e60c18323865'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/68e00d9212929805b40dcb9166755610f4f4acee'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/afbf69d1d691c06d093d7c3f17168ecb608c4977'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-17T16:21:47.882Z'
epss: 0.00206
epssPercentile: 0.0943
---

## Overview

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

virtio: rtc: time out alarm requests

RTC class operations run with rtc_device.ops_lock held. The virtio RTC
alarm requests currently wait without a timeout for the device to return
their requestq buffers.

On surprise removal, virtio-pci marks the virtqueues broken before
unregistering the virtio device. If an alarm request is waiting when the
device stops responding, viortc_remove() blocks in viortc_class_stop()
while trying to acquire ops_lock. The request cannot complete and device
removal hangs until the waiting task is signalled.

Use the same 60-second timeout as clock read requests for alarm reads,
alarm programming, and alarm interrupt enable requests. The existing
message reference counting keeps a timed-out request alive until a late
response or device teardown.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
