lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250218062920.40aaaa6a@kernel.org>
Date: Tue, 18 Feb 2025 06:29:20 -0800
From: Jakub Kicinski <kuba@...nel.org>
To: Breno Leitao <leitao@...ian.org>
Cc: "David S. Miller" <davem@...emloft.net>, Eric Dumazet
 <edumazet@...gle.com>, Paolo Abeni <pabeni@...hat.com>, Simon Horman
 <horms@...nel.org>, Andrew Lunn <andrew+netdev@...n.ch>, David Ahern
 <dsahern@...nel.org>, linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
 Eric Dumazet <eric.dumazet@...il.com>, kuniyu@...zon.co.jp,
 ushankar@...estorage.com, Kuniyuki Iwashima <kuniyu@...zon.com>
Subject: Re: [PATCH net v4 2/2] arp: switch to dev_getbyhwaddr() in
 arp_req_set_public()

On Tue, 18 Feb 2025 01:36:30 -0800 Breno Leitao wrote:
> On Mon, Feb 17, 2025 at 04:33:44PM -0800, Jakub Kicinski wrote:
> > On Thu, 13 Feb 2025 04:42:38 -0800 Breno Leitao wrote:  
> > > The arp_req_set_public() function is called with the rtnl lock held,
> > > which provides enough synchronization protection. This makes the RCU
> > > variant of dev_getbyhwaddr() unnecessary. Switch to using the simpler
> > > dev_getbyhwaddr() function since we already have the required rtnl
> > > locking.
> > > 
> > > This change helps maintain consistency in the networking code by using
> > > the appropriate helper function for the existing locking context.  
> > 
> > I think you should make it clearer whether this fixes a splat with
> > PROVE_RCU_LIST=y  
> 
> This one doesn't fix the splat in fact, since rtnl lock was held, and it
> is moving from dev_getbyhwaddr_rcu() to dev_getbyhwaddr(), since rtnl
> lock was held.

Are you sure? I don't see the RCU lock being taken on the path that
ends up here. arp_ioctl() -> arp_req_set() -> arp_req_set_public()

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ