Commit 4023e020 authored by Ingo Molnar's avatar Ingo Molnar Committed by Al Viro

[PATCH] simplify audit_free() locking

Simplify audit_free()'s locking: no need to lock a task that we are tearing
down.  [the extra locking also caused false positives in the lock
validator]
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent d9d9ec6e
......@@ -704,10 +704,14 @@ void audit_free(struct task_struct *tsk)
{
struct audit_context *context;
task_lock(tsk);
/*
* No need to lock the task - when we execute audit_free()
* then the task has no external references anymore, and
* we are tearing it down. (The locking also confuses
* DEBUG_LOCKDEP - this freeing may occur in softirq
* contexts as well, via RCU.)
*/
context = audit_get_context(tsk, 0, 0);
task_unlock(tsk);
if (likely(!context))
return;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment