Messages in this thread | | | Date | Sat, 15 Jul 2023 00:27:20 +0200 | From | Andrew Lunn <> | Subject | Re: [PATCH v2 1/2 net-next] net: phy: mscc: add support for CLKOUT ctrl reg for VSC8531 and similar |
| |
On Fri, Jul 14, 2023 at 09:09:14AM +0300, Alexandru Ardelean wrote: > On Thu, Jul 13, 2023 at 11:35 PM Andrew Lunn <andrew@lunn.ch> wrote: > > > > > +set_reg: > > > + mutex_lock(&phydev->lock); > > > + rc = phy_modify_paged(phydev, MSCC_PHY_PAGE_EXTENDED_GPIO, > > > + VSC8531_CLKOUT_CNTL, mask, set); > > > + mutex_unlock(&phydev->lock); > > > > What is this mutex protecting? > > This was inspired by vsc85xx_edge_rate_cntl_set(). > Which has the same format.
phy_modify_paged() locks the MDIO bus while it swaps the page, so nothing else can use it. That also protects the read/modify/write.
Nothing is modifying phydev, so the lock is not needed for that either.
> I'll re-test with this lock removed. > I may be misremembering (or maybe I did something silly at some > point), but there was a weird stack-trace warning before adding this > lock there. > This was with a 5.10.116 kernel version.
This patch is for net-next, please test there.
When testing for locking issues, and when doing development in general, it is a good idea to turn on CONFIG_PROVE_LOCKING and CONFIG_DEBUG_ATOMIC_SLEEP.
Andrew
| |