On 3/20/06, Eric Evans <[EMAIL PROTECTED]> wrote:

> On Sun, Mar 19, 2006 at 05:30:11PM +1000, Jonathan Hepburn muttered these 
> words:
>
> [ ... ]
>
> > Output:
> > + DAEMON_NAME=ifplugd
> > + DAEMON=/usr/sbin/ifplugd
> > + CFG=/etc/default/ifplugd
> > + '[' -x /usr/sbin/ifplugd ']'
> > + HOTPLUGFUNCS=/lib/udev/hotplug.functions
> > + '[' -f /lib/udev/hotplug.functions ']'
> > + . /lib/udev/hotplug.functions
> > ++ FIRMWARE_DIRS='/lib/firmware /usr/local/lib/firmware
> > /usr/lib/hotplug/firmware'
> > ++ EVENTS_DIR=/dev/.events
> > ++ MODPROBE='/sbin/modprobe -s -q'
> > ++ PATH=/sbin:/bin:/usr/sbin:/usr/bin
> > ++ '[' -e /etc/default/hotplug ']'
> > ++ '[' -x /usr/bin/logger ']'
> > ++ LOGGER=/usr/bin/logger
> > ++ '[' -t 1 -a -z /usr/bin/logger ']'
> > ++ '[' '!' -e /dev/log ']'
> > ++ '[' -t 1 ']'
> > + DEBUG=yes
> > + export DEBUG
> > + '[' usb0 ']'
> > + '[' -f /etc/default/ifplugd ']'
> > + . /etc/default/ifplugd
> > ++ INTERFACES=
> > ++ HOTPLUG_INTERFACES=all
> > ++ ARGS='-q -f -u0 -d10 -w -I'
> > ++ SUSPEND_ACTION=stop
> > + '[' -x /sbin/ifrename -a -r /etc/iftab ']'
> > + case $ACTION in
> > + for IF in '$HOTPLUG_INTERFACES'
> > + '[' usb0 = all -o all = all ']'
> > + debug_mesg Invoking ifplugd for usb0
> > + '[' -z yes -o yes = no ']'
> > + mesg Invoking ifplugd for usb0
> > + echo Invoking ifplugd for usb0
> > Invoking ifplugd for usb0
> > + /usr/bin/logger -t 'ifplugd.hotplug[22172]' Invoking ifplugd for usb0
> > + /etc/init.d/ifplugd start usb0
> > Starting Network Interface Plugging Daemon: usb0.
> > + break
> >
> > ifplugd will now run, and will now automatically bring up usb0.
> > However, after closing the interface it will not re-start it.
>
> I'm not sure I understand. Are you saying that the behavior is what is
> expected after manually starting it, but after removing and readding the
> device it fails?

That's essentially it, yes. If I start it manually, it will sit waiting. If I
add the device, usb0 pops up and is usable. If I remove the device, usb0
disappears but, upon reinsertion, the restored usb0 is missing the IP
addresses. This may, I well realise, not be ifplugd's domain and therefore not
ifplugd's problem.

> In your configuration, the sequence of events should go roughly like the
> following:
>
>   * When the usb device is attached, udev assigns it the name usb0 and
>     runs /etc/hotplug.d/net/ifplugd.hotplug with ACTION=add.
>   * /etc/hotplug.d/net/ifplugd.hotplug runs '/etc/init.d/ifplugd start
>     usb0' and ifplugd is started on that interface.
>   * If a link beat is detected, (you can run ifplugstatus to check this
>     manually), "ifup usb0" is executed by ifplugd.
>
> When the device is detached, udev runs /etc/hotplug.d/net/ifplugd.hotplug
> with ACTION=remove, which in turn runs /etc/init.d/ifplugd stop usb0,
> and ifplugd is stopped for that interface.
>
> At this point, it appears that manual invocation of the scripts does in
> fact work, so perhaps udev is not kicking things off?
>
> What do the logs say immediately after adding and removing the device?
> You should be seeing something like ..
>
>  Mar 12 12:37:22 aries ifplugd.hotplug[5561]: Invoking ifplugd for wlan0
>  Mar 12 12:46:48 aries ifplugd.hotplug[5777]: Stopping ifplugd for wlan0

Interestingly, I only see this:

Mar 25 15:35:18 ijtihad ifplugd.hotplug[31462]: Invoking ifplugd for usb0

when I start ifplugd by hand using ACTION= etc., irrespective of the
device being present or not. There is, from that moment onwards,
nothing from ifplugd when I add or remove the device.

The kernel messages for the device read like this:

Mar 25 15:39:16 ijtihad kernel: usb 3-1: new full speed USB device
using ohci_hcd and address 6
Mar 25 15:39:17 ijtihad kernel: usb 3-1: Product: SL-5500
Mar 25 15:39:17 ijtihad kernel: usb 3-1: Manufacturer: Sharp
Mar 25 15:39:17 ijtihad kernel: usb 3-1: SerialNumber: 400002000001
Mar 25 15:39:17 ijtihad kernel: usb0: register 'zaurus' at
usb-0000:00:02.1-1, Sharp Zaurus SL-5x00, ee:23:9a:8e:15:cf

For removal:

Mar 25 15:46:51 ijtihad kernel: usb 3-1: USB disconnect, address 6
Mar 25 15:46:51 ijtihad kernel: usb0: unregister 'zaurus'
usb-0000:00:02.1-1, Sharp Zaurus SL-5x00

And that's it.

Oh, and a link beat is detected for usb0 when the device is inserted

Cheers,
J

Reply via email to