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

  bpf: Cancel special fields when recycling rhtab elements

  rhtab_map_update_existing() and rhtab_delete_elem() call
  bpf_obj_free_fields() when replacing or deleting a va…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  bpf: Cancel special fields when recycling rhtab elements

  rhtab_map_update_existing() and rhtab_delete_elem() call
  bpf_obj_free_fields() when replacing or deleting a va…
severity: medium
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 6905f8601298ecd2d1932a4b4849bf265201118e <
    28fde1356dbc35e20a9f22a5ee65af09698fdf92
  - >-
    Linux >= 6905f8601298ecd2d1932a4b4849bf265201118e <
    65cc95eba9e8b46312cac38c227473605a4b996a
  - Linux 7.2
published: '2026-09-25'
updated: '2026-09-25'
sourceUpdated: '2026-09-25T11:17:32.237'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-98035'
references:
  - url: 'https://git.kernel.org/stable/c/28fde1356dbc35e20a9f22a5ee65af09698fdf92'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/65cc95eba9e8b46312cac38c227473605a4b996a'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-98035.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-98035'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2541121'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-98035'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-98035'
  - url: >-
      https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2026/CVE-2026-98035.mbox
tags:
  - nvd
  - cve.org
  - csaf
  - vex
  - red-hat
ingestedAt: '2026-09-25T11:06:38.851Z'
epss: 0.00155
epssPercentile: 0.04617
cvss: 5.5
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'
cvssSource: vendor
cwe:
  - CWE-663
---

## Overview

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

bpf: Cancel special fields when recycling rhtab elements

rhtab_map_update_existing() and rhtab_delete_elem() call
bpf_obj_free_fields() when replacing or deleting a value. These map
operations can run from BPF programs in NMI context, where releasing a
referenced kptr or another complex field is not generally safe.

Array and hash maps avoid that problem by cancelling only the asynchronous
fields which can be stopped safely in the caller context. Other ownership
state remains attached to the allocation until its memory allocator
destructor performs the final cleanup.

Use bpf_obj_cancel_fields() for the corresponding rhtab paths as well. This
cancels timers, workqueues, and task work while allowing rhtab_mem_dtor() to
release referenced kptrs when the allocation is eventually destroyed.

[ kkd: Rebased, used direct helper calls, and rewrote the commit log ]

## Remediation

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

## Vendor advisories

- **Red Hat VEX** · Moderate · updated 2026-09-28 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-98035.json)
