search for: extent_map

Displaying 20 results from an estimated 50 matches for "extent_map".

Did you mean: extents_map
2009 Dec 15
0
[PATCH 1/4] btrfs: fix the bug that __tree_search() returns the wrong result in extent_map.c
...e result about the prev node and the next node. And we can get the prev node and the next node directly by rb_prev() and rb_next(), so it is unnecessary to use while loop to get them. This patch fixes this bug of the wrong result. Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> --- fs/btrfs/extent_map.c | 13 ++++--------- 1 files changed, 4 insertions(+), 9 deletions(-) diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c index 46bea0f..16744f4 100644 --- a/fs/btrfs/extent_map.c +++ b/fs/btrfs/extent_map.c @@ -136,20 +136,15 @@ static struct rb_node *__tree_search(struct rb_root *root,...
2012 Sep 17
0
[PATCH] Btrfs: do not hold the write_lock on the extent tree while logging V2
...icted and mark them as being logged so that releasepage does not remove them and doesn''t remove them from our local list. Thanks, Reported-by: Dave Sterba <dave@jikos.cz> Signed-off-by: Josef Bacik <jbacik@fusionio.com> --- V1->V2: drop our ref if we had an error fs/btrfs/extent_map.c | 3 ++- fs/btrfs/extent_map.h | 1 + fs/btrfs/tree-log.c | 20 ++++++++++++++++---- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c index 8d1364d..b8cbc8d 100644 --- a/fs/btrfs/extent_map.c +++ b/fs/btrfs/extent_map.c @@ -40...
2007 Nov 06
0
[PATCH] check return value in extent map allocation
Hello, I just began digging through the source last night. I hope nobody minds if I just jump in and start sending some patches. The return of extent_map_init is not checked at module startup. The net effect of this function is checked at inode space allocation time though, so my patch decides to quit early on if the alloc fails. Thanks, Wyatt Banks diff -r 29b8cc7794ac extent_map.c --- a/extent_map.c Thu Sep 20 14:14:42 2007 -0400 +++ b/extent_m...
2010 Oct 30
0
[PATCH] Use ERR_CAST inlined function instead of ERR_PTR(PTR_ERR(...)) - generated by Coccinelle
...instead of ERR_PTR(PTR_ERR(...)) The semantic patch that makes this change is available in scripts/coccinelle/api/err_cast.cocci. More information about semantic patching is available at http://coccinelle.lip6.fr/ Signed-off-by: Chris Samuel <chris@csamuel.org> diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c index 454ca52..23cb8da 100644 --- a/fs/btrfs/extent_map.c +++ b/fs/btrfs/extent_map.c @@ -335,7 +335,7 @@ struct extent_map *lookup_extent_mapping(struct extent_map_tree *tree, goto out; } if (IS_ERR(rb_node)) { - em = ERR_PTR(PTR_ERR(rb_node)); + em = ERR_CAST(rb...
2011 May 19
3
SEEK_DATA/HOLE on ocfs2 - v2
Two patches follow this message. One fixes the default implementation of SEEK_HOLE/DATA. This patch applies atop Josef's last posted patch. The second patch implements the same on ocfs2. The test tool for the same is available here. http://oss.oracle.com/~smushran/seek_data/seek_test.c It is improved since the last post. It runs cleanly on zfs, ocfs2 and ext3 (default behavior). Users
2011 May 19
3
SEEK_DATA/HOLE on ocfs2 - v2
Two patches follow this message. One fixes the default implementation of SEEK_HOLE/DATA. This patch applies atop Josef's last posted patch. The second patch implements the same on ocfs2. The test tool for the same is available here. http://oss.oracle.com/~smushran/seek_data/seek_test.c It is improved since the last post. It runs cleanly on zfs, ocfs2 and ext3 (default behavior). Users
2010 Mar 20
0
[patch 2/3] btrfs cleanup: remove more dead code
rb_node cannot be an ERR_PTR() here so I removed the misleading check. Also I removed some more dead code at the bottom. It looks like the code from lookup_extent_mapping() may have been copy and pasted into search_extent_mapping()? Signed-off-by: Dan Carpenter <error27@gmail.com> --- This doesn''t change anything. Could you put it into linux-next? diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c index 94668b1..010f299 100644 --- a/fs...
2013 Jan 16
6
[PATCH V2] mm/slab: add a leak decoder callback
...as well as runtime overhead. (The idea is from Zach Brown <zab@zabbo.net>.) Signed-off-by: Liu Bo <bo.li.liu@oracle.com> --- v2: add a wrapper API for slab destruction to make decoder only work in particular path. fs/btrfs/extent_io.c | 26 ++++++++++++++++++++++++-- fs/btrfs/extent_map.c | 13 ++++++++++++- include/linux/slab.h | 2 ++ include/linux/slab_def.h | 1 + include/linux/slub_def.h | 1 + mm/slab_common.c | 17 ++++++++++++++++- mm/slub.c | 2 ++ 7 files changed, 58 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/extent...
2013 Aug 07
1
FIEMAP problem
Hi, We are trying to use OCFS2 as VM storage. After running into problems with qemu's disk_mirror feature we now think there could be a problem with the FIEMAP ioctl in OCFS2. As far as I understand the situation looks like this: Qemu inquiries the FS if the given section of the image is already allocated via the FIEMAP ioctl [1] It especially checks if fm_mapped_extents is greater 0.
2013 Jan 14
5
[PATCH] mm/slab: add a leak decoder callback
...ndeed the same thing as what slab does. So adding a callback for leak tracking can avoid this as well as runtime overhead. Signed-off-by: Liu Bo <bo.li.liu@oracle.com> --- The idea is from Zach Brown <zab@zabbo.net>. fs/btrfs/extent_io.c | 24 ++++++++++++++++++++++++ fs/btrfs/extent_map.c | 12 ++++++++++++ include/linux/slab.h | 1 + include/linux/slab_def.h | 1 + include/linux/slub_def.h | 1 + mm/slab_common.c | 1 + mm/slub.c | 5 +++++ 7 files changed, 45 insertions(+), 0 deletions(-) diff --git a/fs/btrfs/extent_io.c b/fs/btrf...
2010 Feb 05
1
[PATCH] ocfs2: Fix contiguousness check in ocfs2_try_to_merge_extent_map()
...== emi->ei_phys && >> (ins->ei_cpos + ins->ei_clusters) == emi->ei_phys && >> should that 2nd emi->ei_phys be emi->ei_cpos? > oh, yes, you are right. Do you want to provide a patch? Here, I added your ack. diff --git a/fs/ocfs2/extent_map.c b/fs/ocfs2/extent_map.c index d35a27f..5328529 100644 --- a/fs/ocfs2/extent_map.c +++ b/fs/ocfs2/extent_map.c @@ -192,7 +192,7 @@ static int ocfs2_try_to_merge_extent_map(struct ocfs2_extent_map_item *emi, emi->ei_clusters += ins->ei_clusters; return 1; } else if ((ins->ei_phys +...
2009 Mar 31
0
[PATCH] ocfs2: remove some pointless conditionals before kfree()
...re kfree(). Signed-off-by: Wei Yongjun <yjwei at cn.fujitsu.com> --- fs/ocfs2/alloc.c | 3 +-- fs/ocfs2/cluster/heartbeat.c | 6 ++---- fs/ocfs2/cluster/tcp.c | 6 ++---- fs/ocfs2/dlm/dlmdomain.c | 3 +-- fs/ocfs2/dlm/dlmrecovery.c | 6 ++---- fs/ocfs2/extent_map.c | 3 +-- fs/ocfs2/journal.c | 9 +++------ fs/ocfs2/localalloc.c | 9 +++------ fs/ocfs2/super.c | 6 ++---- 9 files changed, 17 insertions(+), 34 deletions(-) diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c index 19e3a96..08f46cd 100644 --- a/fs/...
2011 Dec 20
8
ocfs2 - Kernel panic on many write/read from both
Sorry i don`t copy everything: TEST-MAIL1# echo "ls //orphan_dir:0000"|debugfs.ocfs2 /dev/dm-0|wc debugfs.ocfs2 1.6.4 5239722 26198604 246266859 TEST-MAIL1# echo "ls //orphan_dir:0001"|debugfs.ocfs2 /dev/dm-0|wc debugfs.ocfs2 1.6.4 6074335 30371669 285493670 TEST-MAIL2 ~ # echo "ls //orphan_dir:0000"|debugfs.ocfs2 /dev/dm-0|wc debugfs.ocfs2 1.6.4 5239722 26198604
2013 Nov 19
6
[PATCH] Btrfs: fix very slow inode eviction and fs unmount
...ich keep merging and splitting + * extent_state structures over and over, wasting lots of time. + * + * Therefore if the inode is being evicted, let btrfs_invalidatepage() skip all + * those expensive operations on a per page basis and do only the ordered io + * finishing, while we release here the extent_map and extent_state structures, + * without the excessive merging and splitting. + */ +static void evict_inode_truncate_pages(struct inode *inode) +{ + struct extent_io_tree *io_tree = &BTRFS_I(inode)->io_tree; + struct extent_map_tree *map_tree = &BTRFS_I(inode)->extent_tree; + struct r...
2012 Jun 18
3
[PATCH] Ignore unfragmented file checks in defrag when compression enabled
I noticed that btrfs fi defrag -c<method> can''t be used to compress files unless they are fragmented. This patch corrects the problem, by informing should_defrag_range if compression is enabled, and skipping tests for extent and adjacent extents if it is. Andrew Mahone (1): btrfs: ignore unfragmented file checks in defrag when compression enabled fs/btrfs/ioctl.c | 10
2013 Oct 16
3
trivial cleanups
Hi gang, Here''s some trivial cleanups that I''ve built up while reading through the code. They''ve been run through xfstests -g quick. - z -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
2011 Sep 18
5
Inefficient storing of ISO images with compress=lzo
I''ve noticed that: - with x86-64 Fedora 15 DVD install images: - du -sh <ROOT VOLUME> was 36 GB - btrfs df | grep -i data have shown over 40 GB used - without - du -sh <ROOT VOLUME> is 34 GB - btrfs df | grep -i data have shown less then 34 GB used It seems that iso files are considered compressable while they may not be (and penalty is severe - 3x). Regards
2012 Oct 01
1
[RFC] [PATCH] Btrfs: rework can_nocow_odirect
..., make sure it is correct :). --- Subject: [PATCH] Btrfs: rework can_nocow_odirect We are always doing the file extent lookup in here even though we''ve already done the btrfs_get_extent which does the exact same thing. So re-work can_nocow_odirect to get the same information out of the extent_map we already have and then do the cross ref check and csum checks as appropriate. This reduces the number of allocations and searches we do for every O_DIRECT write and man it helps a lot. Thanks, Signed-off-by: Josef Bacik <jbacik@fusionio.com> --- fs/btrfs/inode.c | 93 ++++++++++++++----...
2010 Mar 22
0
[PATCH] Btrfs: change direct I/O read to not use i_mutex.
...35,14 +435,81 @@ static void btrfs_dio_write(struct btrfs_diocb *diocb) { } +/* verify that we have locked everything we need to do the read and + * have pushed the ordered data into the btree so the extent is valid + */ +static void btrfs_dio_safe_to_read(struct btrfs_diocb *diocb, + struct extent_map *em, u64 *lockend, + u64 *data_len, int *safe_to_read) +{ + struct extent_io_tree *io_tree = &BTRFS_I(diocb->inode)->io_tree; + struct btrfs_ordered_extent *ordered; + u64 stop; + + /* must ensure the whole compressed extent is valid on each loop + * as we don''t know the fina...
2007 May 17
1
[PATCH] ocfs: use list_for_each_entry where benefical
...afe(pos, tmp, &lockres->l_mask_waiters) { - mw = list_entry(pos, struct ocfs2_mask_waiter, mw_item); + list_for_each_entry_safe(mw, tmp, &lockres->l_mask_waiters, mw_item) { if ((lockres->l_flags & mw->mw_mask) != mw->mw_goal) continue; Index: linux-2.6/fs/ocfs2/extent_map.c =================================================================== --- linux-2.6.orig/fs/ocfs2/extent_map.c 2007-04-30 11:33:04.000000000 +0200 +++ linux-2.6/fs/ocfs2/extent_map.c 2007-05-17 15:00:14.000000000 +0200 @@ -109,17 +109,14 @@ static int ocfs2_extent_map_lookup(struc */ void ocfs2_...