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