Re: [PATCH v1] driver core: Fix device link device name collision

From: Saravana Kannan
Date: Thu Jan 07 2021 - 18:19:12 EST


On Thu, Jan 7, 2021 at 12:59 AM Greg Kroah-Hartman
<gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> 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.

Greg,

Do you want me to send a v2 to fix this and add "fixes"? Or will you
just fix it up when picking it up?

-Saravana

>
> >
> > [1] - https://lore.kernel.org/lkml/20201229033440.32142-1-michael@xxxxxxxx/
> > Reported-by: Michael Walle <michael@xxxxxxxx>
> > Signed-off-by: Saravana Kannan <saravanak@xxxxxxxxxx>
> > ---
> >
> > 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