Re: driver model, duplicate names question

From: Greg KH
Date: Tue Jul 16 2013 - 14:33:32 EST


On Tue, Jul 16, 2013 at 11:29:42AM -0700, Srinivas Pandruvada wrote:
> Thanks for the quick response. Here I am creating virtual devices using
> device_register.
> I have attached a simple test program, which will give error.
>
> This is my intention:
>
> $> cd /sys/class/test_class
> $> ls
> power_zone_cpu_package_0
> power_zone_cpu_package_1

Wait, you are mixing a class and a "real" bus up. This will fail as
your devices all end up on the virtual "bus" with the same name, in the
same location on the bus (look in /sys/devices/virtual/ for where they
will end up at.

That will fail, and rightly so.

Try using this with the proper 'struct bus_type' and let me know if
creating a device there with the same name will also fail.

Oh crud, it will, because we can't create symlinks with the same bus
type in the /sys/bus/BUSTYPE/devices/ directory.

So, don't use the same name for a device on the same bus, that way
causes confusion :)

Let's get back to your original "problem", what again are you trying to
solve? There should be a way to resolve this without having to deal
with duplicate names, perhaps you just want an attribute group with a
common name?

thanks,

greg k-h
--
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/