Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 97e94c45 authored by Al Viro's avatar Al Viro
Browse files

[PATCH] no need to wank with task_lock() and pinning task down in audit_syscall_exit()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 5411be59
Loading
Loading
Loading
Loading
+1 −9
Original line number Diff line number Diff line
@@ -329,7 +329,6 @@ static enum audit_state audit_filter_syscall(struct task_struct *tsk,
	return AUDIT_BUILD_CONTEXT;
}

/* This should be called with task_lock() held. */
static inline struct audit_context *audit_get_context(struct task_struct *tsk,
						      int return_valid,
						      int return_code)
@@ -823,15 +822,10 @@ void audit_syscall_exit(int valid, long return_code)
	struct task_struct *tsk = current;
	struct audit_context *context;

	get_task_struct(tsk);
	task_lock(tsk);
	context = audit_get_context(tsk, valid, return_code);
	task_unlock(tsk);

	/* Not having a context here is ok, since the parent may have
	 * called __put_task_struct. */
	if (likely(!context))
		goto out;
		return;

	if (context->in_syscall && context->auditable)
		audit_log_exit(context, tsk);
@@ -849,8 +843,6 @@ void audit_syscall_exit(int valid, long return_code)
		audit_free_aux(context);
		tsk->audit_context = context;
	}
 out:
	put_task_struct(tsk);
}

/**