]> git.ipfire.org Git - thirdparty/linux.git/commit
Documentation/bpf: Refresh map_lru_hash_update.dot for rqspinlock
authorMykyta Yatsenko <yatsenko@meta.com>
Sun, 7 Jun 2026 20:30:42 +0000 (13:30 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Mon, 8 Jun 2026 01:46:13 +0000 (18:46 -0700)
commit8f6802d26d96ef424fc9fc9e2e68c43b6cf0fa59
treefa50e90ddc7f99ff0d3debfc58b13f78c842a8e1
parent89edbdfc5d0308cef57b71359331de5c4ddbf763
Documentation/bpf: Refresh map_lru_hash_update.dot for rqspinlock

Reflect the rqspinlock conversion and orphan-recovery paths added in
the previous commit:

 - All LRU locks are rqspinlock_t; any acquire can fail (AA or
   timeout). A shared "rqspinlock acquire failed" terminal collapses
   to the existing -ENOMEM exit. Dashed arrows from each acquire site
   mark the failure paths.

 - The per-CPU local freelist is now lockless (free_llist).

 - Post-steal: re-acquiring loc_l->lock to insert the stolen node
   into the local pending list can fail; on failure the node is
   published to free_llist instead of being orphaned, and the call
   returns -ENOMEM.

 - Steal-loop victim lock failure is silent: skip the victim and try
   the next CPU.

Signed-off-by: Mykyta Yatsenko <yatsenko@meta.com>
Link: https://lore.kernel.org/r/20260607-lru_map_spin-v3-2-bcd9332e911b@meta.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Documentation/bpf/map_lru_hash_update.dot