Darrick J. Wong wrote:
On Mon, Dec 03, 2007 at 05:09:54PM +0100, Krzysztof B??aszkowski wrote:
I noticed also another failure when i removed a drive. The event was not
notified by anything (ie the block device and corresponding sg were
registered) so i run dd on this truly "virtual" drive.
dd reached D state (as well as scsi_wq) . i think it shouldn't happen no
matter it was AIC failure or LSI expander failure.
"It's wireless!" ;)
Seriously, though, it's a good idea to tell the kernel that you're
about to unplug a disk before actually doing it:
echo 1 > /sys/block/sdX/device/delete
This way, the kernel can tell the disk to flush its caches long before
power actually gets removed. Otherwise, the device removal code can
get hung up just like you observed, and whatever's in the write cache
may or may not actually get written to the media.
What you say is quite true about write cache -- you can clearly lose
some data by hot-unplugging a device. And there's nothing we can do
about that.
But what do you mean by "device removal code can get hung up"? That
sounds like a bug we should fix.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html