similar to: [RFC PATCH V2] Btrfs: introduce extent buffer cache for each i-node

Displaying 20 results from an estimated 400 matches similar to: "[RFC PATCH V2] Btrfs: introduce extent buffer cache for each i-node"

2013 Aug 29
23
[PATCH] Btrfs: optimize key searches in btrfs_search_slot
When the binary search returns 0 (exact match), the target key will necessarily be at slot 0 of all nodes below the current one, so in this case the binary search is not needed because it will always return 0, and we waste time doing it, holding node locks for longer than necessary, etc. Below follow histograms with the times spent on the current approach of doing a binary search when the
2011 Jan 28
0
[PATCH] ctree code cleanups
The following has been done as a part of cleanup - o Eliminated bin_search() by replacing with btrfs_bin_search() o Eliminated unused return value in fixup_low_keys() o Eliminated additional variable (sret) in setup_nodes_for_search() Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.de> --- ctree.c | 71 ++++++++++++++++++---------------------------------------------- 1 file changed, 20
2008 Jun 24
1
[RFC][PATCH] btrfs orphan code
Hello, I want to throw this out here now that I''ve got most of the heavy lifting done for this code to make sure what I''m doing is ok for now. I''ve added an ORPHAN_DIR item key to have a hidden dir per root. Right now it just does it for whatever the default root is on mount, but I''m going to fix that to do the orphan dir check/creation on lookup of a
2010 Sep 03
0
[PATCH 1/2] btrfs: document where we use BUG_ON instead of error handling
Document those places in the btrfs code which are BUGing on non-fatal error conditions that should be handled by proper error paths. This makes it easier to distinguish between what needs fixing versus which BUG_ON''s we might want to keep (to trap code bugs, unexpected inconsistencies, etc). Do this with a trivial macro, ''btrfs_fixable_bug_on'' which just defines to
2008 Jan 07
1
[PATCH]Add rollback support for the converter
Hello, This patch adds rollback support for the converter, the converter can roll back a conversion if the image file haven't been modified. In addition, I rearrange some codes in convert.c and add a few comments. Regards YZ --- diff -r 12138d4beeb0 convert.c --- a/convert.c Fri Jan 04 11:29:55 2008 -0500 +++ b/convert.c Mon Jan 07 23:35:25 2008 +0800 @@ -33,6 +33,7 @@ #include
2008 Oct 27
0
[PATCH 3/4] update nodatacow code
Hello, This patch simplifies the nodatacow checker. If all references were created after the latest snapshot, then we can avoid COW safely. This patch also updates run_delalloc_nocow to do more fine-grained checking. Regards Signed-off-by: Yan Zheng <zheng.yan@oracle.com> --- diff -urp 3/fs/btrfs/ctree.h 4/fs/btrfs/ctree.h --- 3/fs/btrfs/ctree.h 2008-10-27 16:31:51.000000000 +0800 +++
2009 May 12
0
[PATCH 1/2] btrfs-progs: mixed back ref support
This patch adds mixed back ref support for btrfs programs. The mixed back ref is a new disk format. back compatilibity is still not implemented. To try the new disk format, you need fresh formatted btrfs. Signed-off-by: Yan Zheng <zheng.yan@oracle.com> --- diff -urp btrfs-progs-unstable/crc32c.h btrfs-progs-2/crc32c.h --- btrfs-progs-unstable/crc32c.h 2008-09-30 16:50:58.898877720 +0800
2012 Oct 01
1
[RFC] [PATCH] Btrfs: rework can_nocow_odirect
I need everybody to go over this with a fine toothed comb since it is a pretty big change. I think it is right and it seems to come out right, but if it''s not it will mean we screw up O_DIRECT on snapshotted files with preallocated extents, so please, make sure it is correct :). --- Subject: [PATCH] Btrfs: rework can_nocow_odirect We are always doing the file extent lookup in here
2013 Nov 12
0
[PATCH] Btrfs: incompatible format change to remove hole extents V4
Btrfs has always had these filler extent data items for holes in inodes. This has made somethings very easy, like logging hole punches and sending hole punches. However for large holey files these extent data items are pure overhead. So add an incompatible feature to no longer add hole extents to reduce the amount of metadata used by these sort of files. This has a few changes for logging and
2009 Nov 12
0
[PATCH 03/12] Btrfs: Rewrite btrfs_drop_extents
Rewrite btrfs_drop_extents by using btrfs_duplicate_item, so we can avoid calling lock_extent within transaction. Signed-off-by: Yan Zheng <zheng.yan@oracle.com> --- fs/btrfs/ctree.h | 7 +- fs/btrfs/file.c | 659 ++++++++++++++++++++------------------------------- fs/btrfs/inode.c | 27 +-- fs/btrfs/ioctl.c | 3 +- fs/btrfs/tree-log.c | 4 +- 5 files changed, 277
2013 May 22
0
[PATCH 1/2] Btrfs: dont do log_removal in insert_new_root
As for splitting a leaf, root is just the leaf, and tree mod log does not apply on leaf, so in this case, we don''t do log_removal. As for splitting a node, the old root is kept as a normal node and we have nicely put records in tree mod log for moving keys and items, so in this case we don''t do that either. As above, insert_new_root can get rid of log_removal. Signed-off-by:
2013 Mar 15
0
[PATCH] Btrfs-progs: add skinny metadata support to progs V3
This fixes up the progs to properly deal with skinny metadata. This adds the -x option to mkfs and btrfstune for enabling the skinny metadata option. This also makes changes to fsck so it can properly deal with the skinny metadata entries. Thanks, Signed-off-by: Josef Bacik <jbacik@fusionio.com> --- V2->V3: update the mkfs.btrfs man page with the new option This is based on
2013 Jun 17
0
[PATCH] Btrfs: optimize reada_for_balance
This patch does two things. First we no longer explicitly read in the blocks we''re trying to readahead. For things like balance_level we may never actually use the blocks so this just adds uneeded latency, and balance_level and split_node will both read in the blocks they care about explicitly so if the blocks need to be waited on it will be done there. Secondly we no longer drop the
2012 May 27
0
[RFC PATCH] Decrease Metadata Fragment Using A Caterpillar Band Method
I made an attempt to partly decrease fragment by using a preallocated area of multiple size of a std blocksize for a tree block when it is COWed. The basic idea is that if any a tree block need to be created, we offer, say, 2 or 4 multiples of a std blocksize for it, then use the first block in the continuous blocks. When this block need a cow in the future, a new free block in these continuous
2009 Aug 24
0
[PATCH] Btrfs: proper metadata -ENOSPC handling
This patch finally gives us full proper -ENOSPC handling for btrfs. Now whenever you do a btrfs_start_transaction, you must specify the number of items you are planning to add/delete/modify. The worst case number of blocks that could be modified by changing that number of items will be calculated and checked against the amount of free space in the space_info where the root you are modifying
2011 Apr 27
2
btrfs-convert crashes
I have a 1.5 TB (1,475,720,773,632) partition that I wanted to convert from ext4 to btrfs. It is currently used as / for ubuntu 10.10. I booted into 11.04 beta2 and tried a ''btrfs-convert /dev/sdc1'', but after about 20 minutes it segfaulted. I performed a: sck.ext4 -cDfty -C 0 /dev/sdc1 After everything was clean, I downloaded the debugging symbols for btrfs-convert and
2011 Jul 26
0
[PATCH] Btrfs: use bytes_may_use for all ENOSPC reservations
We have been using bytes_reserved for metadata reservations, which is wrong since we use that to keep track of outstanding reservations from the allocator. This resulted in us doing a lot of silly things to make sure we don''t allocate a bunch of metadata chunks since we never had a real view of how much space was actually in use by metadata. There are a lot of fixes in here to make this
2011 Jul 27
0
[PATCH] Btrfs: use bytes_may_use for all ENOSPC reservations V2
We have been using bytes_reserved for metadata reservations, which is wrong since we use that to keep track of outstanding reservations from the allocator. This resulted in us doing a lot of silly things to make sure we don''t allocate a bunch of metadata chunks since we never had a real view of how much space was actually in use by metadata. There are a lot of fixes in here to make this
2010 Aug 13
1
[PATCH] btrfs: avoid duplications by moving the static int array from header to c file
The commit 607d432d referred a static int array defined in ctree.h, and a static inline function (btrfs_super_csum_size) using this array, the obvious problem is every c file using that function would have a local copy of that int array, multiple c files calling would result multiple copies of that array: $ nm fs/btrfs/btrfs.ko | grep btrfs_csum_sizes 0000010c r btrfs_csum_sizes 00000114 r
2009 Jul 07
0
[PATCH] speed up snapshot dropping
This patch contains two changes to avoid unnecessary tree block reads during snapshot dropping. First, check tree block''s reference count and flags before reading the tree block. if reference count > 1 and there is no need to update backrefs, we can avoid reading the tree block. Second, save when snapshot was created in root_key.offset. we can compare block pointer''s