From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Mason Subject: Re: [ANNOUNCE] Btrfs: a copy on write, snapshotting FS Date: Fri, 15 Jun 2007 15:11:53 -0400 Message-ID: <20070615191153.GU2061@think.oraclecorp.com> References: <20070612161029.GB28279@think.oraclecorp.com> <467188F6.7020002@gmail.com> <20070614191331.GE2061@think.oraclecorp.com> <4672E3B6.1030000@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-fsdevel@vger.kernel.org To: "Florian D." Return-path: Received: from agminet01.oracle.com ([141.146.126.228]:10973 "EHLO agminet01.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752209AbXFOTPi (ORCPT ); Fri, 15 Jun 2007 15:15:38 -0400 Content-Disposition: inline In-Reply-To: <4672E3B6.1030000@gmail.com> Sender: linux-fsdevel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Fri, Jun 15, 2007 at 09:08:38PM +0200, Florian D. wrote: > Chris Mason wrote: > > > >> is it possible to test it on top of LVM2 on RAID at this stage? > > > > Yes, I haven't done much multi-spindle testing yet, so I'm definitely > > interested in these numbers. > > > > -chris > > > > > > I did not get very far: > > > # insmod btrfs.ko > # mkfs.btrfs /dev/brain_volume_group/btrfstest > on close 0 blocks are allocated > fs created on /dev/brain_volume_group/btrfstest blocksize 4096 blocks > 4980736 > > (/dev/brain_volume_group/btrfstest is a 20GB logical volume on top of > RAID6) > > # mount /dev/brain_volume_group/btrfstest /mnt/temp/ > (this gives these kernel-msgs: > [ 385.980358] btrfs: dm-6 checksum verify failed on 4 > [ 385.980462] btrfs: dm-6 checksum verify failed on 12 > [ 385.980559] btrfs: dm-6 checksum verify failed on 11 These are normal on the first mount, the mkfs doesn't set the csums on the blocks it creates (will fix ;) > ) > > # touch /mnt/temp/default/testfile.txt > [ 445.445638] btrfs: dm-6 checksum verify failed on 10 > > > # umount /mnt/temp/ > > [ 457.980372] ------------[ cut here ]------------ > [ 457.980377] kernel BUG at fs/buffer.c:2644! Whoops. Please try this: 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 15:12:26 2007 -0400 @@ -541,6 +541,7 @@ int write_ctree_super(struct btrfs_trans else ret = submit_bh(WRITE, bh); if (ret == -EOPNOTSUPP) { + lock_buffer(bh); set_buffer_uptodate(bh); root->fs_info->do_barriers = 0; ret = submit_bh(WRITE, bh);