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

  char: tlclk: fix use-after-free in tlclk_cleanup()

  This patch improves the module cleanup process in the tlclk driver to
  prevent potential use-after-free and race cond…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  char: tlclk: fix use-after-free in tlclk_cleanup()

  This patch improves the module cleanup process in the tlclk driver to
  prevent potential use-after-free and race cond…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
published: '2026-08-28'
updated: '2026-08-29'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-80622'
references:
  - url: 'https://git.kernel.org/stable/c/09d8d2a46a9ec9ff728f3159a174a2ab25dd0f0a'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/166dd1d5265e067459e674c11688919901813ec2'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3d5e4cc0d9dce79b0429da3134ac7b072ab9009f'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/42223445607a9a5df3cb1c4729abfe3a5085e7ce'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/764723bd67a6c8f53a8d8309211fb039e2ebcf49'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/96902299a22d126ef5eb3f45cd5d8ceea9e6a735'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/bbf003b7794d6ad6f939fdd29f1f1bde8ac554c1'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/c3f0cd76561ae611c2d247ee96dfd559e4197cb7'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00171
epssPercentile: 0.05733
ingestedAt: '2026-08-29T23:43:56.365Z'
---

## Overview

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

char: tlclk: fix use-after-free in tlclk_cleanup()

This patch improves the module cleanup process in the tlclk driver to
prevent potential use-after-free and race conditions.

Currently, the file_operations structure does not specify the .owner
field, which could allow the module to be unloaded while user-space
processes are still interacting with the device. Additionally, the
tlclk_cleanup() function frees the alarm_events memory before ensuring
that blocked processes in the waitqueue are fully awakened and that the
switchover_timer has completed.

To address these cases, this patch:
- Sets '.owner = THIS_MODULE' in tlclk_fops to safely defer module
  unloading while the device is in use.
- Updates tlclk_cleanup() to explicitly wake up all blocked readers
  (wake_up_all), properly release hardware I/O regions, and safely
  delete the timer (timer_delete_sync) prior to freeing memory.

## Remediation

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