When auditd is restarted, even though the kauditd_thread is present, it remains dormant until the next audit log message is queued.
Wake up the kauditd_thread in the kauditd_wait queue immediately when auditd registers its availability to drain the queue. Signed-off-by: Richard Guy Briggs <[email protected]> --- kernel/audit.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/kernel/audit.c b/kernel/audit.c index 688fa1e..369cfcc 100644 --- a/kernel/audit.c +++ b/kernel/audit.c @@ -885,6 +885,8 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh) audit_sock = skb->sk; if (!audit_pid) wake_up(&audit_backlog_wait); + if (audit_pid) + wake_up_interruptible(&kauditd_wait); } if (s.mask & AUDIT_STATUS_RATE_LIMIT) { err = audit_set_rate_limit(s.rate_limit); -- 1.7.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

