BUG: SCSI SYNCHRONIZE_CACHE on driver unload

From: Mark Lord
Date: Thu Aug 05 2004 - 18:05:41 EST


On module removal of a SCSI Low-Level Driver (LLD),
the mid-layer tries to do a SYNCHRONIZE_CACHE
command to each device on each host of that driver.

But the command is issued *after* setting SHOST_CANCEL,
which means that scsi_dispatch_cmd() will *always*
fail the command inline, without passing to the LLD.

This bug shows up only for hosts/drives which support
a write-back caching scheme. For the more common
write-thru scheme, the SYNCHRONIZE_CACHE command is
never issued, so the bug never manifests.

Cheers
--
Mark Lord
(hdparm keeper & the original "Linux IDE Guy")
-
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/