If the audit_backlog_limit is changed from a limited value to an
unlimited value (zero) while the queue was overflowed, wake up the
audit_backlog_wait queue to allow those processes to continue.

Signed-off-by: Richard Guy Briggs <r...@redhat.com>
---
 kernel/audit.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/kernel/audit.c b/kernel/audit.c
index 384a1a1..02a5ec0 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -523,7 +523,8 @@ static int kauditd_thread(void *dummy)
                skb = skb_dequeue(&audit_skb_queue);
 
                if (skb) {
-                       if (skb_queue_len(&audit_skb_queue) <= 
audit_backlog_limit)
+                       if (!audit_backlog_limit ||
+                           (skb_queue_len(&audit_skb_queue) <= 
audit_backlog_limit))
                                wake_up(&audit_backlog_wait);
                        if (audit_pid)
                                kauditd_send_skb(skb);
-- 
1.7.1

--
Linux-audit mailing list
Linux-audit@redhat.com
https://www.redhat.com/mailman/listinfo/linux-audit

Reply via email to