[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8142.1571268276@warthog.procyon.org.uk>
Date: Thu, 17 Oct 2019 00:24:36 +0100
From: David Howells <dhowells@...hat.com>
To: Eric Dumazet <edumazet@...gle.com>
Cc: dhowells@...hat.com, "David S . Miller" <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Eric Dumazet <eric.dumazet@...il.com>,
Jakub Kicinski <jakub.kicinski@...ronome.com>
Subject: Re: [PATCH net] rxrpc: use rcu protection while reading sk->sk_user_data
Eric Dumazet <edumazet@...gle.com> wrote:
> We need to extend the rcu_read_lock() section in rxrpc_error_report()
> and use rcu_dereference_sk_user_data() instead of plain access
> to sk->sk_user_data to make sure all rules are respected.
Should I take it that the caller won't be guaranteed to be holding the RCU
read lock?
Looking at __udp4_lib_err(), that calls __udp4_lib_err_encap(), which calls
__udp4_lib_err_encap_no_sk(), which should throw a warning if the RCU read
lock is not held.
Similarly, icmp_socket_deliver() and icmpv6_notify() should also throw a
warning before calling ->err_handler().
Does that mean something further up the CPU stack is going to be holding the
RCU read lock?
David
Powered by blists - more mailing lists