Messages in this thread |  | | Subject | Re: PCMCIA/network behaviour broken | | Date | Mon, 31 May 1999 19:19:27 +0100 (BST) | | From | Alan Cox <> |
| |
> The issue is the behaviour of the kernel when I remove a card. In 2.0.x, > I could remove a live card and it would cleanly remove the associcated > interface and routes, and all would be well. This is required in the case > where I suspend my laptop and remove the card(s) to fit it into the case. > When it resumes, PCMCIA card services shuts down the card (it trivially > deals with suddenly non-existant devices, as is the nature of PCMCIA), and > the interface disappears.
Yep
> started, never ran those on my laptop), is for the interface to be left in > a hung state, with the entire networking stack (or at least the bits I can > get to) completely frozen. I'm forced to reboot to clear the state and > get back to work.
The PCMCIA code last time I checked was still calling network device driver admin routines from an interrupt. If that hasnt been fixed in pcmcia-cs that would explain these kind of behaviours
> Suspend/resume behaviour has gotten even more strange, with PCMCIA card > services removing the modules for the device upon resume, but the > interface remaining in the kernel (thus ifconfig output) until I try to > remove it, at which point the networking stack freezes.
If PCMCIA managed to remove a module for an active interface then it is broken. Fix the MOD_INC/DEC_USE_COUNT stuff for that module. An interface that is up is always 'in use'.
Alan
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
|  |