[PATCH] _test_generic_punch: Extend $testfile's size to work with 64k block.

2013-08-08 Thread chandan
From cf6e1fc3a8d7806a97055b5f483cf50f58c8294f Mon Sep 17 00:00:00 2001 From: chandan chan...@linux.vnet.ibm.com Date: Thu, 8 Aug 2013 11:33:10 +0530 Subject: [PATCH] _test_generic_punch: Extend $testfile's size to work with 64k block. The current script does not work with 64k block size. This

Re: [PATCH] Btrfs: stop using GFP_ATOMIC when allocating rewind ebs

2013-08-08 Thread Jan Schmidt
On Wed, August 07, 2013 at 23:11 (+0200), Josef Bacik wrote: There is no reason we can't just set the path to blocking and then do normal GFP_NOFS allocations for these extent buffers. Thanks, Signed-off-by: Josef Bacik jba...@fusionio.com --- fs/btrfs/ctree.c | 16

Re: [PATCH 6/7] btrfs: cleanup: removed unused 'btrfs_reada_detach'

2013-08-08 Thread Arne Jansen
On 07.08.2013 23:43, Sergei Trofimovich wrote: From: Sergei Trofimovich sly...@gentoo.org Found by uselex.rb: btrfs_reada_detach: [R]: exported from: fs/btrfs/btrfs.o fs/btrfs/built-in.o fs/btrfs/reada.o even though the function is currently unused, I'm hesitating to remove it as it's part

Re: [PATCH] Btrfs: deal with enomem in the rewind path V3

2013-08-08 Thread Jan Schmidt
On Wed, August 07, 2013 at 23:03 (+0200), Josef Bacik wrote: We can get ENOMEM trying to allocate dummy bufs for the rewind operation of the tree mod log. Instead of BUG_ON()'ing in this case pass up ENOMEM. I looked back through the callers and I'm pretty sure I got everybody who did

Re: [PATCH] Btrfs: pass gfp_t to __add_prelim_ref() to avoid always using GFP_ATOMIC

2013-08-08 Thread Jan Schmidt
On Tue, August 06, 2013 at 04:29 (+0200), Wang Shilong wrote: Currently, only add_delayed_refs have to allocate with GFP_ATOMIC, So just pass arg 'gfp_t' to decide which allocation mode. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com Reviewed-by: Miao Xie mi...@cn.fujitsu.com ---

[PATCH 0/2 v2] introduce btrfs filesystem show --kernel

2013-08-08 Thread Anand Jain
This patch set introduces --kernel option for filesystem show for the reason as mentioned in the patch 1/2 below 1/1 is the preparatory patch Anand Jain (2): btrfs-progs: move out print in cmd_df to another function btrfs-progs: introduce btrfs filesystem show --kernel cmds-filesystem.c |

[PATCH 1/2] btrfs-progs: move out print in cmd_df to another function

2013-08-08 Thread Anand Jain
This is a prepatory work for the following btrfs fi show command fixes. So that we have a function get_df to get the fs sizes v2: combined the other patches as below and rebase btrfs-progs: get string for the group profile and type Signed-off-by: Anand Jain anand.j...@oracle.com ---

[PATCH 2/2] btrfs-progs: introduce btrfs filesystem show --kernel

2013-08-08 Thread Anand Jain
As of now btrfs filesystem show reads directly from disks. So sometimes output can be stale, mainly when user want to verify their last operation like, labeling or device delete or add... etc. This patch adds --kernel option to the 'filesystem show' subcli, which will read from the kernel instead

[PATCH 1/2] btrfs-progs: btrfs_scan_one_dir not to skip links when /dev/mapper is provided

2013-08-08 Thread Anand Jain
This is preparatory work to introduce /dev/mapper path usage we need btrfs_scan_one_dir to san devs under /dev/mapper, but /dev/mapper has links to the actual devs and current implementation of btrfs_scan_one_dir skips links so it does not pick any dev under /dev/mapper. skip the links are fine

[PATCH 0/2] scan /dev/mapper in filesystem show and device scan

2013-08-08 Thread Anand Jain
This patch brings the /dev/mapper to be used as the path for the btrfs kernel through dev scan 1/2 is the preparatory patch Anand Jain (2): btrfs-progs: btrfs_scan_one_dir not to skip links when /dev/mapper is provided btrfs-progs: scan /dev/mapper in filesystem show and device scan

[PATCH 2/2] btrfs-progs: scan /dev/mapper in filesystem show and device scan

2013-08-08 Thread Anand Jain
Currently, btrsf fi show and btrfs dev scan uses /proc/partitions (by default) (which gives priority to dm-x over sdy paths) and with --all-devices it will scan /dev only (where it skips links under /dev/mapper). However using /dev/mapper paths are in common practice with mount, fstab, and lvm,

Re: [PATCH 0/2] scan /dev/mapper in filesystem show and device scan

2013-08-08 Thread anand jain
Oh., I missed the libblkid part of David recommendation. I will be rewriting this patch set. sorry about that. Thanks, Anand On 08/08/2013 16:09, Anand Jain wrote: This patch brings the /dev/mapper to be used as the path for the btrfs kernel through dev scan 1/2 is the preparatory patch

[PATCH v3 2/2] xfstests btrfs/316: test send / receive

2013-08-08 Thread Jan Schmidt
Basic send / receive functionality test for btrfs. Requires current version of fsstress built (-x support). Relies on fssum tool but can skip the test if it failed to build. Signed-off-by: Jan Schmidt list@jan-o-sch.net Reviewed-by: Josef Bacik jba...@fusionio.com --- tests/btrfs/316 |

[PATCH v3 1/2] xfstests: add fssum tool

2013-08-08 Thread Jan Schmidt
fssum is a tool to build a recursive checksum for a file system. The home repository of fssum is git://git.kernel.org/pub/scm/linux/kernel/git/arne/far-progs.git It is added as an optional target, because it depends on glibc = 2.15 for SEEK_HOLE / SEEK_DATA. The test to be added using fssum

[PATCH v3 0/2] xfstest btrfs/316: test send / receive

2013-08-08 Thread Jan Schmidt
These two patches add the announced tests for btrfs send / receive. As requested, the fssum tool is now included. One drawback is that I'm unable to edit configure.ac or whatever needs to be modified in an autotools preferred way. Any hints appreciated, preferrably hints containing all the

[RFC PATCH v6 1/5] Btrfs: skip merge part for delayed data refs

2013-08-08 Thread Liu Bo
When we have data deduplication on, we'll hang on the merge part because it needs to verify every queued delayed data refs related to this disk offset but we may have millions refs. And in the case of delayed data refs, we don't usually have too much data refs to merge. So it's safe to shut it

[RFC PATCH v6 3/5] Btrfs: introduce a head ref rbtree

2013-08-08 Thread Liu Bo
The way how we process delayed refs is 1) get a bunch of head refs, 2) pick up one head ref, 3) go one node back for any delayed ref updates. The head ref is also linked in the same rbtree as the delayed ref is, so in 1) stage, we have to walk one by one including not only head refs, but delayed

[RFC PATCH v6 0/5] Online data deduplication

2013-08-08 Thread Liu Bo
Data deduplication is a specialized data compression technique for eliminating duplicate copies of repeating data.[1] This patch set is also related to Content based storage in project ideas[2]. PATCH 1 is a hang fix with deduplication on, but it's also useful without dedup in practice use.

[RFC PATCH v6 4/5] Btrfs: disable qgroups accounting when quata_enable is 0

2013-08-08 Thread Liu Bo
It's unnecessary to do qgroups accounting without enabling quota. Signed-off-by: Liu Bo bo.li@oracle.com --- v6: * don't record seq for qgroups with quota disabled as we do not need to, and keep the checker of qgroups. fs/btrfs/ctree.c |2 +- fs/btrfs/delayed-ref.c | 18

[PATCH v2] Btrfs-progs: add dedup subcommand

2013-08-08 Thread Liu Bo
This aims to add deduplication subcommand, 'btrfs dedup command path', ie. register/unregister'. It can be used to enable or disable dedup support for a filesystem. Signed-off-by: Liu Bo bo.li@oracle.com --- v2: add manpage Makefile |2 +- btrfs.c|1 + cmds-dedup.c

[RFC PATCH v6 2/5] Btrfs: improve the delayed refs process in rm case

2013-08-08 Thread Liu Bo
While removing a file with dedup extents, we could have a great number of delayed refs pending to process, and these refs refer to droping a ref of the extent, which is of BTRFS_DROP_DELAYED_REF type. But in order to prevent an extent's ref count from going down to zero when there still are

Re: [PATCH 2/3] Btrfs: catch error return value from find_extent_in_eb()

2013-08-08 Thread Filipe David Manana
On Thu, Aug 8, 2013 at 6:04 AM, Wang Shilong wangsl.f...@cn.fujitsu.com wrote: find_extent_in_eb() may return ENOMEM, catch this error return value. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com Reviewed-by: Miao Xie mi...@cn.fujitsu.com --- fs/btrfs/backref.c | 4 1 file

[PATCH] Btrfs-progs: fix a regression in mkfs.btrfs

2013-08-08 Thread Stefan Behrens
Commit 55061a98 adds a cut paste error that makes mkfs.btrfs fail if leafsize != sectorsize. Signed-off-by: Stefan Behrens sbehr...@giantdisaster.de --- utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils.c b/utils.c index 15b991f..691b075 100644 --- a/utils.c +++

Re: [PATCH 4/5] Btrfs-progs: return error on write failure in make_btrfs()

2013-08-08 Thread Stefan Behrens
On Thu, 4 Jul 2013 10:48:39 +0100, Filipe David Borba Manana wrote: Instead of aborting with a BUG_ON() statement, return a negated errno code. Also updated mkfs and convert tools to print a nicer error message when make_btrfs() returns an error. Signed-off-by: Filipe David Borba Manana

Re: [PATCH] Btrfs-progs: fix a regression in mkfs.btrfs

2013-08-08 Thread Filipe David Manana
On Thu, Aug 8, 2013 at 11:51 AM, Stefan Behrens sbehr...@giantdisaster.de wrote: Commit 55061a98 adds a cut paste error that makes mkfs.btrfs fail if leafsize != sectorsize. Signed-off-by: Stefan Behrens sbehr...@giantdisaster.de --- utils.c | 2 +- 1 file changed, 1 insertion(+), 1

Re: [PATCH 4/5] Btrfs-progs: return error on write failure in make_btrfs()

2013-08-08 Thread Filipe David Manana
On Thu, Aug 8, 2013 at 11:52 AM, Stefan Behrens sbehr...@giantdisaster.de wrote: On Thu, 4 Jul 2013 10:48:39 +0100, Filipe David Borba Manana wrote: Instead of aborting with a BUG_ON() statement, return a negated errno code. Also updated mkfs and convert tools to print a nicer error message

Re: btrfs-progs: drop weird indirections dead code from send/receive

2013-08-08 Thread Stefan Behrens
On Fri, 02 Aug 2013 20:24:55 -0500, Eric Sandeen wrote: cmds-recieve.c cmds-send.c seem to have weird wrappers and indirections, and groups of commands which have only one member, which are never referenced in the code. I think these can be removed. Signed-off-by: Eric Sandeen

Re: [PATCH 2/3] Btrfs: catch error return value from find_extent_in_eb()

2013-08-08 Thread Jan Schmidt
On Thu, August 08, 2013 at 12:24 (+0200), Filipe David Manana wrote: On Thu, Aug 8, 2013 at 6:04 AM, Wang Shilong wangsl.f...@cn.fujitsu.com wrote: find_extent_in_eb() may return ENOMEM, catch this error return value. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com Reviewed-by:

Re: [PATCH 1/3] Btrfs: fix possible memory leak in find_parent_nodes()

2013-08-08 Thread Wang Shilong
On 08/08/2013 07:02 PM, Jan Schmidt wrote: On Thu, August 08, 2013 at 07:04 (+0200), Wang Shilong wrote: Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com Reviewed-by: Miao Xie mi...@cn.fujitsu.com --- fs/btrfs/backref.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff

Re: [PATCH 2/3] Btrfs: catch error return value from find_extent_in_eb()

2013-08-08 Thread Wang Shilong
On 08/08/2013 06:24 PM, Filipe David Manana wrote: On Thu, Aug 8, 2013 at 6:04 AM, Wang Shilong wangsl.f...@cn.fujitsu.com wrote: find_extent_in_eb() may return ENOMEM, catch this error return value. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com Reviewed-by: Miao Xie

Re: [PATCH 3/3] Btrfs: allocate prelim_ref with a slab allocater

2013-08-08 Thread Jan Schmidt
On Thu, August 08, 2013 at 07:04 (+0200), Wang Shilong wrote: struct __prelim_ref is allocated and freed frequently when walking backref tree, using slab allocater can not only speed up allocating but also detect memory leaks. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com

Re: [PATCH 3/3] Btrfs: allocate prelim_ref with a slab allocater

2013-08-08 Thread Wang Shilong
On Thu, August 08, 2013 at 07:04 (+0200), Wang Shilong wrote: struct __prelim_ref is allocated and freed frequently when walking backref tree, using slab allocater can not only speed up allocating but also detect memory leaks. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com

Re: [PATCH][RESEND] vfs: allow /proc/PID/maps to get device from stat

2013-08-08 Thread Christoph Hellwig
On Wed, Aug 07, 2013 at 04:51:46PM -0400, Josef Bacik wrote: Not possible, this will break other things as subvolumes have their own inode space, it will confuse applications that get multiples of an inode number for different devices with the same st_dev. Each subvolume has it's own anonymous

Re: [PATCH][RESEND] vfs: allow /proc/PID/maps to get device from stat

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 05:13:49AM -0700, Christoph Hellwig wrote: On Wed, Aug 07, 2013 at 04:51:46PM -0400, Josef Bacik wrote: Not possible, this will break other things as subvolumes have their own inode space, it will confuse applications that get multiples of an inode number for

Re: [PATCH] Btrfs: deal with enomem in the rewind path V3

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 09:36:52AM +0200, Jan Schmidt wrote: On Wed, August 07, 2013 at 23:03 (+0200), Josef Bacik wrote: We can get ENOMEM trying to allocate dummy bufs for the rewind operation of the tree mod log. Instead of BUG_ON()'ing in this case pass up ENOMEM. I looked back

Re: [PATCH] Btrfs: stop using GFP_ATOMIC when allocating rewind ebs

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 09:23:06AM +0200, Jan Schmidt wrote: On Wed, August 07, 2013 at 23:11 (+0200), Josef Bacik wrote: There is no reason we can't just set the path to blocking and then do normal GFP_NOFS allocations for these extent buffers. Thanks, Signed-off-by: Josef Bacik

Re: [PATCH] Btrfs: stop using GFP_ATOMIC when allocating rewind ebs

2013-08-08 Thread Jan Schmidt
On Thu, August 08, 2013 at 15:12 (+0200), Josef Bacik wrote: On Thu, Aug 08, 2013 at 09:23:06AM +0200, Jan Schmidt wrote: On Wed, August 07, 2013 at 23:11 (+0200), Josef Bacik wrote: There is no reason we can't just set the path to blocking and then do normal GFP_NOFS allocations for these

Re: [PATCH 1/3] Btrfs: fix oops when writing dirty qgroups to disk

2013-08-08 Thread Josef Bacik
On Wed, Aug 07, 2013 at 01:12:29PM +0800, Wang Shilong wrote: When disabling quota, we should clear out list 'dirty_qgroups',otherwise, we will get oops if enabling quota again. Fix this by abstracting similar code from del_qgroup_rb(). Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com

Re: [PATCH 6/7] btrfs: cleanup: removed unused 'btrfs_reada_detach'

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 09:33:14AM +0200, Arne Jansen wrote: On 07.08.2013 23:43, Sergei Trofimovich wrote: From: Sergei Trofimovich sly...@gentoo.org Found by uselex.rb: btrfs_reada_detach: [R]: exported from: fs/btrfs/btrfs.o fs/btrfs/built-in.o fs/btrfs/reada.o even though the

Re: [PATCH 4/7] btrfs: cleanup: removed unused 'btrfs_start_transaction_lflush'

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 12:43:20AM +0300, Sergei Trofimovich wrote: From: Sergei Trofimovich sly...@gentoo.org Found by uselex.rb: btrfs_start_transaction_lflush: [R]: exported from: fs/btrfs/btrfs.o fs/btrfs/transaction.o fs/btrfs/built-in.o

Re: [PATCH 3/7] btrfs: cleanup: mark 'btrfs_write_and_wait_marked_extents' as static

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 12:43:19AM +0300, Sergei Trofimovich wrote: From: Sergei Trofimovich sly...@gentoo.org Found by uselex.rb: btrfs_write_and_wait_marked_extents: [R]: exported from: fs/btrfs/btrfs.o fs/btrfs/transaction.o fs/btrfs/built-in.o Signed-off-by: Sergei Trofimovich

Re: [PATCH][RESEND] vfs: allow /proc/PID/maps to get device from stat

2013-08-08 Thread Christoph Hellwig
On Thu, Aug 08, 2013 at 09:02:07AM -0400, Josef Bacik wrote: This won't work, try having 1 subvolumes with dirty inodes and do sync then go skiing, you'll have time :). Thanks, Why would the dirty inodes make any difference? If you share the bdi between the subvolumes the sync workflow

Re: [PATCH 7/7] btrfs: cleanup: removed unused 'btrfs_get_inode_ref_index'

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 12:43:23AM +0300, Sergei Trofimovich wrote: From: Sergei Trofimovich sly...@gentoo.org Found by uselex.rb: btrfs_get_inode_ref_index: [R]: exported from: fs/btrfs/inode-item.o fs/btrfs/btrfs.o fs/btrfs/built-in.o Signed-off-by: Sergei Trofimovich

Re: [PATCH 3/3] Btrfs: allocate prelim_ref with a slab allocater

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 01:04:19PM +0800, Wang Shilong wrote: struct __prelim_ref is allocated and freed frequently when walking backref tree, using slab allocater can not only speed up allocating but also detect memory leaks. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com

Re: [PATCH] Btrfs: deal with enomem in the rewind path V3

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 09:36:52AM +0200, Jan Schmidt wrote: Weird patch formatting concerning extent_io.c, I assume there are no changes in extent_buffer_under_io and btrfs_release_extent_buffer_page, you just moved btrfs_clone_extent_buffer, right? Perhaps --patience or --minimal could do

Re: [PATCH] Btrfs: deal with enomem in the rewind path V3

2013-08-08 Thread Jan Schmidt
On Thu, August 08, 2013 at 16:28 (+0200), David Sterba wrote: On Thu, Aug 08, 2013 at 09:36:52AM +0200, Jan Schmidt wrote: Weird patch formatting concerning extent_io.c, I assume there are no changes in extent_buffer_under_io and btrfs_release_extent_buffer_page, you just moved

Re: [PATCH][RESEND] vfs: allow /proc/PID/maps to get device from stat

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 06:48:05AM -0700, Christoph Hellwig wrote: On Thu, Aug 08, 2013 at 09:02:07AM -0400, Josef Bacik wrote: This won't work, try having 1 subvolumes with dirty inodes and do sync then go skiing, you'll have time :). Thanks, Why would the dirty inodes make any

Re: [PATCH][RESEND] vfs: allow /proc/PID/maps to get device from stat

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 06:48:05AM -0700, Christoph Hellwig wrote: On Thu, Aug 08, 2013 at 09:02:07AM -0400, Josef Bacik wrote: This won't work, try having 1 subvolumes with dirty inodes and do sync then go skiing, you'll have time :). Thanks, Why would the dirty inodes make any

Re: [PATCH 0/4] btrfs: out-of-band (aka offline) dedupe v4

2013-08-08 Thread David Sterba
On Tue, Aug 06, 2013 at 11:42:47AM -0700, Mark Fasheh wrote: The following series of patches implements in btrfs an ioctl to do out-of-band deduplication of file extents. Reviewed-by: David Sterba dste...@suse.cz -- To unsubscribe from this list: send the line unsubscribe linux-btrfs in the

Why does btrfs benchmark so badly in this case?

2013-08-08 Thread John Williams
Phoronix periodically runs benchmarks on filesystems, and one thing I have noticed is that btrfs always does terribly on their fio Intel IOMeter fileserver access pattern benchmark: http://www.phoronix.com/scan.php?page=articleitem=linux_310_10fsnum=2 Here, btrfs is more than 6 times slower than

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 09:13:04AM -0700, John Williams wrote: Phoronix periodically runs benchmarks on filesystems, and one thing I have noticed is that btrfs always does terribly on their fio Intel IOMeter fileserver access pattern benchmark:

Re: [PATCH v3 0/2] xfstest btrfs/316: test send / receive

2013-08-08 Thread Eric Sandeen
On 8/8/13 3:17 AM, Jan Schmidt wrote: These two patches add the announced tests for btrfs send / receive. As requested, the fssum tool is now included. One drawback is that I'm unable to edit configure.ac or whatever needs to be modified in an autotools preferred way. Any hints appreciated,

Re: [PATCH v3 1/2] xfstests: add fssum tool

2013-08-08 Thread Eric Sandeen
On 8/8/13 3:17 AM, Jan Schmidt wrote: fssum is a tool to build a recursive checksum for a file system. The home repository of fssum is git://git.kernel.org/pub/scm/linux/kernel/git/arne/far-progs.git It is added as an optional target, because it depends on glibc = 2.15 for SEEK_HOLE /

Re: [PATCH v3 2/2] xfstests btrfs/316: test send / receive

2013-08-08 Thread Eric Sandeen
On 8/8/13 3:17 AM, Jan Schmidt wrote: Basic send / receive functionality test for btrfs. Requires current version of fsstress built (-x support). Relies on fssum tool but can skip the test if it failed to build. Signed-off-by: Jan Schmidt list@jan-o-sch.net Reviewed-by: Josef Bacik

Re: [PATCH 6/7] btrfs: cleanup: removed unused 'btrfs_reada_detach'

2013-08-08 Thread Zach Brown
even though the function is currently unused, I'm hesitating to remove it as it's part of the reada-API and might be handy for anyone going to use the API in the future. I agree. As replied here, http://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg24047.html please keep the

Re: [PATCH 2/2] btrfs-progs: introduce btrfs filesystem show --kernel

2013-08-08 Thread Zach Brown
On Thu, Aug 08, 2013 at 04:07:07PM +0800, Anand Jain wrote: As of now btrfs filesystem show reads directly from disks. So sometimes output can be stale, mainly when user want to verify their last operation like, labeling or device delete or add... etc. This patch adds --kernel option to the

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread Clemens Eisserer
What is going on here? Why is btrfs doing so poorly? Funny thing, I was thinking exactly the same when reading the article ;) Regards -- To unsubscribe from this list: send the line unsubscribe linux-btrfs in the body of a message to majord...@vger.kernel.org More majordomo info at

Re: [PATCH 6/7] btrfs: cleanup: removed unused 'btrfs_reada_detach'

2013-08-08 Thread Arne Jansen
On 08/08/13 19:46, Zach Brown wrote: even though the function is currently unused, I'm hesitating to remove it as it's part of the reada-API and might be handy for anyone going to use the API in the future. I agree. As replied here,

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 09:13:04AM -0700, John Williams wrote: Phoronix periodically runs benchmarks on filesystems, and one thing I have noticed is that btrfs always does terribly on their fio Intel IOMeter fileserver access pattern benchmark:

[PATCH] Btrfs: fix race between removing a dev and writing sbs

2013-08-08 Thread Filipe David Borba Manana
Since all code paths that update the number of devices in the super copy (fs_info-super_copy) first lock the device list (fs_info-fs_devices-device_list_mutex), and write_all_supers() also needs to lock the devices list mutex, make write_all_supers() read the number of devices from the super copy

Re: btrfs zero divide

2013-08-08 Thread Thorsten Glaser
tl;dr: we got the faulty code pinned down, it's m68k specific, except the m68k specific part didn’t change from 3.2… Joe Perches dixit: Something like this maybe. (uncompiled/untested) I tried this: --- div64.h.orig2013-08-08 19:34:32.663540965 + +++ - 2013-08-08

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread John Williams
On Thu, Aug 8, 2013 at 12:40 PM, Josef Bacik jba...@fusionio.com wrote: On Thu, Aug 08, 2013 at 09:13:04AM -0700, John Williams wrote: Phoronix periodically runs benchmarks on filesystems, and one thing I have noticed is that btrfs always does terribly on their fio Intel IOMeter fileserver

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread Josef Bacik
On Thu, Aug 08, 2013 at 01:23:22PM -0700, John Williams wrote: On Thu, Aug 8, 2013 at 12:40 PM, Josef Bacik jba...@fusionio.com wrote: On Thu, Aug 08, 2013 at 09:13:04AM -0700, John Williams wrote: Phoronix periodically runs benchmarks on filesystems, and one thing I have noticed is that

Re: [XFSTESTS PATCH] btrfs: Test deduplication

2013-08-08 Thread Josef Bacik
On Thu, Jun 27, 2013 at 12:40:30AM +0200, Gabriel de Perthuis wrote: --- The matching kernel patch is here: https://github.com/g2p/linux/tree/v3.10%2Bextent-same (rebased on 3.10, fixing a small conflict) Requires the btrfs-extent-same command: -

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread Chris Murphy
On Aug 8, 2013, at 2:23 PM, John Williams jwilliams4...@gmail.com wrote: So I guess the reason that ZFS does well with that workload is that ZFS is using smaller blocks, maybe just 512B ? Likely. It uses a variable block size. I wonder how common these type of non-4K aligned workloads

Re: Why does btrfs benchmark so badly in this case?

2013-08-08 Thread Zach Brown
I also don't know if any common use fs has an optimization whereby just the modified sector(s) is overwritten, rather than all sectors making up the file system block being modified. Most of them do. The generic direct io path allows sector sized dio. The very first bit of

[PATCH] Btrfs: set default max_inline to 8KiB instead of 8MiB

2013-08-08 Thread Filipe David Borba Manana
8MiB is way too large and likely set by mistake. This is not a significant issue as in practice the max amount of data added to an inline extent is also limited by the page cache and btree leaf sizes. Signed-off-by: Filipe David Borba Manana fdman...@gmail.com --- fs/btrfs/disk-io.c |2 +-

Re: [PATCH 6/7] btrfs: cleanup: removed unused 'btrfs_reada_detach'

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 09:11:01PM +0200, Arne Jansen wrote: On 08/08/13 19:46, Zach Brown wrote: even though the function is currently unused, I'm hesitating to remove it as it's part of the reada-API and might be handy for anyone going to use the API in the future. I agree. As replied

Re: [PATCH] Btrfs: set default max_inline to 8KiB instead of 8MiB

2013-08-08 Thread David Sterba
On Thu, Aug 08, 2013 at 10:45:48PM +0100, Filipe David Borba Manana wrote: 8MiB is way too large and likely set by mistake. This is not a significant issue as in practice the max amount of data added to an inline extent is also limited by the page cache and btree leaf sizes. Signed-off-by:

Re: [PATCH RFC] Btrfs: add support for persistent mount options

2013-08-08 Thread David Sterba
On Wed, Aug 07, 2013 at 03:46:20PM +0200, Martin Steigerwald wrote: Because really, the motivation sounds like it's primarily for significant on-disk format changes controlled by mount options. I understand that motivation more than being able to persist something like noatime. For a

Re: [v2 2/8] Btrfs-progs: add missing man information for btrfs-debug-tree

2013-08-08 Thread David Sterba
Thanks for updating the license. One comment that's applicable to all patches: On Wed, Aug 07, 2013 at 01:54:03PM +0800, Wang Shilong wrote: +.SH AVAILABILITY +.B btrfs-debug-tree +is part of btrfs-progs. Btrfs is currently under heavy development, +and not suitable for any uses other than

Re: [PATCH RFC] Btrfs: track compression algorithm on inodes

2013-08-08 Thread David Sterba
On Wed, Aug 07, 2013 at 12:29:44PM +0100, Filipe David Borba Manana wrote: Currently the compression settings (algorithm and force mode) need to be specified at mount time in order to have newly created files compressed. [...] I think we should take the top-down approach and start with UI how

Re: [PATCH RFC] Btrfs: add support for persistent mount options

2013-08-08 Thread David Sterba
On Wed, Aug 07, 2013 at 12:33:09PM +0100, Filipe David Manana wrote: Thanks, I missed to find that before. The implementation is very different from the one I proposed. That's one of the fundaental questions how to store the information: inside existing structures, via xattrs, under new tree

[patch v2 1/2] Btrfs: fix possible memory leak in find_parent_nodes()

2013-08-08 Thread Wang Shilong
The origin code dealt with 'ref' as following steps: |-list_del(ref-list) |-some operations |-kfree(ref) If operations failed, it would goto label 'out' without freeing this 'ref'. and then memory leak would happen.Just move list_del() after kfree() will fix the

[patch v2 2/2] Btrfs: allocate prelim_ref with a slab allocater

2013-08-08 Thread Wang Shilong
struct __prelim_ref is allocated and freed frequently when walking backref tree, using slab allocater can not only speed up allocating but also detect memory leaks. Signed-off-by: Wang Shilong wangsl.f...@cn.fujitsu.com Reviewed-by: Miao Xie mi...@cn.fujitsu.com --- V1-V2: 1.fix a

btrfs qgroup destroy - ERROR: unable to create quota group: Device or resource busy

2013-08-08 Thread Tomasz Chmielewski
I'm using qgroups and have created a few hundreds of subvolumes in the past. It seems that btrfs automatically assigns a qgroup to newly created snapshot/subvolume, but does not destroy the qgroup when the subvolume is deleted. So I've tried to destroy the unused qgroups, with mixed success. I

Re: [PATCH] Btrfs: set default max_inline to 8KiB instead of 8MiB

2013-08-08 Thread Miao Xie
On thu, 8 Aug 2013 22:45:48 +0100, Filipe David Borba Manana wrote: 8MiB is way too large and likely set by mistake. This is not a significant issue as in practice the max amount of data added to an inline extent is also limited by the page cache and btree leaf sizes. I don't think 8KB is a

Re: btrfs qgroup destroy - ERROR: unable to create quota group: Device or resource busy

2013-08-08 Thread Wang Shilong
Hello, On 08/09/2013 01:39 PM, Tomasz Chmielewski wrote: I'm using qgroups and have created a few hundreds of subvolumes in the past. It seems that btrfs automatically assigns a qgroup to newly created snapshot/subvolume, but does not destroy the qgroup when the subvolume is deleted. This