Re: Linux kernel - Libata bad block error handling to user mode program

Mike Hayward
2010-03-04T16:50:58Z

I always take it for granted, but forgot to mention, you should also
use O_DIRECT to bypass the linux buffer cache. It often gets in the
way of error propagation since it is changing your io requests into
it's own page sized ios and will also "lie" to you about having
written your data in the first place since it's a write back cache.

The point is you have to disable all the caches everywhere or the
error information will get absorbed by the caches.

- Mike