Re: Is BIO_RW_FAILFAST really usable?

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Neil Brown <neilb@...>
Cc: <linux-kernel@...>, Jens Axboe <jens.axboe@...>, IDE/ATA development list <linux-ide@...>
Date: Monday, December 3, 2007 - 11:51 pm

Neil Brown wrote:

It's a hard thing to implement, in general, for scalability reasons.

To make it work, you need to examine each driver's error handling to 
figure out what "fail fast" really means.

Most storage drivers are written to try as hard as possible to complete 
a request, where "try as hard as possible" can often mean internal 
retries while trying various multi-path configurations and hardware mode 
changes.  You might be catching SATA in the middle of error handling, 
for example.

So each driver really has a /slight different/ version of "try to 
complete this request", which has the obvious effects on BIO_RW_FAILFAST.

No clue about DASD, but in SATA's case I bet that a media or transfer 
error could be returned to the system more rapidly, while we continue to 
try to recover in the background.  libata doesn't have any direct 
knowledge of fail-fast at this point, IIRC.

But overall it's a job where you must examine each driver, or set of 
drivers :/

	Jeff


--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Is BIO_RW_FAILFAST really usable?, Neil Brown, (Mon Dec 3, 10:46 pm)
Re: Is BIO_RW_FAILFAST really usable?, Jens Axboe, (Tue Dec 4, 5:13 am)
Re: Is BIO_RW_FAILFAST really usable?, Jeff Garzik, (Mon Dec 3, 11:51 pm)