kernel-ark/arch
Jason Baron 7e7f8a036b [PATCH] make vm86 call audit_syscall_exit
hi,

The motivation behind the patch below was to address messages in
/var/log/messages such as:

Jan 31 10:54:15 mets kernel: audit(:0): major=252 name_count=0: freeing
multiple contexts (1)
Jan 31 10:54:15 mets kernel: audit(:0): major=113 name_count=0: freeing
multiple contexts (2)

I can reproduce by running 'get-edid' from:
http://john.fremlin.de/programs/linux/read-edid/.

These messages come about in the log b/c the vm86 calls do not exit via
the normal system call exit paths and thus do not call
'audit_syscall_exit'. The next system call will then free the context for
itself and for the vm86 context, thus generating the above messages. This
patch addresses the issue by simply adding a call to 'audit_syscall_exit'
from the vm86 code.

Besides fixing the above error messages the patch also now allows vm86
system calls to become auditable. This is useful since strace does not
appear to properly record the return values from sys_vm86.

I think this patch is also a step in the right direction in terms of
cleaning up some core auditing code. If we can correct any other paths
that do not properly call the audit exit and entries points, then we can
also eliminate the notion of context chaining.

I've tested this patch by verifying that the log messages no longer
appear, and that the audit records for sys_vm86 appear to be correct.
Also, 'read_edid' produces itentical output.

thanks,

-Jason

Signed-off-by: Jason Baron <jbaron@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2006-03-20 14:08:53 -05:00
..
alpha [PATCH] alpha: fix IRQ handling lockup 2006-03-09 19:47:37 -08:00
arm [ARM] 3362/1: [cleanup] - duplicate decleration of mem_fclk_21285 2006-03-15 23:18:08 +00:00
arm26
cris [PATCH] fallout from ptrace consolidation patch: cris/arch-v10 2006-02-07 20:57:19 -05:00
frv [PATCH] FRV: Use virtual interrupt disablement 2006-02-14 16:09:35 -08:00
h8300 [PATCH] add missing pm_power_off's 2006-03-06 18:40:44 -08:00
i386 [PATCH] make vm86 call audit_syscall_exit 2006-03-20 14:08:53 -05:00
ia64 [IA64] Fix race in the accessed/dirty bit handlers 2006-03-08 16:07:55 -08:00
m32r [PATCH] m32r: fix and update for gcc-4.0 2006-02-24 14:31:36 -08:00
m68k [PATCH] m68k: pm_power_off() breakage 2006-02-18 16:30:20 -05:00
m68knommu [PATCH] hrtimer: round up relative start time on low-res arches 2006-02-14 16:09:35 -08:00
mips [MIPS] SB1: Check for -mno-sched-prolog if building corelis debug kernel. 2006-03-18 16:59:31 +00:00
parisc [PATCH] hrtimer: round up relative start time on low-res arches 2006-02-14 16:09:35 -08:00
powerpc powerpc: update defconfigs 2006-03-16 16:55:08 +11:00
ppc powerpc: Fix various syscall/signal/swapcontext bugs 2006-03-08 13:24:22 +11:00
s390 [PATCH] s390: Increase spinlock retry code performance 2006-03-09 19:47:38 -08:00
sh [PATCH] arch/sh/Kconfig: don't source non-existing Kconfig files 2006-03-09 19:47:37 -08:00
sh64 [PATCH] drive_info removal outside of arch/i386 2006-02-07 20:56:47 -05:00
sparc [SPARC]: sys_newfstatat --> sys_fstatat64 2006-02-12 23:30:11 -08:00
sparc64 [SPARC64]: Mark __ex_table section correctly. 2006-03-04 23:23:56 -08:00
um [PATCH] uml: tidying COW code 2006-02-24 14:31:37 -08:00
v850 [PATCH] add missing pm_power_off's 2006-03-06 18:40:44 -08:00
x86_64 Revert "[PATCH] x86-64: Fix up handling of non canonical user RIPs" 2006-03-14 08:01:47 -08:00
xtensa [PATCH] xtensa must set RWSEM_GENERIC_SPINLOCK=y 2006-03-09 19:47:37 -08:00