diff options
author | Paul Moore <paul@paul-moore.com> | 2016-11-29 16:53:25 -0500 |
---|---|---|
committer | Paul Moore <paul@paul-moore.com> | 2016-12-14 13:06:04 -0500 |
commit | 3197542482df22c2a131d4a813280bd7c54cedf5 (patch) | |
tree | 1ac88d16cb2a38ea387a71a63f3b5457f70e74fd /include | |
parent | c6480207fdf7b61de216ee23e93eac0a6878fa74 (diff) |
audit: rework audit_log_start()
The backlog queue handling in audit_log_start() is a little odd with
some questionable design decisions, this patch attempts to rectify
this with the following changes:
* Never make auditd wait, ignore any backlog limits as we need auditd
awake so it can drain the backlog queue.
* When we hit a backlog limit and start dropping records, don't wake
all the tasks sleeping on the backlog, that's silly. Instead, let
kauditd_thread() take care of waking everyone once it has had a chance
to drain the backlog queue.
* Don't keep a global backlog timeout countdown, make it per-task. A
per-task timer means we won't have all the sleeping tasks waking at
the same time and hammering on an already stressed backlog queue.
Signed-off-by: Paul Moore <paul@paul-moore.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions