RE: [linux-iscsi-devel] [question] deferred sense

Salyzyn, Mark
2005-01-05T17:47:13Z

James Bottomley sez:
> The most common case for deferred sense is using a writeback cache.
> Here the device takes the write into its cache and returns GOOD.
Later
> trying to write it to the device it gets a medium error and now tries
to
> send deferred sense saying "you remember that write I told you worked,
> well actually..." by this time, we've already acknowledged the write
to
> the block layer and any JFS will proceed on the assumption that it
> completed. There's no way we can go back in time and apply this error
> to an already completed transaction. However, the device has violated
> the journalling assumptions, and the FS will be corrupt.
>
> So does anyone have any better suggestions for handling deferred
sense?

Change the assumptions in Journalling filesystems and make it work in a
deferred sense environment.

Don't delete the Journal until a safe point of time when the writeback
is confirmed either by underlying knowledge, time (flush interval
passed), amount of data (dirty cache is forced flushed), or a read-back
(resulting from the deferred error investigation). RAID cards and
external enclosures do this all the time, but to be fair with usually
more knowledge of all the cache handling.

Sincerely -- Mark Salyzyn