linux_dsm_epyc7002/fs/btrfs
Chris Mason 2c64c53d8d Btrfs: cache values for locking extents
Many of the btrfs extent state tree users follow the same pattern.
They lock an extent range in the tree, do some operation and then
unlock.

This translates to at least 2 rbtree searches, and maybe more if they
are doing operations on the extent state tree.  A locked extent
in the tree isn't going to be merged or changed, and so we can
safely return the extent state structure as a cached handle.

This changes set_extent_bit to give back a cached handle, and also
changes both set_extent_bit and clear_extent_bit to use the cached
handle if it is available.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
2009-09-11 13:31:06 -04:00
..
acl.c Fix btrfs when ACLs are configured out 2009-06-10 11:36:43 -04:00
async-thread.c Btrfs: reduce worker thread spin_lock_irq hold times 2009-09-11 13:31:04 -04:00
async-thread.h Btrfs: keep irqs on more often in the worker threads 2009-09-11 13:31:04 -04:00
btrfs_inode.h Btrfs: implement FS_IOC_GETFLAGS/SETFLAGS/GETVERSION 2009-06-10 11:29:52 -04:00
compat.h
compression.c Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
compression.h
ctree.c Btrfs: Avoid delayed reference update looping 2009-07-24 12:42:46 -04:00
ctree.h Btrfs: preserve commit_root for async caching 2009-07-30 09:40:40 -04:00
delayed-ref.c Btrfs: Mixed back reference (FORWARD ROLLING FORMAT CHANGE) 2009-06-10 11:29:46 -04:00
delayed-ref.h Btrfs: Mixed back reference (FORWARD ROLLING FORMAT CHANGE) 2009-06-10 11:29:46 -04:00
dir-item.c
disk-io.c Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
disk-io.h
export.c Btrfs: Mixed back reference (FORWARD ROLLING FORMAT CHANGE) 2009-06-10 11:29:46 -04:00
export.h
extent_io.c Btrfs: cache values for locking extents 2009-09-11 13:31:06 -04:00
extent_io.h Btrfs: cache values for locking extents 2009-09-11 13:31:06 -04:00
extent_map.c Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
extent_map.h Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
extent-tree.c Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
file-item.c
file.c Btrfs: reduce CPU usage in the extent_state tree 2009-09-11 13:31:06 -04:00
free-space-cache.c Btrfs: fix btrfs_remove_from_free_space corner case 2009-07-31 11:03:58 -04:00
free-space-cache.h Btrfs: use hybrid extents+bitmap rb tree for free space 2009-07-24 09:23:30 -04:00
hash.h Btrfs: remove crc32c.h and use libcrc32c directly. 2009-06-10 11:29:53 -04:00
inode-item.c
inode-map.c
inode.c Btrfs: cache values for locking extents 2009-09-11 13:31:06 -04:00
ioctl.c Btrfs: fix the file clone ioctl for preallocated extents 2009-07-02 13:41:16 -04:00
ioctl.h
Kconfig
locking.c
locking.h
Makefile Btrfs: Mixed back reference (FORWARD ROLLING FORMAT CHANGE) 2009-06-10 11:29:46 -04:00
ordered-data.c
ordered-data.h
orphan.c
print-tree.c Btrfs: remove of redundant btrfs_header_level 2009-07-22 16:52:13 -04:00
print-tree.h
ref-cache.c
ref-cache.h
relocation.c Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
root-tree.c Btrfs: Mixed back reference (FORWARD ROLLING FORMAT CHANGE) 2009-06-10 11:29:46 -04:00
struct-funcs.c
super.c Btrfs: fix -o nodatasum printk spelling 2009-06-11 09:30:13 -04:00
sysfs.c
transaction.c Btrfs: be more polite in the async caching threads 2009-07-30 10:14:46 -04:00
transaction.h Btrfs: be more polite in the async caching threads 2009-07-30 10:14:46 -04:00
tree-defrag.c
tree-log.c Btrfs: change how we unpin extents 2009-07-27 13:57:01 -04:00
tree-log.h
version.h
version.sh
volumes.c Btrfs: switch extent_map to a rw lock 2009-09-11 13:31:05 -04:00
volumes.h Btrfs: avoid races between super writeout and device list updates 2009-06-10 15:17:02 -04:00
xattr.c
xattr.h
zlib.c Btrfs: correct error-handling zlib error handling 2009-08-07 13:51:33 -04:00