Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Jun 2012 23:05:23 -0700
From:      Kevin Oberman <kob6558@gmail.com>
To:        Ronald Klop <ronald-freebsd8@klop.yi.org>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: devd problem with 9-stable
Message-ID:  <CAN6yY1vA3dV1nv=QyYxbupetrkC6qc0fYvxFs19BD_YGP40Y4g@mail.gmail.com>
In-Reply-To: <op.wfyk0kyt8527sy@212-182-167-131.ip.telfort.nl>
References:  <CAN6yY1vOHDJzbScVFmgMdnL4JZGb2HUvh=DnL0GNdiH0OUpZ8w@mail.gmail.com> <op.wfv09jqu8527sy@ronaldradial.versatec.local> <CAN6yY1sGp47FZnkX0UuCzH__XXPwO3GVzywT%2B00_SNSg2g-Ywg@mail.gmail.com> <op.wfxpy80b8527sy@ronaldradial.versatec.local> <alpine.BSF.2.00.1206150746510.25418@wonkity.com> <op.wfx8zifw8527sy@ronaldradial.versatec.local> <CAN6yY1tnK4s0L_eC1R0BEZEd9O_f1MYHsq_h1K_7w84zj0vV7g@mail.gmail.com> <op.wfyk0kyt8527sy@212-182-167-131.ip.telfort.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jun 15, 2012 at 12:13 PM, Ronald Klop
<ronald-freebsd8@klop.yi.org> wrote:
> On Fri, 15 Jun 2012 18:40:45 +0200, Kevin Oberman <kob6558@gmail.com> wro=
te:
>
>> On Fri, Jun 15, 2012 at 7:53 AM, Ronald Klop
>> <ronald-freebsd8@klop.yi.org> wrote:
>>>
>>> On Fri, 15 Jun 2012 15:50:49 +0200, Warren Block <wblock@wonkity.com>
>>> wrote:
>>>
>>>> On Fri, 15 Jun 2012, Ronald Klop wrote:
>>>>
>>>>> On Fri, 15 Jun 2012 08:01:21 +0200, Kevin Oberman <kob6558@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> On Thu, Jun 14, 2012 at 3:11 AM, Ronald Klop
>>>>>> <ronald-freebsd8@klop.yi.org> wrote:
>>>>>>>
>>>>>>>
>>>>>>> On Thu, 14 Jun 2012 02:41:58 +0200, Kevin Oberman <kob6558@gmail.co=
m>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Since updating my systems to 9-Stable, I am not getting my smartca=
rd
>>>>>>>> reader attached when hot-plugged.
>>>>>>>>
>>>>>>>>> From devd.conf
>>>>>>>>
>>>>>>>>
>>>>>>>> =C2=A0attach 50 {
>>>>>>>> =C2=A0 =C2=A0 device-name "ugen[0-9]+";
>>>>>>>> =C2=A0 =C2=A0 match "vendor" "0x0529";
>>>>>>>> =C2=A0 =C2=A0 match "product" "0x0600";
>>>>>>>> =C2=A0 =C2=A0 action "/usr/local/sbin/openct-control attach usb:52=
9/600 usb
>>>>>>>> /dev/$dev$
>>>>>>>> };
>>>>>>>> detach 50 {
>>>>>>>> =C2=A0 =C2=A0 device-name "ugen[0-9]+";
>>>>>>>> =C2=A0 =C2=A0 match "vendor" "0x0529";
>>>>>>>> =C2=A0 =C2=A0 match "product" "0x0600";
>>>>>>>> =C2=A0 =C2=A0 action "/usr/bin/pkill -fx '/usr/local/sbin/ifdhandl=
er -H -p
>>>>>>>> [a-z0-9]+ $
>>>>>>>> };
>>>>>>>> =C2=A0If 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.
>>>>>>>> =C2=A0Any idea where I should look? I saw a couple of threads on c=
urrent
>>>>>>>> from others seeing something similar, but could find no resolution=
.
>>>>>>>> I have seen a
>>>>>>>
>>>>>>>
>>>>>>> =C2=A0Did you run devd with debug messages on? Options -D and -d ar=
e
>>>>>>> helpful.
>>>>>>> If you do does devd match the right devd.conf sections and start th=
e
>>>>>>> action?
>>>>>>
>>>>>>
>>>>>> =C2=A0With debug i get:
>>>>>> Processing event '!system=3DUSB subsystem=3DDEVICE type=3DATTACH
>>>>>> ugen=3Dugen1.3 cdev=3Dugen1.3 vendor=3D0x0529 product=3D0x0600 devcl=
ass=3D0xff
>>>>>> devsubclass=3D0x00 sernum=3D"" release=3D0x0100 mode=3Dhost port=3D1
>>>>>> parent=3Dugen1.2'
>>>>>> [long list of "Testing" entries, none of which 'vendor' matched]
>>>>>> Executing 'logger Unknown USB device: vendor 0x0529 product 0x0600 b=
us
>>>>>> uhub3'
>>>>>> =C2=A0So 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 an=
d
>>>>>> /etc/devd/*.conf. =C2=A0Not found.
>>>>>> =C2=A0I 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:
>>>>
>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "subsystem" "DEVICE";
>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "type" "ATTACH";
>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "cdev" "ugen[0-9]+.[0-9]+";
>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "vendor" "0x04b8";
>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "product" "0x010a";
>>>> =C2=A0 =C2=A0 =C2=A0 =C2=A0action "echo HERE! $cdev > /tmp/zoot";
>>>>
>>>> # devd -d -D -f /etc/devd/wb.conf
>>>>
>>>> Processing event '!system=3DUSB subsystem=3DDEVICE type=3DATTACH ugen=
=3Dugen0.6
>>>> cdev=3Dugen0.6 vendor=3D0x04b8 product=3D0x010a devclass=3D0xff devsub=
class=3D0xff
>>>> sernum=3D"" release=3D0x0103 mode=3Dhost port=3D4 parent=3Dugen0.4'
>>>> Pushing table
>>>> setting system=3DUSB
>>>> setting subsystem=3DDEVICE
>>>> setting type=3DATTACH
>>>> setting ugen=3Dugen0.6
>>>> setting cdev=3Dugen0.6
>>>> setting vendor=3D0x04b8
>>>> setting product=3D0x010a
>>>> setting devclass=3D0xff
>>>> setting devsubclass=3D0xff
>>>> setting sernum=3D
>>>> setting release=3D0x0103
>>>> setting mode=3Dhost
>>>> setting port=3D4
>>>> setting parent=3Dugen0.4
>>>> Processing notify event
>>>> Testing system=3DUSB against ^DEVFS
>>>> Testing system=3DUSB 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 {
>>>
>>> =C2=A0match "subsystem" "DEVICE";
>>> =C2=A0match "type" "ATTACH";
>>> =C2=A0match "cdev" "ugen[0-9]+.[0-9]+";
>>> =C2=A0match "vendor" "0x2232";
>>> =C2=A0match "product" "0x1008";
>>> =C2=A0action "echo HERE! $cdev >> /tmp/bla.log";
>>> =C2=A0};
>>>
>>> # devd -d -D -f /tmp/bla.conf
>>> ...
>>> Processing event '!system=3DUSB subsystem=3DDEVICE type=3DATTACH ugen=
=3Dugen1.2
>>> cdev=3Dugen1.2 vendor=3D0x2232 product=3D0x1008 devclass=3D0xef devsubc=
lass=3D0x02
>>> sernum=3D"" release=3D0x0019 mode=3Dhost port=3D1 parent=3Dugen1.1'
>>>
>>> =C2=A0Pushing table
>>> setting system=3DUSB
>>> setting subsystem=3DDEVICE
>>> setting type=3DATTACH
>>> setting ugen=3Dugen1.2
>>> setting cdev=3Dugen1.2
>>> setting vendor=3D0x2232
>>> setting product=3D0x1008
>>> setting devclass=3D0xef
>>> setting devsubclass=3D0x02
>>> =C2=A0setting sernum=3D
>>> setting release=3D0x0019
>>> setting mode=3Dhost
>>> setting port=3D1
>>> setting parent=3Dugen1.1
>>> Processing notify event
>>> Testing subsystem=3DDEVICE against ^DEVICE
>>> Testing type=3DATTACH against ^ATTACH
>>> Testing cdev=3Dugen1.2 against ^ugen[0-9]+.[0-9]+
>>> =C2=A0Testing vendor=3D0x2232 against ^0x2232
>>> Testing product=3D0x1008 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 {
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "system" "USB"
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "subsystem" "DEVICE";
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "type" "ATTACH";
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "cdev" "ugen[0-9\.]+";
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "vendor" "0x0529";
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0match "product" "0x0600";
>> =C2=A0 =C2=A0 =C2=A0 =C2=A0action "/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 i=
n a
> regular expression. But I don't now the internals of devd and if it reall=
y
> 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 th=
e
> 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 di=
dn't.
--=20
R. Kevin Oberman, Network Engineer
E-mail: kob6558@gmail.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN6yY1vA3dV1nv=QyYxbupetrkC6qc0fYvxFs19BD_YGP40Y4g>