[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Y4eenBOnpWt17ovJ@lunn.ch>
Date: Wed, 30 Nov 2022 19:19:08 +0100
From: Andrew Lunn <andrew@...n.ch>
To: "Russell King (Oracle)" <linux@...linux.org.uk>
Cc: Frank <Frank.Sae@...or-comm.com>, Peter Geis <pgwipeout@...il.com>,
Heiner Kallweit <hkallweit1@...il.com>,
"David S . Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, yinghong.zhang@...or-comm.com,
fei.zhang@...or-comm.com, hua.sun@...or-comm.com,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next] net: phy: Add driver for Motorcomm yt8531
gigabit ethernet phy
On Wed, Nov 30, 2022 at 05:33:15PM +0000, Russell King (Oracle) wrote:
> Hi Andrew,
>
> On Wed, Nov 30, 2022 at 06:10:42PM +0100, Andrew Lunn wrote:
> > This is not the first time Russell has pointed out your locking is
> > wrong.
> >
> > How about adding a check in functions which should be called with the
> > lock taken really do have the lock taken?
>
> They already do:
>
> lockdep_assert_held_once(&bus->mdio_lock);
>
> but I guess people just aren't testing their code with lockdep enabled.
>
> The only other thing I can think of trying is to use mutex_trylock():
>
> if (WARN_ON_ONCE(mutex_trylock(&bus->mdio_lock)))
> mutex_unlock(&bus->mdio_lock);
>
> scattered throughout.
The ASSERT_RTNL() macro does this, it does not depend on lockdep.
And given the persistent sort of problems we have seen, you are
probably correct, lockdep is not being enabled by some developers. I
guess they don't even know what it is.
Andrew
Powered by blists - more mailing lists