[PATCH v2 0/5] audit: refactors and fixes for potential deadlocks

From: Eiichi Tsukata
Date: Thu May 11 2023 - 01:22:08 EST


This patchset consists of the following refactors and fixes for
potential deadlocks.

Patch1-3: Refactorings and a small fix preferable for following deadlock fixes
Patch4: Fix for deadlock caused by wait/wake_up race in @audit_queue full
Patch5: Fix for deadlock caused by missing wake_up

v1->v2:
- wait_for_kauditd(): returns 0 if @audit_queue is not full
- Add another fix for deadlock caused by missing wake_up

Eiichi Tsukata (5):
audit: refactor queue full checks
audit: account backlog waiting time in audit_receive()
audit: convert DECLARE_WAITQUEUE to DEFINE_WAIT
audit: check if audit_queue is full after prepare_to_wait_exclusive()
audit: do not use exclusive wait in audit_receive()

kernel/audit.c | 78 ++++++++++++++++++++++++++++++++------------------
1 file changed, 50 insertions(+), 28 deletions(-)

--
2.40.0