On Wed, Jan 06, 2021 at 03:26:41PM -0800, Saravana Kannan wrote: > The device link device's name was of the form: > <supplier-dev-name>--<consumer-dev-name> > > This can cause name collision as reported here [1] as device names are > not globally unique. Since device names have to be unique within the > bus/class, add the bus/class name as a prefix to the device names used to > construct the device link device name. > > So the devuce link device's name will be of the form: > <supplier-bus-name>:<supplier-dev-name>--<consumer-bus-name><consumer-dev-name>
Minor nit, you forgot a ':' in the consumer side of the link here. The code is correct. > > [1] - https://lore.kernel.org/lkml/20201229033440.32142-1-mich...@walle.cc/ > Reported-by: Michael Walle <mich...@walle.cc> > Signed-off-by: Saravana Kannan <sarava...@google.com> > --- > > Michael, > > Can you please test this? This should fix your issue. > > Having said that, do you have some local DT changes when you are testing > this? Because it's not obvious from the DT in upstream what dependency > is even being derived from the firmware. I don't see any dependency in > upstream DT files between mdio_bus/0000:00:00.1 and > pci0000:00/0000:00:00.1 That looks really odd, why is the mdio bus using the same names as the pci bus? But anyway, your dev_bus_name() change here looks good, I'll take that as a separate patch no matter what happens here :) thanks, greg k-h