Re: [PATCH] ipv4: fib: avoid NULL dereference

From: Mark Rutland
Date: Fri Jul 06 2018 - 10:57:39 EST


On Fri, Jul 06, 2018 at 07:47:04AM -0700, Eric Dumazet wrote:
>
>
> On 07/06/2018 07:28 AM, Mark Rutland wrote:
> > In tnode_free() we iterate over a callback_head list with a while loop.
> > At the start of the loop body we generate the next head pointer, and at
> > the end of the loop body we generate the tn pointer for the next
> > iteration of the loop by using container_of() on the head pointer to
> > find the tnode, and deriving the kv pointer from this.
> >
> > In the final iteration of the loop, this means that we derive a pointer
> > from NULL, which is undefined behaviour, which UBSAN detects:
>
> There is no dereference, your patch title is misleading.
>
> UBSAN might be fooled, not the C compiler.

I'm happy to change the title to "avoid undefined behaviour".

Thanks,
Mark.