[PATCH] audit: clear thread flag for new children

Tony Jones tonyj at suse.de
Thu Nov 1 17:23:24 UTC 2007


On Thu, Nov 01, 2007 at 10:33:52AM -0400, Steve Grubb wrote:
> On Monday 29 October 2007 07:15:30 pm Tony Jones wrote:
> > On Mon, Oct 29, 2007 at 06:04:31PM -0400, Steve Grubb wrote:
> > > So when audit is re-enabled, how do you make that task auditable?
> >
> > No idea. How do you do it currently? HINT: current->audit_context == NULL
> > for these tasks.  If !audit_enabled, then audit_alloc() is not going to
> > allocate an audit_context for the task.
> 
> We are looking into this - at one time it did. Someone should follow up with 
> a path correcting this soon. But I doubt the audit system will work correctly 
> if the flag gets removed as there is no good way to add it again later.

So on the syscall path you're now going to something like (pseudocode):
if (unlikely(current->audit_context)) {audit_syscall_entry()} 
else if (audit_enabled) {audit_alloc(); audit_syscall_entry()}

I agree, if this is what you want to do, then clearing the thread flag would
be a bad idea.  I'd assumed the current behaviour was by design as allocating
contexts at syscall time doesn't seem a great idea but if you need the 
functionality, you need the functionality.

Tony




More information about the Linux-audit mailing list