On Fri, Jun 15, 2012 at 12:13 PM, Ronald Klop <ronald-freeb...@klop.yi.org> wrote: > On Fri, 15 Jun 2012 18:40:45 +0200, Kevin Oberman <kob6...@gmail.com> wrote: > >> On Fri, Jun 15, 2012 at 7:53 AM, Ronald Klop >> <ronald-freeb...@klop.yi.org> wrote: >>> >>> On Fri, 15 Jun 2012 15:50:49 +0200, Warren Block <wbl...@wonkity.com> >>> wrote: >>> >>>> On Fri, 15 Jun 2012, Ronald Klop wrote: >>>> >>>>> On Fri, 15 Jun 2012 08:01:21 +0200, Kevin Oberman <kob6...@gmail.com> >>>>> wrote: >>>>> >>>>>> On Thu, Jun 14, 2012 at 3:11 AM, Ronald Klop >>>>>> <ronald-freeb...@klop.yi.org> wrote: >>>>>>> >>>>>>> >>>>>>> On Thu, 14 Jun 2012 02:41:58 +0200, Kevin Oberman <kob6...@gmail.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Since updating my systems to 9-Stable, I am not getting my smartcard >>>>>>>> reader attached when hot-plugged. >>>>>>>> >>>>>>>>> From devd.conf >>>>>>>> >>>>>>>> >>>>>>>> attach 50 { >>>>>>>> device-name "ugen[0-9]+"; >>>>>>>> match "vendor" "0x0529"; >>>>>>>> match "product" "0x0600"; >>>>>>>> action "/usr/local/sbin/openct-control attach usb:529/600 usb >>>>>>>> /dev/$dev$ >>>>>>>> }; >>>>>>>> detach 50 { >>>>>>>> device-name "ugen[0-9]+"; >>>>>>>> match "vendor" "0x0529"; >>>>>>>> match "product" "0x0600"; >>>>>>>> action "/usr/bin/pkill -fx '/usr/local/sbin/ifdhandler -H -p >>>>>>>> [a-z0-9]+ $ >>>>>>>> }; >>>>>>>> If I manually enter the "action" command, it works fine, but it >>>>>>>> fails >>>>>>>> when I insert the device. It worked fine under version 8. I have >>>>>>>> confirmed devd is seeing the device inserted just fine. the action >>>>>>>> just does not seem to be carried out. >>>>>>>> Any idea where I should look? I saw a couple of threads on current >>>>>>>> from others seeing something similar, but could find no resolution. >>>>>>>> I have seen a >>>>>>> >>>>>>> >>>>>>> Did you run devd with debug messages on? Options -D and -d are >>>>>>> helpful. >>>>>>> If you do does devd match the right devd.conf sections and start the >>>>>>> action? >>>>>> >>>>>> >>>>>> With debug i get: >>>>>> Processing event '!system=USB subsystem=DEVICE type=ATTACH >>>>>> ugen=ugen1.3 cdev=ugen1.3 vendor=0x0529 product=0x0600 devclass=0xff >>>>>> devsubclass=0x00 sernum="" release=0x0100 mode=host port=1 >>>>>> parent=ugen1.2' >>>>>> [long list of "Testing" entries, none of which 'vendor' matched] >>>>>> Executing 'logger Unknown USB device: vendor 0x0529 product 0x0600 bus >>>>>> uhub3' >>>>>> So it looks like devd is not matching the vendor. But my devd.conf >>>>>> file contains that vendor. I don't know exactly why it is not being >>>>>> tested against. Nothing in the debug output gives me a clue and I >>>>>> tried grepping for one of the tested vendor IDs in /etc/devd.conf and >>>>>> /etc/devd/*.conf. Not found. >>>>>> I am at a loss. >>>>> >>>>> >>>>> >>>>> http://www.freebsd.org/releases/9.0R/errata.html >>>>> See point 3 under Open Issues. >>>> >>>> >>>> >>>> Even with those changes, devd is not triggering on my scanner attach: >>>> >>>> match "subsystem" "DEVICE"; >>>> match "type" "ATTACH"; >>>> match "cdev" "ugen[0-9]+.[0-9]+"; >>>> match "vendor" "0x04b8"; >>>> match "product" "0x010a"; >>>> action "echo HERE! $cdev > /tmp/zoot"; >>>> >>>> # devd -d -D -f /etc/devd/wb.conf >>>> >>>> Processing event '!system=USB subsystem=DEVICE type=ATTACH ugen=ugen0.6 >>>> cdev=ugen0.6 vendor=0x04b8 product=0x010a devclass=0xff devsubclass=0xff >>>> sernum="" release=0x0103 mode=host port=4 parent=ugen0.4' >>>> Pushing table >>>> setting system=USB >>>> setting subsystem=DEVICE >>>> setting type=ATTACH >>>> setting ugen=ugen0.6 >>>> setting cdev=ugen0.6 >>>> setting vendor=0x04b8 >>>> setting product=0x010a >>>> setting devclass=0xff >>>> setting devsubclass=0xff >>>> setting sernum= >>>> setting release=0x0103 >>>> setting mode=host >>>> setting port=4 >>>> setting parent=ugen0.4 >>>> Processing notify event >>>> Testing system=USB against ^DEVFS >>>> Testing system=USB against ^DEVFS >>>> Popping table >>>> >>> >>> I tried the same attaching my webcam on pcbsd in vmware. >>> >>> [root@pcbsd-1684 /etc/devd]# cat /tmp/bla.conf >>> notify 100 { >>> >>> match "subsystem" "DEVICE"; >>> match "type" "ATTACH"; >>> match "cdev" "ugen[0-9]+.[0-9]+"; >>> match "vendor" "0x2232"; >>> match "product" "0x1008"; >>> action "echo HERE! $cdev >> /tmp/bla.log"; >>> }; >>> >>> # devd -d -D -f /tmp/bla.conf >>> ... >>> Processing event '!system=USB subsystem=DEVICE type=ATTACH ugen=ugen1.2 >>> cdev=ugen1.2 vendor=0x2232 product=0x1008 devclass=0xef devsubclass=0x02 >>> sernum="" release=0x0019 mode=host port=1 parent=ugen1.1' >>> >>> Pushing table >>> setting system=USB >>> setting subsystem=DEVICE >>> setting type=ATTACH >>> setting ugen=ugen1.2 >>> setting cdev=ugen1.2 >>> setting vendor=0x2232 >>> setting product=0x1008 >>> setting devclass=0xef >>> setting devsubclass=0x02 >>> setting sernum= >>> setting release=0x0019 >>> setting mode=host >>> setting port=1 >>> setting parent=ugen1.1 >>> Processing notify event >>> Testing subsystem=DEVICE against ^DEVICE >>> Testing type=ATTACH against ^ATTACH >>> Testing cdev=ugen1.2 against ^ugen[0-9]+.[0-9]+ >>> Testing vendor=0x2232 against ^0x2232 >>> Testing product=0x1008 against ^0x1008 >>> Executing 'echo HERE! ugen1.2 >> /tmp/bla.log' >>> Popping table >>> >>> [root@pcbsd-1684 /etc/devd]# cat /tmp/bla.log >>> HERE! ugen1.2 >>> >>> Do you see a significant difference with your setup? >> >> >> Switched to 'notify' with: >> notify 50 { >> match "system" "USB" >> match "subsystem" "DEVICE"; >> match "type" "ATTACH"; >> match "cdev" "ugen[0-9\.]+"; >> match "vendor" "0x0529"; >> match "product" "0x0600"; >> action "/usr/local/sbin/openct-control attach usb:529/600 usb >> /dev/$devi >> ce-name"; >> }; >> >> I still see no attempt to match against vendor 0x0529. Still no go. >> (Note that I prefer the [0-9\.] + syntax, but tried yours, as well.) >> >> The real issue is that devd seems to have a long list of vendors that >> it matches against, but 0x529 is not in that list, so matching the >> device name is not likely an issue. > > > You miss a ; after "USB" and I don't think $device-name is still used. It is > replaced with $cdev and $ugen according to the 9.0 errata. > > http://www.freebsd.org/releases/9.0R/errata.html > > And it should not be necessary to escape a . within a set of characters in a > regular expression. But I don't now the internals of devd and if it really > uses regular expressions. > > NB: it can help if you post the debug output from devd online somewhere. So > people can have a look at the output of devd in stead of guessing from the > syntax of the config. > > Succes,
Thanks for the pointer to the errata! That did the trick for the attach.I now need to deal with the slightly more complex detach action. It includes backticks, so I now need to read the other half of this thread. Thanks again, Ron. No excuse for not carefully reading the errata, but I didn't. -- R. Kevin Oberman, Network Engineer E-mail: kob6...@gmail.com _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"