CVE-2026-68332 PUBLISHED

net: airoha: Fix potential use-after-free in airoha_ppe_deinit()

Assigner: Linux
Reserved: 30.07.2026 Published: 10.08.2026 Updated: 10.08.2026

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

net: airoha: Fix potential use-after-free in airoha_ppe_deinit()

airoha_ppe_deinit() replaces the NPU pointer with NULL via rcu_replace_pointer() but does not wait for existing RCU readers to exit before calling ppe_deinit() and airoha_npu_put(). This can cause a use-after-free if a reader in an RCU read-side critical section still holds a reference to the NPU when it is freed.

The init path (airoha_ppe_init) already calls synchronize_rcu() after rcu_assign_pointer(), but the deinit path introduced in commit 6abcf751bc08 ("net: airoha: Fix schedule while atomic in airoha_ppe_deinit()") omitted the matching barrier when switching from rcu_read_lock()/rcu_dereference() to rcu_replace_pointer().

Add synchronize_rcu() before ppe_deinit() to ensure all existing RCU readers have completed before the NPU resources are released.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 72f93dc6d1a6b157e0c3d247085c74935893cca0 to 46e3bed4b071095ecc9384a7b349e1908728531f (excl.)
  • affected from 6abcf751bc084804a9e5b3051442e8a2ce67f48a to ad28c4f9e0eae4993cb3fde3e7cea330acd8b97c (excl.)
  • affected from 6abcf751bc084804a9e5b3051442e8a2ce67f48a to 2484568a335cd7bda951c75b3a7d95ea36161ae7 (excl.)
  • affected from 6.18.6 to 6.18.42 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.19 is affected
  • unaffected from 0 to 6.19 (excl.)
  • unaffected from 6.18.42 to 6.18.* (incl.)
  • unaffected from 7.1.6 to 7.1.* (incl.)
  • unaffected from 7.2-rc5 to * (incl.)

References