Convert the raw_spinlock to rqspinlock to fix the possible deadlock in
[1] for bpf lru map. Meanwhile, add the testcase for the deadlock.
Link: https://lore.kernel.org/bpf/CAEf4BzbTJCUx0D=zjx6+5m5iiGhwLzaP94hnw36ZMDHAf4-U_w@mail.gmail.com/[1]
Menglong Dong (2):
bpf: use rqspinlock for lru map
selftests/bpf: test map deadlock caused by NMI
kernel/bpf/bpf_lru_list.c | 47 +++---
kernel/bpf/bpf_lru_list.h | 5 +-
.../selftests/bpf/prog_tests/map_deadlock.c | 134 ++++++++++++++++++
.../selftests/bpf/progs/map_deadlock.c | 52 +++++++
4 files changed, 217 insertions(+), 21 deletions(-)
create mode 100644 tools/testing/selftests/bpf/prog_tests/map_deadlock.c
create mode 100644 tools/testing/selftests/bpf/progs/map_deadlock.c
--
2.51.2