Re: Question on "embedded" classes

From: Greg KH
Date: Mon Jun 27 2005 - 18:37:52 EST


On Mon, Jun 27, 2005 at 07:19:22PM -0400, Luben Tuikov wrote:
> Hi,
>
> I was wondering what the reason was for allowing
> class and classdev to only be at level 3 and level
> 4 respectively of sysfs (/ is level 0)?
>
> 1) Some devices would not have any relevance
> ouside the scope of the "parent" device.
> 2) "Hooking" them all at /sys/class/ level
> would create quite a lot of symlinks (and with
> cryptic names in order to reference the proper
> "parent" device in the same directory).
>
> E.g. Some devices, like SAS host adapters, have "devices
> inside devices" and I'd like to represent this in
> sysfs.
>
> /sys/class/sas (a class)
> /sys/class/sas/ha0/ (a classdev)
> /sys/class/sas/ha1/ (a classdev)
>
> /sys/class/sas/ha0/device -> symlink to PCI device
> /sys/class/sas/ha0/device_name (text attribute)
>
> /sys/class/sas/ha0/phys/ (a class)
> /sys/class/sas/ha0/phys/0/ (a classdev)

Nope, this is not allowed.

Classes are not allowed to have children classes.
class devices can not have children, be they class_device or a class.

That is the reason you are getting oopses :)

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/