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


  platform/x86: x86-android-tablets: hold device reference for secondary fwnode
  teardown


  In gpio_secondary_fwnode_init(), acpi_bus_find_device_by_name() returns a

  device…
summary: >-
  In the Linux kernel, the following vulnerability has been resolved:


  platform/x86: x86-android-tablets: hold device reference for secondary fwnode
  teardown


  In gpio_secondary_fwnode_init(), acpi_bus_find_device_by_name() returns a

  device…
severity: none
published: '2026-10-14'
updated: '2026-10-14'
sourceUpdated: '2026-10-14T14:17:50.657'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-98397'
references:
  - url: 'https://git.kernel.org/stable/c/144113b0a70fa18033a747ee5db6803308f7688c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/c62b6e081119f2ab03cfcafde1f83c0f50e8e726'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-10-14T15:36:13.979Z'
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 1448c2d2ca5cc7f4ea6694e6bc809946de0a751c <
    c62b6e081119f2ab03cfcafde1f83c0f50e8e726
  - >-
    Linux >= 1448c2d2ca5cc7f4ea6694e6bc809946de0a751c <
    144113b0a70fa18033a747ee5db6803308f7688c
  - Linux 7.2
---

## Overview

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

platform/x86: x86-android-tablets: hold device reference for secondary fwnode teardown

In gpio_secondary_fwnode_init(), acpi_bus_find_device_by_name() returns a
device reference, but the local dev variable is declared with
__free(put_device), dropping the reference at the end of each iteration.
Meanwhile, devm_add_action_or_reset() saves the dev pointer for
gpio_secondary_unset() without incrementing its reference count, which
could lead to a use-after-free during driver teardown if the device is
released in the interim.

Acquire an explicit device reference with get_device() when registering
the devres action, and drop it with put_device() inside
gpio_secondary_unset().

## Remediation

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