Re: 2.7 (future kernel) wish

From: Jim Crilly
Date: Tue Dec 30 2003 - 19:20:09 EST


Helge Hafting wrote:
On Sat, Dec 27, 2003 at 10:03:17PM -0500, Jim Crilly wrote:

Sometimes Windows 2k or XP dump (BSOD), or maybe you just get an error.




Generally it just complains that you pulled out the device prematurely,


Depends on what the device is used for, I guess.

Of course different things may happen depending on what's using the device, but IME I've never seen the OS give a STOP error from that.



I've never seen one give a STOP error from that but I guess a bad driver or USB controller could cause anything.


Well, try having a partially loaded system dll on removable
media when you pull the plug - it won't be pretty.

If you go through all the work to get Windows to use a system file from removable device then pull it out while using it, you deserve what you get. The only thing you could do is page in the entire system file if you notice it's on a removable device then put a copy in swap for the case that someone pulls it out, but I don't think the special case would be worth it on Windows or Linux. Not that I have any proof Windows doesn't attempt to do that already =)



When you insert a device like a USB stick Windows puts a little icon next to the clock in the system tray that you're supposed to use to stop the device before pulling it, effectively it unmounts and stops (or atleast releases the device from) the driver so the device can be 'safely' removed. I also believe Windows mounts any removable device synchronously so that if you do pull it out prematurely the damage done is limited.


Linux has sync mounts too. :-) the rest is a gui thing, i.e. not kernel.

I know, but I felt like mentioning the rest because it's relevant to a number of people on the list.


Helge Hafting

Jim.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/