Re: [PATCH] netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit

From: Jakub Kicinski
Date: Sat Oct 12 2019 - 18:32:08 EST


On Fri, 11 Oct 2019 17:46:53 +0800, YueHaibing wrote:
> In nsim_fib_init(), if register_fib_notifier failed, nsim_fib_net_ops
> should be unregistered before return.
>
> In nsim_fib_exit(), unregister_fib_notifier should be called before
> nsim_fib_net_ops be unregistered, otherwise may cause use-after-free:
>
> BUG: KASAN: use-after-free in nsim_fib_event_nb+0x342/0x570 [netdevsim]
> Read of size 8 at addr ffff8881daaf4388 by task kworker/0:3/3499
>

> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Fixes: 59c84b9fcf42 ("netdevsim: Restore per-network namespace accounting for fib entries")
> Signed-off-by: YueHaibing <yuehaibing@xxxxxxxxxx>

Acked-by: Jakub Kicinski <jakub.kicinski@xxxxxxxxxxxxx>