Skip to contentSkip to conversation

hotpluggable ide cd-rom drive?

DISCUSSION Kari Karhi 4 participants 9 messages Mar 17, 2003 – Mar 19, 2003

lore
Share & tools
lore

Kari Karhi

author
#0 lore raw

Hi,
I'm new to linux, but recently loaded RedHat 8.0 on my Dell Latitude CSx H laptop. The laptop comes with external floppy and cd-rom drives that connect to an ide port on the laptop. On Windows 2000 the drives are hot-pluggable.

My problem is that while the floppy drive is hot-pluggable in RH 8.0, the cd-rom drive is not. If I boot with the cd-rom drive connected, everything works, I see the /proc/ide/ide1 directory and the hdc device. kudzu then links it to /dev/cdrom and I can mount the drive. If I boot without the cd-rom drive connected, the /proc/ide/ide1 directory is NOT there and kudzu can not find it, even after I plug the drive in.

Is there a user level command to kick the ide-probe module into probing the ide bus again? Or is work going on to get the kernel to support hot-pluggable ide drives? Or am I just missing some configuration parameter?

If this is not the right list for this question, please direct me to a better list. I have already asked in redhat-install and linux-laptop lists without an answer.
Thanks,
Kari

-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#1 lore raw
Quoted 5 lines · Kari Karhi

Is there a user level command to kick the ide-probe module into probing the ide bus again? Or is work going on to get the kernel to support hot-pluggable ide drives? Or am I just missing some configuration parameter?

Unfortunately this is usually done in a hardware specific way, and since neither Dell, nor any other laptop manufacturer has provided the specs for how to detect and do this kind of hot-swap, Linux does not support it.

Sorry,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#2 lore raw
In reply to Kari Karhi

Am Montag, 17. März 2003 18:50 schrieb Greg KH:

Quoted 10 lines · Kari Karhi
Quoted 4 lines

Is there a user level command to kick the ide-probe module into probing the ide bus again? Or is work going on to get the kernel to support hot-pluggable ide drives? Or am I just missing some configuration parameter?

Unfortunately this is usually done in a hardware specific way, and since neither Dell, nor any other laptop manufacturer has provided the specs for how to detect and do this kind of hot-swap, Linux does not support it.

Not entirely true. It's supported in Apple Powerbooks. What happens if we suspend to disk and wake up with a changed drive ?

Regards
Oliver

-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#3 lore raw
In reply to Kari Karhi
Quoted 7 lines · Oliver Neukum

Am Montag, 17. März 2003 18:50 schrieb Greg KH:

Quoted 6 lines · Kari Karhi
Quoted 4 lines

Is there a user level command to kick the ide-probe module into probing the ide bus again? Or is work going on to get the kernel to support hot-pluggable ide drives? Or am I just missing some configuration parameter?

Quoted 6 lines
Quoted 4 lines

Unfortunately this is usually done in a hardware specific way, and since neither Dell, nor any other laptop manufacturer has provided the specs for how to detect and do this kind of hot-swap, Linux does not support it.

Not entirely true. It's supported in Apple Powerbooks.

Oh, forgot, some laptops support this if you suspend to ram, swap out the drive, and then resume. Works for some APM based laptops, don't know about ACPI based ones.

Quoted 1 line

What happens if we suspend to disk and wake up with a changed drive ?

Heh, I don't want to think about that :)

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#4 lore raw
In reply to Kari Karhi

Am Montag, 17. März 2003 20:09 schrieb Greg KH:

Quoted 13 lines · Oliver Neukum
Quoted 12 lines

Am Montag, 17. März 2003 18:50 schrieb Greg KH:

Quoted 10 lines · Kari Karhi
Quoted 4 lines

Is there a user level command to kick the ide-probe module into probing the ide bus again? Or is work going on to get the kernel to support hot-pluggable ide drives? Or am I just missing some configuration parameter?

Unfortunately this is usually done in a hardware specific way, and since neither Dell, nor any other laptop manufacturer has provided the specs for how to detect and do this kind of hot-swap, Linux does not support it.

Quoted 5 lines
Quoted 1 line

Not entirely true. It's supported in Apple Powerbooks.

Oh, forgot, some laptops support this if you suspend to ram, swap out the drive, and then resume. Works for some APM based laptops, don't know about ACPI based ones.

Powerbooks do it on a live system. Look at drivers/macintosh/mediabay.c.

Quoted 3 lines
Quoted 1 line

What happens if we suspend to disk and wake up with a changed drive ?

Heh, I don't want to think about that :)

Let me guess, you have an aversion against horror movies? ;-)

Seriously, looking power.c::device_resume() the code assumes that resumption is always successful. That is bad. Error codes need to be returned and evaluated.

Regards
Oliver

-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

author
#5 lore raw
In reply to Kari Karhi

Hi,
so let me try to summarize for my own understanding. Comments are welcome.

1. The mechanism used to probe the hardware for new devices during boot can not be used later during normal operation of the os. This prevents linux from running the ide-probe again and updating the device maps. Therefore there can be no user level commands one could run after plugging in a hot-pluggable device, that would find the device and add it to the device maps.

2. The hot-plug mechanism is specific to the system hardware and is not standardised. This prevents linux from finding out that new hardware has been added, and automagically adding the hot-plugged devices.

3. It is not possible to guess the device map and to build it from some static file at boot time (e.g. boot hdc=hotplug fd0=hotplug). This would allow the device to always be there, but if you try to access it before it is plugged in, you would get failures and time-outs.

So none of the above mechanisms would work?
Cheers,
Kari

----- Original Message -----
From: "Oliver Neukum" <[email protected]>
To: "Greg KH" <[email protected]>
Cc: "Kari Karhi" <[email protected]>;
<[email protected]>
Sent: Monday, March 17, 2003 2:44 PM
Subject: Re: hotpluggable ide cd-rom drive?

Am Montag, 17. März 2003 20:09 schrieb Greg KH:

Quoted 13 lines · Oliver Neukum
Quoted 12 lines

Am Montag, 17. März 2003 18:50 schrieb Greg KH:

Quoted 10 lines · Kari Karhi
Quoted 4 lines

Is there a user level command to kick the ide-probe module into probing the ide bus again? Or is work going on to get the kernel to support hot-pluggable ide drives? Or am I just missing some configuration parameter?

Unfortunately this is usually done in a hardware specific way, and since neither Dell, nor any other laptop manufacturer has provided the specs for how to detect and do this kind of hot-swap, Linux does not support it.

Quoted 5 lines
Quoted 1 line

Not entirely true. It's supported in Apple Powerbooks.

Oh, forgot, some laptops support this if you suspend to ram, swap out the drive, and then resume. Works for some APM based laptops, don't know about ACPI based ones.

Powerbooks do it on a live system. Look at drivers/macintosh/mediabay.c.

Quoted 3 lines
Quoted 1 line

What happens if we suspend to disk and wake up with a changed drive ?

Heh, I don't want to think about that :)

Let me guess, you have an aversion against horror movies? ;-)

Seriously, looking power.c::device_resume() the code assumes that resumption
is always successful. That is bad. Error codes need to be returned and evaluated.

Regards
Oliver

-------------------------------------------------------
This SF.net email is sponsored by: Does your code think in ink? You could win a Tablet PC. Get a free Tablet PC hat just for playing. What are you waiting for?
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr5043en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#6 lore raw
In reply to Kari Karhi
Quoted 9 lines · Kari Karhi

Hi,
so let me try to summarize for my own understanding. Comments are welcome.

1. The mechanism used to probe the hardware for new devices during boot can not be used later during normal operation of the os. This prevents linux from running the ide-probe again and updating the device maps. Therefore there can be no user level commands one could run after plugging in a hot-pluggable device, that would find the device and add it to the device maps.

Not necessarily true. I think that the ide code does not support this kind of behavior right now, this is not held back by the rest of the kernel. See the many queries about hotplug ide drives in the linux-kernel mailing list archives for a better answer to this.

Quoted 3 lines

2. The hot-plug mechanism is specific to the system hardware and is not standardised. This prevents linux from finding out that new hardware has been added, and automagically adding the hot-plugged devices.

Not true. The hotplug mechanism is specific to the individual bus types, but from a user's point of view, the mechanism is standardized to always interact through the same interface (/sbin/hotplug).

Quoted 4 lines

3. It is not possible to guess the device map and to build it from some static file at boot time (e.g. boot hdc=hotplug fd0=hotplug). This would allow the device to always be there, but if you try to access it before it is plugged in, you would get failures and time-outs.

That is a ide specific question, I do not know. But the current kernel code does not support such a "hcd=hotplug" mechanism, yes.

Quoted 1 line

So none of the above mechanisms would work?

They could, if someone implemented them :)

thanks,

greg k-h

-------------------------------------------------------
This SF.net email is sponsored by: Does your code think in ink? You could win a Tablet PC. Get a free Tablet PC hat just for playing. What are you waiting for?
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr5043en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#7 lore raw
In reply to Kari Karhi
Quoted 6 lines · Greg KH
Quoted 1 line · Oliver Neukum

Am Montag, 17. März 2003 18:50 schrieb Greg KH:

Oh, forgot, some laptops support this if you suspend to ram, swap out the drive, and then resume. Works for some APM based laptops, don't know about ACPI based ones.

With my thinkpad, I find a utility called "idectl" usefull. The expansion tray can take an extra ide device which is helpfully on the second IDE channel - idectl can turn that channel on off (ie force detection or drop a detected drive) allowing me to suspend and change/add/remove the tray or drive.

Quoted 3 lines
Quoted 1 line

What happens if we suspend to disk and wake up with a changed drive ?

Heh, I don't want to think about that :)

Can of worms that. I just make sure nothing is mounted and that ide-scsi / ide-cd are not loaded when I do 'idectl 1 off' and suspend.

--
Paul

-------------------------------------------------------
This SF.net email is sponsored by: Does your code think in ink? You could win a Tablet PC. Get a free Tablet PC hat just for playing. What are you waiting for?
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr5043en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel

#8 lore raw
In reply to Kari Karhi
Quoted 9 lines · Kari Karhi

Hi,
so let me try to summarize for my own understanding. Comments are welcome.

1. The mechanism used to probe the hardware for new devices during boot can not be used later during normal operation of the os. This prevents linux from running the ide-probe again and updating the device maps. Therefore there can be no user level commands one could run after plugging in a hot-pluggable device, that would find the device and add it to the device maps.

No. I'm sure that isn't true. See the idectl command.

Also see 'hdparm -U' and 'hdparm -R' which allow to un/register devices on specific IDE channels. I suspect idectl is doing much the same thing.

Ahh. idectl is supplied as source in
/usr/share/doc/hdparm/examples/idectl...

Should be what you want :O)

--
Paul

-------------------------------------------------------
This SF.net email is sponsored by: Does your code think in ink? You could win a Tablet PC. Get a free Tablet PC hat just for playing. What are you waiting for?
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr5043en
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel