[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180723.111955.865372914094677781.davem@davemloft.net>
Date: Mon, 23 Jul 2018 11:19:55 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: weiwan@...gle.com
Cc: netdev@...r.kernel.org, edumazet@...gle.com, dsahern@...il.com,
kafai@...com
Subject: Re: [PATCH net] ipv6: use fib6_info_hold_safe() when necessary
From: Wei Wang <weiwan@...gle.com>
Date: Sat, 21 Jul 2018 20:56:32 -0700
> From: Wei Wang <weiwan@...gle.com>
>
> In the code path where only rcu read lock is held, e.g. in the route
> lookup code path, it is not safe to directly call fib6_info_hold()
> because the fib6_info may already have been deleted but still exists
> in the rcu grace period. Holding reference to it could cause double
> free and crash the kernel.
>
> This patch adds a new function fib6_info_hold_safe() and replace
> fib6_info_hold() in all necessary places.
>
> Syzbot reported 3 crash traces because of this. One of them is:
...
> Fixes: 93531c674315 (net/ipv6: separate handling of FIB entries from dst based routes)
> Reported-by: syzbot+902e2a1bcd4f7808cef5@...kaller.appspotmail.com
> Reported-by: syzbot+8ae62d67f647abeeceb9@...kaller.appspotmail.com
> Reported-by: syzbot+3f08feb14086930677d0@...kaller.appspotmail.com
> Signed-off-by: Wei Wang <weiwan@...gle.com>
> Acked-by: Eric Dumazet <edumazet@...gle.com>
Applied, thank you.
Powered by blists - more mailing lists