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

  uio: Fix stale info pointer in failed registration path

  After device_add(), the UIO device is visible to userspace and /dev/uioX
  can be opened
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  uio: Fix stale info pointer in failed registration path

  After device_add(), the UIO device is visible to userspace and /dev/uioX
  can be opened. If a later setup step f…
severity: high
cvss: 7
cvssVector: 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    63eaa7663335d482a8825c231213e312cacea567
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    df4faf65194ec6c315a59be4c6749eaeb3009243
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    506b43dde5f9ac0068b1360e6b5dbee07fda59fb
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    15340b00e665af805523b08515294a1aa1778151
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    234156f6c6d9ec35dc47abbcc3adc3c79fc6a5ac
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    16695e9059d80ea6661e8399064b0c01f641dd8c
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    ec5bd6731183eb6f619140c9bef2ee11ed818c20
  - >-
    Linux >= a93e7b331568227500186a465fee3c2cb5dffd1f <
    67b6fc084b034a91c3ec7907a3fed89a2450f30b
  - Linux 085d735c858934e5d5bfaedb1fc98bd9135e6ff1
  - Linux >= 4.14.100 < 4.15
  - Linux 4.18
published: '2026-09-17'
updated: '2026-09-18'
sourceUpdated: '2026-09-18T18:18:19.403'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-93054'
references:
  - url: 'https://git.kernel.org/stable/c/15340b00e665af805523b08515294a1aa1778151'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/16695e9059d80ea6661e8399064b0c01f641dd8c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/234156f6c6d9ec35dc47abbcc3adc3c79fc6a5ac'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/506b43dde5f9ac0068b1360e6b5dbee07fda59fb'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/63eaa7663335d482a8825c231213e312cacea567'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/67b6fc084b034a91c3ec7907a3fed89a2450f30b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/df4faf65194ec6c315a59be4c6749eaeb3009243'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ec5bd6731183eb6f619140c9bef2ee11ed818c20'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
epss: 0.00145
epssPercentile: 0.04159
ingestedAt: '2026-09-17T16:21:47.770Z'
---

## Overview

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

uio: Fix stale info pointer in failed registration path

After device_add(), the UIO device is visible to userspace and /dev/uioX
can be opened. If a later setup step fails, __uio_register_device()
unwinds the device but leaves idev->info pointing at the caller-owned
struct uio_info.

That is unsafe when an opener races with the failed registration path.
The open file keeps a reference to the uio_device, while the caller sees
registration failure and may free its struct uio_info. Later file
operations can then follow idev->info and dereference freed memory.

Handle post-device_add() failures like unregister: remove UIO attributes
while the info pointer is still valid, then clear idev->info under
info_lock and wake existing waiters/async users before removing the
device and minor. This makes already-open file descriptors observe the
same "device gone" state as normal uio_unregister_device().

## Remediation

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