Chris Mason wrote:
> Well, apparently I get get the silly stuff wrong an infinite number of
> times. Sorry, lets try again:
>
> diff -r 38b36aaaa731 disk-io.c
> --- a/disk-io.c Fri Jun 15 13:50:20 2007 -0400
> +++ b/disk-io.c Fri Jun 15 16:52:38 2007 -0400
> @@ -541,6 +541,8 @@ int write_ctree_super(struct btrfs_trans
> else
> ret = submit_bh(WRITE, bh);
> if (ret == -EOPNOTSUPP) {
> + get_bh(bh);
> + lock_buffer(bh);
> set_buffer_uptodate(bh);
> root->fs_info->do_barriers = 0;
> ret = submit_bh(WRITE, bh);
>
ha! it is working now. some numbers from here(with the fio-tool):
1. sequential read
2. random writes
3. sequential read again
filesize:300MB, bs:4K
btrfs reiserfs ext3
usr% sys% bw sec. usr% sys% bw sec. usr% sys% bw sec.
1 5 51 68.3 4.6 1 17 67.4 4.6 5 24 68.0 4.6
2 0 1 0.7 431 2 21 29.8 10.5 3 18 29.0 10.8
3 0 1 2.3 133 1 19 70.5 4.4 5 24 68.6 4.5
bw: MB/sec.
ext3: -o data=writeback,barrier=1
20GB LVM2 partition on a RAID6 (4 SATA-disks)
cheers,
florian
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html