Re: More multi-device fixes and improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 09 April 2008, Chris Mason wrote:

> Still todo: properly mirror the super blocks.  If you're testing the mirror
> code, don't overwrite anything before 20k into the drive...the super blocks
> don't get mirrored today.
>
> Also, btrfs-progs doesn't retry IO on different mirrors yet, only the
> kernel does this.  I'll tackle both problems tomorrow.

Ok, both the kernel and userland will now use duplicate copies to resolve 
checksumming errors.  They also both write out proper copies of the super 
block to every device.

One thing missing is that if a device super block is corrupted there's no way 
to force the filesystem to mount, even when there are redundant copies of 
everything.  This is easy enough to fix, I just haven't quite gotten there 
yet.

Today's push also includes minimal O_DIRECT support.  For O_DIRECT writes, it 
just does a buffered write followed by a cache flush.  O_DIRECT reads are 
done directly to the disk, skipping the checksum step.

Later releases will have real O_DIRECT support via the extent_io code, but 
this is a band-aid for benchmarking until then.  On huge IO subsystems, it 
helps to know if the lack of throughput is a layout problem or if it comes 
from pdflush doing non-optimal write out.

-chris
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux