Re: [PATCH net-next] net: dsa: mv88e6xxx: assert SMI lock

From: Vivien Didelot
Date: Fri Oct 30 2015 - 17:11:38 EST


On Oct. Friday 30 (44) 10:01 PM, Andrew Lunn wrote:
> > > > static int _mv88e6xxx_reg_read(struct dsa_switch *ds, int addr, int reg)
> > > > {
> > > > - struct mii_bus *bus = dsa_host_dev_to_mii_bus(ds->master_dev);
> > > > + struct mii_bus *bus;
> > > > int ret;
> > > >
> > > > + assert_smi_lock(ds);
> > > > +
> > > > + bus = dsa_host_dev_to_mii_bus(ds->master_dev);
> > >
> > > Is this change of when bus is assigned actually required?
> >
> > No, but I found not necessary to issue this "mdio_bus" lookup if the
> > lock is not held (see net/dsa/dsa.c:555). Do you prefer not to do that?
>
> You are optimising for an error condition. If this optimisation saves
> anything, it means we have a locking bug!

Very good point, I'll get rid of that then.

> As a separate patch, i would do this lookup once in a setup function
> and save it away in ps. We just need to watch out for the probe
> register accesses.

Yes, I already put that on a todo list ;-)

> > Also are you OK with removing all the "Must be called with..." comments,
>
> Yes, it will become a lot more clear when the kernel outputs a stack dump!

Good, sending a v2 right away then.

Thanks,
-v
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/