From: Josef Bacik Date: Wed, 10 Sep 2014 20:20:45 +0000 (-0400) Subject: Btrfs: make fiemap not blow when you have lots of snapshots X-Git-Tag: fixes-against-v3.18-rc2~120^2~58 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dc046b10c8b7d4f40befe457acb82340bf8b0699;p=pandora-kernel.git Btrfs: make fiemap not blow when you have lots of snapshots We have been iterating all references for each extent we have in a file when we do fiemap to see if it is shared. This is fine when you have a few clones or a few snapshots, but when you have 5k snapshots suddenly fiemap just sits there and stares at you. So add btrfs_check_shared which will use the backref walking code but will short circuit as soon as it finds a root or inode that doesn't match the one we currently have. This makes fiemap on my testbox go from looking at me blankly for a day to spitting out actual output in a reasonable amount of time. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Chris Mason --- Reading git-diff-tree failed