CVE-2026-98787 PUBLISHED

bpf: Fix missing migration protection in __rhtab_map_lookup_and_delete_batch()

Assigner: Linux
Reserved: 25.09.2026 Published: 18.10.2026 Updated: 18.10.2026

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

bpf: Fix missing migration protection in __rhtab_map_lookup_and_delete_batch()

bpf_mem_cache_free_rcu() uses this_cpu_ptr() which requires migration to be disabled. All callers of rhtab_delete_elem() disable migration except __rhtab_map_lookup_and_delete_batch(), which calls it under rcu_read_lock() only.

On CONFIG_PREEMPT_RCU, rcu_read_lock() does not disable preemption or migration, so the task can migrate between CPUs during the delete loop, causing this_cpu_ptr() to trigger:

BUG: using smp_processor_id() in preemptible [00000000] code

Fix by wrapping the delete loop in migrate_disable()/migrate_enable() in __rhtab_map_lookup_and_delete_batch(), matching the migration protection that the other callers already provide.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 818e0084822742fc00eacbf5df3476a5e72c7d0e to 94f41ec5fa578765b74ad5736c2f029e7aabc46d (excl.)
  • affected from 818e0084822742fc00eacbf5df3476a5e72c7d0e to de020dc8049bfb2b22e3b6d99c031feb2e22d112 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 7.2 is affected
  • unaffected from 0 to 7.2 (excl.)
  • unaffected from 7.2.10 to 7.2.* (incl.)
  • unaffected from 7.3-rc6 to * (incl.)

References