Re: Alan Cox quote? (was: Re: accounting for threads)

Alexander Viro
2001-06-21T23:56:16Z

On Thu, 21 Jun 2001, Alexander Viro wrote:

>
>
> On Thu, 21 Jun 2001, Rusty Russell wrote:
>
> > Disagree. A significant percentage of the netfilter bugs have been
> > SMP only (the whole thing is non-reentrant on UP).
>
> I really doubt it. <looking through the thing> <raised brows>
> Well, if you use GFP_ATOMIC for everything... grep...
> Erm... AFAICS, you call create_chain() with interrupts disabled
> (under write_lock_irq_save()). Unless I'm _very_ mistaken,
> kmalloc(..., GFP_KERNEL) is a Bad Thing(tm) in that situation.
> And create_chain() leads to it.

BTW, proc_net_create() is also not a good idea if you block the interrupts.
Ditto for netlink_kernel_create(), AFAICS (due to netlink_kernel_creat() ->
sock_alloc() -> get_empty_inode() -> kmem_cache_alloc() with SLAB_KERNEL).

That, BTW, is a nice illustration - it's easy to get a preemption point
without noticing, so holding spinlocks, let alone disabling interrupts
over the large area is going to hurt like hell.