From: Anthony Wright <anthony@communitymesh.com>
To: linux-hotplug@vger.kernel.org
Subject: Re: The DRIVER rule doesn't seem to work
Date: Thu, 03 Aug 2006 09:45:01 +0000 [thread overview]
Message-ID: <44D1C59D.205@communitymesh.com> (raw)
In-Reply-To: <44CCAD5F.9010407@communitymesh.com>
Kay Sievers wrote:
>>>> What I believe is happening is that DRIVER is looking at the device's
>>>> ancestor's drivers (parent, grandparent etc, but not the device itself),
>>>> and returning their driver if they have one.
>>>>
>>> Sure, it looks a the device itself, but also walks up the parents and
>>> finds a DRIVER value there.
>>>
>> I had a good look at this, and from what I can tell it only looks at the
>> device's parents, not the device itself. I compiled and ran udev with
>> debug to see what was going on (and have lots of logs if you're
>> interested), but the short version is that while udev makes a DRIVER
>> test for the device, it looks like the driver field hasn't been loaded
>> for the device, only for the device's parents. From my logs, it seems
>> that to load values for the device the function
>> sysfs_device_set_values() is called in isolation, while for the parents
>> sysfs_device_get() is called which calls sysfs_device_set_values(), but
>> also sets the driver field.
>>
> If you ask for a class device, it will never be set, cause class devices
> don't have a driver, only parent devices which are created by a bus
I don't think they are class devices, but I can't be 100% sure as I'm
still learning how all the device handling works.
The path to the devices and their driver symbolic links are:
Path Driver Symlink
a) /sys/devices/pci0000:00/0000:00:1d.1 uhci_hcd
b) /sys/devices/pci0000:00/0000:00:1d.1/usb2 usb
c) /sys/devices/pci0000:00/0000:00:1d.1/usb2/2-0:1.0 hub
d) /sys/devices/pci0000:00/0000:00:1d.1/usb2/2-1 usb
e) /sys/devices/pci0000:00/0000:00:1d.1/usb2/2-1/2-1:1.0 NONE
f) /sys/devices/pci0000:00/0000:00:1d.1/usb2/2-1/2-1:1.1 NONE
g) /sys/devices/pci0000:00/0000:00:1d.1/usb2/2-1/2-1:1.2 NONE
and there are a lot of references to the bus sub-directories in the logs.
The rule DRIVER="?*" for each of these devices according to match_key
matches the following matching values:
Matching value
a) MATCHING FAILS
b) uhci_hcd
c) usb
d) usb
e) usb
f) usb
g) usb
This is consistant with DRIVER matching against a device's parents only,
not the device itself. If DRIVER also matched against the device I
believe the matching values should be as follows.
Matching value
a) uhci_hcd
b) usb
c) hub
d) usb
e) usb
f) usb
g) usb
Cheers,
Tony.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CIDÞVDEV
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
next prev parent reply other threads:[~2006-08-03 9:45 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-30 12:58 The DRIVER rule doesn't seem to work Anthony Wright
2006-07-30 14:20 ` Kay Sievers
2006-08-03 8:40 ` Anthony Wright
2006-08-03 8:44 ` Kay Sievers
2006-08-03 9:45 ` Anthony Wright [this message]
2006-08-03 18:12 ` Kay Sievers
2006-08-11 21:59 ` Anthony Wright
2006-08-13 3:23 ` Kay Sievers
2006-08-14 7:29 ` Anthony Wright
2006-08-14 10:59 ` Kay Sievers
2006-08-23 0:05 ` Kay Sievers
2006-08-23 0:16 ` Kay Sievers
2006-08-24 14:34 ` Anthony Wright
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44D1C59D.205@communitymesh.com \
--to=anthony@communitymesh.com \
--cc=linux-hotplug@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.