Re: [regression] nf_iterate(), BUG: unable to handle kernel NULL pointer dereference

Nick Piggin
2008-07-24T12:56:31Z

On Thursday 24 July 2008 22:50, Herbert Xu wrote:
> On Thu, Jul 24, 2008 at 03:40:40PM +0300, Pekka Enberg wrote:
> > Using ksize() for skbs will crash your kernel for some configurations
> > because calling that function for memory allocated with
> > kmem_cache_alloc() is not supported by all the allocators (well,
> > SLOB).
>
> So how about fixing the interface so that it can return an error
> to indicate that the allocator doesn't support it? You're taking
> away an entire interface just because an underlying implementation
> that's used by a very small proportion of users doesn't do the
> right thing.

You could easily add some function which returns a constant error for
SLOB and ksize for others, because slob typically contains very little
slack space (unless explicit alignment is asked for).

OTOH, skb allocation uses kmalloc don't they? So you could still use
SLOB ksize for that I guess.