I have a bit more information about this bug now.
The message "assertion(yadda) failed ..." occurs only
if the eth0 interface has been configured using pump
or dhclient. If the card isn't connected to the network
the message never occurs. If eth0 is merely brought up
and down using ifconfig the message doesn't occur. Only
if pump or dhclient has configured eth0 does the message
occur. Sometimes it occurs on "ifdown eth0", sometimes
on "cardctl eject" and sometimes during the shutdown
sequence.
Thomas
> Dear l-k.
>
> I'm still having this problem with kernel 2.4.0:
>
> Conditions:
> Linux 2.4.0 compiled on an IBM ThinkPad 600 51U (Pentium II)
> laptop with PCMCIA support. Same behavior with integral kernel
> PCMCIA, modular kernel PCMCIA and modular Hinds PCMCIA. System
> is Progeny Debian beta II.
>
> I have a Xircom modem/ethernet card which works correctly using
> the serial_cs, xirc2ps_cs, ds, i82365 and pcmcia_core modules;
> however when I try to "cardctl eject" or "reboot" I get first,
> "KERNEL: assertion(dev->ip_ptr==NULL)failed at
> dev.c(2422):netdev_finish_unregister"
> (not exact since I had to copy it down on paper ... doesn't
> show up in the logs) then a perpetual series of:
> "unregister_netdevice: waiting for eth0 to become free.
> Usage count = -1"
> messages every five seconds or so. "ps -A" reveals that
> modprobe is running; it can't be killed even with "kill -9".
> The "ifconfig" command locks up. Shutdown won't complete
> so I end up having to use SysRq-S-U-B to reboot.
>
> This problem only occurs if the Xircom card is connected to
> the Ethernet (in which case it is configured using DHCP).
> If the card is left unconnected to the network, the problem
> does not occur---the card can be ejected.
>
> Thomas Hood
> Please cc: your replies to me at jdthood_AT_yahoo.co.uk