Bug 32536 - Dell Portables pcmcia error RC2 qa0319
Summary: Dell Portables pcmcia error RC2 qa0319
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 7.1
Hardware: i386
OS: Linux
high
high
Target Milestone: ---
Assignee: Michael K. Johnson
QA Contact: Brock Organ
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2001-03-21 15:39 UTC by Rogelio Noriega
Modified: 2005-10-31 22:00 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2001-04-10 16:37:19 UTC
Embargoed:


Attachments (Terms of Use)

Description Rogelio Noriega 2001-03-21 15:39:52 UTC
Funny to say, the machine hangs completely if I remove one pcmcia
  card when the pcmcia services ARE STOPPED (that is, first issuing
  "service pcmcia stop" and then removing/swapping one card)
  This last behaviour is hard to understand, it seems there is some
  fake interrupt going around... in principle with the service stopped
  the kernel should not care at all about cards. 

hot swapping works IF AND ONLY IF:
    a) I "eject" the cards with cardctl
    b) I eject them abruptly by hand

Comment 1 Mick Tantasirikorn 2001-03-23 15:37:31 UTC
still exist in qa0322.

Comment 2 Arjan van de Ven 2001-03-23 18:45:25 UTC
Is this cardbus or pcmcia ?


Comment 3 Mick Tantasirikorn 2001-03-26 20:01:41 UTC
This is a cardbus system but it will support pcmcia

Comment 4 Bill Nottingham 2001-03-27 21:43:51 UTC
I was able to reproduce this with both a PCMCIA and a Cardbus card (on a C600).

Comment 5 Bill Nottingham 2001-03-28 21:22:26 UTC
This is a problem with the IRQ being shared betwen PCMCIA and
USB; with the usb-uhci driver unloaded it works OK.

Comment 6 Mick Tantasirikorn 2001-03-29 15:36:25 UTC
how about doing what one of our engineer (Andy Jordan) figured out:

*****
1)The problem only occurred when the card was actively passing data (i.e. 
connected to the network) os in most cases, stopping the network service first 
seemed to do the trick.
2)I checked /etc/rc.d/init.d/pcmcia for the stop section which I have pasted 
below and found that it is only killing cardmgr. I got the same results when I 
tried to send SIGTERM to the PID manually so I know that is the process that is 
hanging. I was also able to verify that the config gets reloaded when cardmgr 
receives SIGHUP -at least that part seems to be working.
3)If I inserted " cardctl eject " somewhere before the kill signal is sent, it 
worked fine. Which seemed to correspond with your findings that a hot eject 
worked fine. So maybe as a workaround, I added the line in red below

stop()
{
	echo -n $"Shutting down PCMCIA card services:"
	if [ -s /var/run/cardmgr.pid ] ; then
		PID= 'cat /var/run/cardmgr.pid'
		/sbin/cardctl eject
		kill $PID
		echo -n $" cardmgr"
		$Give cardmgr a few seconds to handle the signal
		kill -0 $PID 2>/dev/null && sleep 2 && \
		kill -0 $PID 2>/dev/null && sleep 2 && \
		kill -0 $PID 2>/dev/null && sleep 2 && \
		kill -0 $PID 2>/dev/null 
	fi
	etcetera...etcetera...

As far as I can tell, cardmgr is supposed to unload the drivers using insmod -
or modprobe if insmod fails- when it receives SIGTERM. I can only assume that 
the issue is in cardmgr, insmod or the fact that the sockets are now handled as 
yenta -which I think is new in the 2.4 kernel.
******


Comment 7 Matt Wilson 2001-04-03 13:57:31 UTC
oh, we've already fixed this one - it was a kernel bug where yenta_socket didn't
turn off event notification on unload.  When hw events happened it stormed the
machine and froze it.

Should be fine in the 2.4.2-0.1.40 and above kernels.


Comment 8 Mick Tantasirikorn 2001-04-03 19:55:39 UTC
still occurring with a PSION gold card Modem. in 2.4.2-0.1.49

Comment 9 Mick Tantasirikorn 2001-04-06 19:37:17 UTC
when I have the PSION Gold card Modem connected, I type in the command

service pcmcia stop
I eject the card

Then the system hangs.  This does not happen on the 3Com 3c575 Network card any 
more.

Comment 10 Bill Nottingham 2001-04-10 01:55:20 UTC
Hm, I tried this on a gold card here with the C600 and it works OK;
was this the C600 or the i8000 (or something else)?

Comment 11 Mick Tantasirikorn 2001-04-10 16:37:15 UTC
I tried it with a Gold card on 2 different C600 systems.

Can you please try it with 2 cards in the systems (one network and one goldcard 
modem)?  stop the pcmcia service and then eject the cards one at a time.

I can get it to hang consistently.
Thanks.


Note You need to log in before you can comment on or make changes to this bug.