Re: [PATCH 1/1] scsi: retrieve cache mode using ATA_16 if normalroutine fails

From: James Bottomley
Date: Mon Dec 12 2011 - 07:51:13 EST


On Mon, 2011-12-12 at 16:48 +0530, Amit Sahrawat wrote:
> It has been observed that a number of USB HDD's do not respond correctly
> to SCSI mode sense command(retrieve caching pages) which results in their
> Write Cache being discarded by queue requests i.e., WCE if left set to
> '0'(disabled).
> This results in a number of Filesystem corruptions, when the device
> is unplugged abruptly.

Um, how would knowing the caching type correctly help? If you surprise
unplug the device, we can't send a flush to it anyway ...

> So, in order to identify the devices correctly - give it
> a last try using ATA_16 after failure from normal routine.
> Introduce a mechanism to store write-cache type using /sys/class/
> interface, so that the normal code continues to function without errors.
>
> Signed-off-by: Amit Sahrawat <amit.sahrawat83@xxxxxxxxx>
> Signed-off-by: Nam-Jae Jeon <namjae.jeon@xxxxxxxxxxx>

This whole patch looks like a layering violation. Why not just update
the SAT layer to translate the MODE SENSE correctly?

James


--
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/