2.6.12-rc4-mm2 - sleeping function called from invalid context at mm/slab.c:2502

Chris Wright chrisw at osdl.org
Fri May 20 16:41:38 UTC 2005


* David Woodhouse (dwmw2 at infradead.org) wrote:
> On Fri, 2005-05-20 at 11:09 -0400, Stephen Smalley wrote:
> > The lock is being held by the af_unix code (unix_state_wlock), not
> > avc_audit; the AVC is called under all kinds of circumstances (softirq,
> > hard irq, caller holding locks on relevant objects) for permission
> > checking and must never sleep.
> > 
> > One option might be to defer some of the AVC auditing to the audit
> > framework (e.g. save the vfsmount and dentry on the current audit
> > context and let audit_log_exit perform the audit_log_d_path).
> 
> Yeah, maybe. Assuming you pin them, it's easy enough to hang something
> off the audit context's aux list which refers to them. I'm really not
> that fond of the idea of allocating a whole PATH_MAX with GFP_ATOMIC.

I agree, PATH_MAX atomic is greedy.  But the calling convention could
be a bit awkward.  Currently it's as got as audit_log_format.  Tacking
vfsmount/dentry pair on might be tough to format the message with.
Got a good idea?




More information about the Linux-audit mailing list