Re: Linux 2.6.29

Ric Wheeler
2009-03-30T15:33:45Z

Mark Lord wrote:
> Ric Wheeler wrote:
>>
>> I am confused as to why you think that barriers (flush barriers
>> specifically) are not equivalent to drive write cache. We disable
>> barriers when the write cache is off, use them only to insure that our
>> ordering for fs transactions survives any power loss. No one should be
>> enabling barriers on linux file systems if your write cache is
>> disabled or if you have a battery backed write cache (say on an
>> enterprise class disk array).
>>
>> Chris' test of barriers (with write cache enabled) did show for
>> desktop class boxes that you would get file system corruption (i.e.,
>> need to fsck the disk) a huge percentage of the time.
> ..
>
> Sure, no doubt there. But it's due to the kernel crash,
> not due to the write cache on the drive.
>
> Anything in the drive's write cache very probably made it to the media
> within a second or two of arriving there.

A modern S-ATA drive has up to 32MB of write cache. If you lose power or suffer
a sudden reboot (that can reset the bus at least), I am pretty sure that your
above assumption is simply not true.

>
> So with or without a write cache, the same result should happen
> for those tests. Of course, if you disable barriers *and* write cache,
> then you are no longer testing the same kernel code.

Here, I still disagree. All of the test that we have done have shown that write
cache enabled/barriers off will provably result in fs corruption.

It would be great to have Chris revise his earlier barrier/corruption test to
validate your assumption (not the test that he posted recently).

>
> I'm not arguing against battery backup or UPSs,
> or *for* blindly trusting write caches without reliable power.
>
> Just pointing out that they're not the evil that some folks
> seem to believe they are.
>
> Cheers

I run with write cache and barriers enabled routinely, but would not run without
working barriers on any desktop box when the drives have write cache enabled
having spent too many hours watching fsck churn :-)

ric