The Laptop-Hotswap kernel module allows hot-swapping of disk drives on Linux with complete DMA support.
There could be some issues with laptops that have two expansion bays. To solve the problem, I shut down the entire ide1 interface and fire it back up. I watch all activities on the ACPI device for the IDE1/Master. However, in case you have a slave drive and you ejected the master, your slave drive will vanish. I'm thinking of ways to get around this issue, but they don't export too much of the ide driver. Essentially, you must ensure that you're not using either master or slave whenever you eject one of them. It's also crucial not to pull anything while your laptop is sleeping. Do it when the computer is awake.
The floppy support 'should' work, but my floppy drive isn't with me right now. There's one parameter -- auto_eject. If you set it to 1, the driver automatically shuts down and unregisters the IDE interface upon getting a request for ejection. If your laptop doesn't have a mechanism for that, "MSTR eject" > /proc/acpi/lths will shut down and software-eject your drive, enabling you to safely pull it out and insert another. Check out the scripts in config/ as they're made to work with acpid to handle the ejection and umounting and insertion. The mount/umount tasks only matter for a drive caddy.
Furthermore, this module fixes that irritating problem on my T22, where if I don't have an ultrabay battery in at boot, I can never see its status. In this latest release, there's support for the Fujitsu S7020 and possibly other laptops using a PATA 'bay' with an SATA main disk. Overall, Laptop-Hotswap kernel module makes it easy to swap disks while ensuring your laptop runs smoothly.
Version 0.3.6: N/A