linux/fs/btrfs
Chris Mason f7c79f30cb Btrfs: adjust the write_lock_level as we unlock
btrfs_search_slot sometimes needs write locks on high levels of
the tree.  It remembers the highest level that needs a write lock
and will use that for all future searches through the tree in a given
call.

But, very often we'll just cow the top level or the level below and we
won't really need write locks on the root again after that.  This patch
changes things to adjust the write lock requirement as it unlocks
levels.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
2012-03-26 17:04:24 -04:00
..
acl.c
async-thread.c Merge branch 'pm-sleep' into pm-for-linus 2011-12-25 23:42:20 +01:00
async-thread.h Btrfs: fix num_workers_starting bug and other bugs in async thread 2011-12-15 11:04:21 -05:00
backref.c btrfs: fix locking issues in find_parent_nodes() 2012-03-03 07:41:15 -05:00
backref.h Btrfs: added btrfs_find_all_roots() 2012-01-04 16:26:38 +01:00
btrfs_inode.h Btrfs: add a delalloc mutex to inodes for delalloc reservations 2012-01-16 15:29:43 -05:00
check-integrity.c Btrfs: fix compiler warnings on 32 bit systems 2012-02-24 10:39:05 -05:00
check-integrity.h Btrfs: add optional integrity check code 2011-12-21 19:14:09 +01:00
compat.h
compression.c Btrfs: check return value of lookup_extent_mapping() correctly 2012-02-16 17:23:17 +01:00
compression.h
ctree.c Btrfs: adjust the write_lock_level as we unlock 2012-03-26 17:04:24 -04:00
ctree.h Btrfs: add the ability to cache a pointer into the eb 2012-03-26 17:04:23 -04:00
delayed-inode.c Btrfs: space leak tracepoints 2012-01-16 15:29:43 -05:00
delayed-inode.h
delayed-ref.c Btrfs: add waitqueue instead of doing busy waiting for more delayed refs 2012-01-04 16:12:48 +01:00
delayed-ref.h Btrfs: add waitqueue instead of doing busy waiting for more delayed refs 2012-01-04 16:12:48 +01:00
dir-item.c
disk-io.c Btrfs: ensure an entire eb is written at once 2012-03-26 17:04:23 -04:00
disk-io.h btrfs: take allocation of ->tree_root into open_ctree() 2012-01-08 19:37:02 -05:00
export.c btrfs: let ->s_fs_info point to fs_info, not root... 2012-01-08 19:35:37 -05:00
export.h
extent-tree.c Btrfs: introduce free_extent_buffer_stale 2012-03-26 16:51:08 -04:00
extent_io.c Btrfs: loop waiting on writeback 2012-03-26 17:04:23 -04:00
extent_io.h Btrfs: ensure an entire eb is written at once 2012-03-26 17:04:23 -04:00
extent_map.c
extent_map.h btrfs: fix structs where bitfields and spinlock/atomic share 8B word 2012-02-15 16:40:25 +01:00
file-item.c
file.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs 2012-02-24 09:02:53 -08:00
free-space-cache.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs 2012-02-24 09:02:53 -08:00
free-space-cache.h
hash.h
inode-item.c Btrfs: allow metadata blocks larger than the page size 2012-03-26 16:50:37 -04:00
inode-map.c Btrfs: fix compiler warnings on 32 bit systems 2012-02-24 10:39:05 -05:00
inode-map.h
inode.c Btrfs: ensure an entire eb is written at once 2012-03-26 17:04:23 -04:00
ioctl.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs 2012-02-24 09:02:53 -08:00
ioctl.h Btrfs: add balance progress reporting 2012-01-16 22:04:49 +02:00
Kconfig Btrfs: add config option to enable btrfs integrity check 2011-12-21 19:14:16 +01:00
locking.c Btrfs: add nested locking mode for paths 2012-01-04 16:12:29 +01:00
locking.h
lzo.c
Makefile Merge branch 'integrity-check-patch-v2' of git://btrfs.giantdisaster.de/git/btrfs into integration 2012-01-16 15:27:58 -05:00
ordered-data.c
ordered-data.h
orphan.c
print-tree.c
print-tree.h
reada.c Btrfs: fix casting error in scrub reada code 2012-03-03 07:42:35 -05:00
relocation.c Btrfs: add a delalloc mutex to inodes for delalloc reservations 2012-01-16 15:29:43 -05:00
root-tree.c
scrub.c btrfs: don't check DUP chunks twice 2012-02-15 16:40:24 +01:00
struct-funcs.c Btrfs: add the ability to cache a pointer into the eb 2012-03-26 17:04:23 -04:00
super.c Merge branch 'btrfs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2012-01-17 15:52:51 -08:00
sysfs.c
transaction.c Btrfs: fix compiler warnings on 32 bit systems 2012-02-24 10:39:05 -05:00
transaction.h
tree-defrag.c
tree-log.c btrfs: Fix busyloops in transaction waiting code 2012-01-26 15:01:11 -05:00
tree-log.h
ulist.c Btrfs: generic data structure to build unique lists 2011-12-22 16:22:24 +01:00
ulist.h Btrfs: generic data structure to build unique lists 2011-12-22 16:22:24 +01:00
version.h
volumes.c Btrfs: allow metadata blocks larger than the page size 2012-03-26 16:50:37 -04:00
volumes.h Merge branch 'for-chris' of git://repo.or.cz/linux-btrfs-devel into integration 2012-01-16 15:26:17 -05:00
xattr.c Btrfs: do not use btrfs_end_transaction_throttle everywhere 2012-01-16 15:28:54 -05:00
xattr.h
zlib.c