libata: Note that our cache flush code needs fixing up
Remembered this while doing auditing and code review versus the specs Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
50a9901878
commit
4f34337b1f
|
@ -5906,6 +5906,10 @@ int ata_flush_cache(struct ata_device *dev)
|
|||
else
|
||||
cmd = ATA_CMD_FLUSH;
|
||||
|
||||
/* This is wrong. On a failed flush we get back the LBA of the lost
|
||||
sector and we should (assuming it wasn't aborted as unknown) issue
|
||||
a further flush command to continue the writeback until it
|
||||
does not error */
|
||||
err_mask = ata_do_simple_cmd(dev, cmd);
|
||||
if (err_mask) {
|
||||
ata_dev_printk(dev, KERN_ERR, "failed to flush cache\n");
|
||||
|
|
Loading…
Reference in New Issue