Bug in btrfs-debug-tree for two or more devices.

2012-06-12 Thread Santosh Hosamani
Hi btrfs folks, I am working on btrfs filesystem on how it manages the free space. And found out btrfs maintain a ctree which manages the physical location of the chunks and stripes of the filesystem. Btrfs-debug-tree also gives the information on the chunk tree I created btrfs

Re: [PATCH 2/2] Btrfs: implement -show_devname

2012-06-12 Thread Miao Xie
On tue, 5 Jun 2012 14:16:33 -0400, Josef Bacik wrote: Because btrfs can remove the device that was mounted we need to have a -show_devname so that in this case we can print out some other device in the file system to /proc/mount. We keep track of what device we called mount() with so that we

[PATCH v2] block: Drop dead function blk_abort_queue()

2012-06-12 Thread Asias He
This function was only used by btrfs code in btrfs_abort_devices() (seems in a wrong way). It was removed in commit d07eb9117050c9ed3f78296ebcc06128b52693be, So, Let's remove the dead code to avoid any confusion. Changes in v2: update commit log, btrfs_abort_devices() was removed already. Cc:

Re: [PATCH 2/2] Btrfs: implement -show_devname

2012-06-12 Thread Josef Bacik
On Tue, Jun 12, 2012 at 03:33:09PM +0800, Miao Xie wrote: On tue, 5 Jun 2012 14:16:33 -0400, Josef Bacik wrote: Because btrfs can remove the device that was mounted we need to have a -show_devname so that in this case we can print out some other device in the file system to /proc/mount. We

Re: [PATCH] Btrfs: use rcu to protect device-name V2

2012-06-12 Thread Josef Bacik
On Mon, Jun 11, 2012 at 02:10:34PM -0700, Zach Brown wrote: -if (state-print_mask BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE) +if (state-print_mask BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE) { +struct rcu_string *name; + +rcu_read_lock();

Re: [PATCH] Btrfs: use rcu to protect device-name V2

2012-06-12 Thread Josef Bacik
On Mon, Jun 11, 2012 at 02:10:34PM -0700, Zach Brown wrote: -if (state-print_mask BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE) +if (state-print_mask BTRFSIC_PRINT_MASK_SUPERBLOCK_WRITE) { +struct rcu_string *name; + +rcu_read_lock();

[PATCH 24/27] btrfs: Convert to new freezing mechanism

2012-06-12 Thread Jan Kara
We convert btrfs_file_aio_write() to use new freeze check. We also add proper freeze protection to btrfs_page_mkwrite(). We also add freeze protection to the transaction mechanism to avoid starting transactions on frozen filesystem. At minimum this is necessary to stop iput() of unlinked file to

[PATCH 11/27] btrfs: Push mnt_want_write() outside of i_mutex

2012-06-12 Thread Jan Kara
When mnt_want_write() starts to handle freezing it will get a full lock semantics requiring proper lock ordering. So push mnt_want_write() call consistently outside of i_mutex. CC: Chris Mason chris.ma...@oracle.com CC: linux-btrfs@vger.kernel.org Signed-off-by: Jan Kara j...@suse.cz ---

Re: KVM on top of BTRFS

2012-06-12 Thread Hubert Kario
On Monday 11 of June 2012 23:53:34 Alex wrote: Matthew Hawn steamraven at yahoo.com writes: What are the recommendations for running KVM images on BTRFS systems using Install: virt-install --connect qemu:///system -n china -r 256 --disk path=/var/lib/libvirt/images/china.img,size=4 -c

Re: Moving top level to a subvolume

2012-06-12 Thread Randy Barlow
On Tuesday, June 12, 2012 01:53:23 AM Duncan wrote: We get a lot of folks on this list who somehow miss the kernel warning, and the wiki warning, and the general community knowledge, that btrfs is still marked experimental and is still under heavy development. If something goes wrong, as

Re: Bug in btrfs-debug-tree for two or more devices.

2012-06-12 Thread Randy Barlow
On Tuesday, June 12, 2012 06:53:00 AM Santosh Hosamani wrote: Kernel 3.0.13.0.27-default This kernel is very old for btrfs. Can you try with at least Linux 3.4? -- R -- To unsubscribe from this list: send the line unsubscribe linux-btrfs in the body of a message to majord...@vger.kernel.org

Re: Moving top level to a subvolume

2012-06-12 Thread Michael
The Ubuntu wiki does not(in a straight-forward way) say BTRFS is experimental and unstable. It looks like they copied and pasted from the BTRFS official Wiki. Link:  https://help.ubuntu.com/community/btrfs I do not have an account on the BTRFS wiki, but I believe changing the first paragraphs to

Re: Bug in btrfs-debug-tree for two or more devices.

2012-06-12 Thread Duncan
Santosh Hosamani posted on Tue, 12 Jun 2012 06:53:00 + as excerpted: I am working on btrfs filesystem on how it manages the free space. [...] I hav run these tests on SLES11-sp2-x86 Kernel 3.0.13.0.27-default Quick mostly boilerplate intro reply. I'm just a list regular following

Re: KVM on top of BTRFS

2012-06-12 Thread Alex
Roman Mamedov rm at romanrm.ru writes: (Machine has no other load at all) No material difference between cache types (none, writeback and writethrough) when I tried. I had been using partition based KVM which is obviously going to be much faster. Seems a little unfair on btrfs to just to look

Re: KVM on top of BTRFS

2012-06-12 Thread Alex
Hubert Kario hka at qbs.com.pl writes: From what I heard, this is caused by slow KVM CD virtualisation. Try to install it and do some tests then. You read my mind :-) -- To unsubscribe from this list: send the line unsubscribe linux-btrfs in the body of a message to

Re: Bug in btrfs-debug-tree for two or more devices.

2012-06-12 Thread Arne Jansen
On 06/12/2012 08:53 AM, Santosh Hosamani wrote: Hi btrfs folks, I am working on btrfs filesystem on how it manages the free space. And found out btrfs maintain a ctree which manages the physical location of the chunks and stripes of the filesystem. Btrfs-debug-tree also

Re: [PATCH] Btrfs: use rcu to protect device-name V2

2012-06-12 Thread Zach Brown
#define device_name_printk(dev, level, fmt, ...) do { \ struct rcu_string *name;\ \ rcu_read_lock();\ name =

Re: Massive metadata size increase after upgrade from 3.2.18 to 3.4.1

2012-06-12 Thread Calvin Walton
On Sat, 2012-06-09 at 01:38 +0600, Roman Mamedov wrote: Hello, Before the upgrade (on 3.2.18): Metadata, DUP: total=9.38GB, used=5.94GB After the FS has been mounted once with 3.4.1: Data: total=3.44TB, used=2.67TB System, DUP: total=8.00MB, used=412.00KB System: total=4.00MB,

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Goffredo Baroncelli
On 06/10/2012 08:47 AM, Goffredo Baroncelli wrote: Hi all, which is the supposed corrected way to set the file flag FS_NOCOW_FL ? I know that exists the associated ioctl FS_IOC_SETFLAGS; which I didn't found is an user-space tool to use to set the flags. I am missing something ? After a

Re: [PATCH] Btrfs: use rcu to protect device-name V2

2012-06-12 Thread Josef Bacik
On Tue, Jun 12, 2012 at 10:33:06AM -0700, Zach Brown wrote: #define device_name_printk(dev, level, fmt, ...) do {\ struct rcu_string *name;\ \ rcu_read_lock();

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Ted Ts'o
On Tue, Jun 12, 2012 at 07:41:25PM +0200, Goffredo Baroncelli wrote: After a bit of googling I found a Liu Bo patches which add the ability to set the NOCOW flags to a btrfs file.[1] However it seems that it was not present in the current (v1.42.3) e2fsprogs suite. There is any reason

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Ted Ts'o
It appears the NOCOW_FL flag is currently a no-op in the 3.2 kernel? tytso.r...@tytso-glaptop.cam.corp.google.com {/mnt} 2062# grep /mnt /proc/mounts /dev/mapper/funarg-btrfs /mnt btrfs rw,relatime,space_cache 0 0 tytso.r...@tytso-glaptop.cam.corp.google.com {/mnt} 2063# sync ; filefrag -v a

[PATCH 2/2] Btrfs: implement -show_devname V2

2012-06-12 Thread Josef Bacik
Because btrfs can remove the device that was mounted we need to have a -show_devname so that in this case we can print out some other device in the file system to /proc/mount. So if there are multiple devices in a btrfs file system we will just print the device with the lowest devid that we can

[PATCH 1/2] Btrfs: use rcu to protect device-name V2

2012-06-12 Thread Josef Bacik
Al pointed out that we can just toss out the old name on a device and add a new one arbitrarily, so anybody who uses device-name in printk could possibly use free'd memory. Instead of adding locking around all of this he suggested doing it with RCU, so I've introduced a struct rcu_string that

Re: Bug in btrfs-debug-tree for two or more devices.

2012-06-12 Thread Hugo Mills
On Tue, Jun 12, 2012 at 06:53:00AM +, Santosh Hosamani wrote: Hi btrfs folks, I am working on btrfs filesystem on how it manages the free space. And found out btrfs maintain a ctree which manages the physical location of the chunks and stripes of the filesystem.

Re: KVM on top of BTRFS

2012-06-12 Thread steamraven
Seems a little unfair on btrfs to just to look at absolutes in this context. Prior reports said that the fs ground to a halt, it isn't doing that by any stretch. I agree. What I am mostly looking for is the best setup for using KVM snapshots: KVM qcow2 on top of something like ext4 or

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Chris Mason
On Tue, Jun 12, 2012 at 01:15:27PM -0600, Ted Ts'o wrote: It appears the NOCOW_FL flag is currently a no-op in the 3.2 kernel? It's not a noop, but it is only setting the NODATACOW flag. It needs to set the nodatasum flag as well, just like the mount -o nodatacow mount option does. I'll fix

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Goffredo Baroncelli
On 06/12/2012 10:44 PM, Chris Mason wrote: On Tue, Jun 12, 2012 at 01:15:27PM -0600, Ted Ts'o wrote: It appears the NOCOW_FL flag is currently a no-op in the 3.2 kernel? It's not a noop, but it is only setting the NODATACOW flag. It needs to set the nodatasum flag as well, just like the

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Ted Ts'o
On Tue, Jun 12, 2012 at 04:44:23PM -0400, Chris Mason wrote: On Tue, Jun 12, 2012 at 01:15:27PM -0600, Ted Ts'o wrote: It appears the NOCOW_FL flag is currently a no-op in the 3.2 kernel? It's not a noop, but it is only setting the NODATACOW flag. It needs to set the nodatasum flag as

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread David Sterba
On Tue, Jun 12, 2012 at 04:44:23PM -0400, Chris Mason wrote: On Tue, Jun 12, 2012 at 01:15:27PM -0600, Ted Ts'o wrote: It appears the NOCOW_FL flag is currently a no-op in the 3.2 kernel? It's not a noop, but it is only setting the NODATACOW flag. It needs to set the nodatasum flag as

Re: Btrfs and data nocow per inode basis

2012-06-12 Thread Ted Ts'o
... and e2fsprogs 1.42.4 has been released, with the No_COW lsattr and chattr support. It's in all of the usual places: ftp://ftp.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.42.4 and http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.42.4.tar.gz ... and I've uploaded a release

Re: [PATCH 1/2] Btrfs: use rcu to protect device-name V2

2012-06-12 Thread David Sterba
On Tue, Jun 12, 2012 at 03:50:41PM -0400, Josef Bacik wrote: +++ b/fs/btrfs/check-integrity.c @@ -93,6 +93,7 @@ #include print-tree.h #include locking.h #include check-integrity.h +#include rcu-string.h #define BTRFSIC_BLOCK_HASHTABLE_SIZE 0x1 #define

Re: Moving top level to a subvolume

2012-06-12 Thread Fajar A. Nugraha
On Tue, Jun 12, 2012 at 9:52 PM, Randy Barlow ra...@electronsweatshop.com wrote: I personally run Gentoo, but I've been told by some coworkers that the Ubuntu installer offers btrfs as an option to the users without marking it as experimental, unstable, or under development. I wonder if that is

ceph-on-btrfs inline-cow regression fix for 3.4.3

2012-06-12 Thread Alexandre Oliva
Hi, Greg, There's a btrfs regression in 3.4 that's causing a lot of grief to ceph-on-btrfs users like myself. This small and nice patch cures it. It's in Linus' master already. I've been running it on top of 3.4.2, and it would be very convenient for me if this could be in 3.4.3. Although the

RE: Bug in btrfs-debug-tree for two or more devices.

2012-06-12 Thread Santosh Hosamani
-Original Message- From: Arne Jansen [mailto:sensi...@gmx.net] Sent: Tuesday, June 12, 2012 10:20 PM To: Santosh Hosamani Cc: linux-btrfs@vger.kernel.org Subject: Re: Bug in btrfs-debug-tree for two or more devices. On 06/12/2012 08:53 AM, Santosh Hosamani wrote: Hi btrfs folks,

Re: ceph-on-btrfs inline-cow regression fix for 3.4.3

2012-06-12 Thread Chris Samuel
On 13/06/12 13:46, Alexandre Oliva wrote: I know btrfs hasn't had maintenance fixes in stable series, but Chris Mason tells me the only reason is that nobody stepped up to do so. Given my interest, I might as well give it a try ;-) Actually 3.3.3 had a fix for btrfs in it.. :-)