]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] SELinux: fix deadlock on dcache lock
authorStephen Smalley <sds@tycho.nsa.gov>
Mon, 18 Apr 2005 17:47:35 +0000 (10:47 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Mon, 18 Apr 2005 17:47:35 +0000 (10:47 -0700)
commit8cf80e40e8a47ad27094f2263304a6b4cb0291a1
tree13b64537abe906645ee22843e146e21958236219
parent8822d2d7ef7beff1d496d925299d34493bc5f985
[PATCH] SELinux: fix deadlock on dcache lock

This fixes a deadlock on the dcache lock detected during testing at IBM
by moving the logging of the current executable information from the
SELinux avc_audit function to audit_log_exit (via an audit_log_task_info
helper) for processing upon syscall exit.

For consistency, the patch also removes the logging of other
task-related information from avc_audit, deferring handling to
audit_log_exit instead.

This allows simplification of the avc_audit code, allows the exe
information to be obtained more reliably, always includes the comm
information (useful for scripts), and avoids including bogus task
information for checks performed from irq or softirq.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
kernel/auditsc.c
security/selinux/avc.c