[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1508798806.30291.94.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Mon, 23 Oct 2017 15:46:46 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: kernel test robot <fengguang.wu@...el.com>
Cc: David Miller <davem@...emloft.net>, netdev <netdev@...r.kernel.org>
Subject: Re: [PATCH net] tcp/dccp: fix again lockdep splat in
inet_csk_route_req()
On Mon, 2017-10-23 at 08:02 -0700, Eric Dumazet wrote:
> From: Eric Dumazet <edumazet@...gle.com>
>
> In my first attempt to fix the lockdep splat, I forgot we could
> enter inet_csk_route_req() with a freshly allocated request socket,
> for which refcount has not yet been elevated, due to complex
> SLAB_TYPESAFE_BY_RCU rules.
>
> We either are in rcu_read_lock() section _or_ we own a refcount on the
> request.
>
> Correct RCU verb to use here is rcu_dereference_check(), although it is
> not possible to prove we actually own a reference on a shared
> refcount :/
David, please hold on this patch, I will squash another fixes, since we
need the same in two other places (tcp_v4_send_synack() &
dccp_v4_send_response())
Powered by blists - more mailing lists