search for: btrfs_delalloc_release_metadata

Displaying 9 results from an estimated 9 matches for "btrfs_delalloc_release_metadata".

2012 May 23
1
[PATCH] Btrfs: fall back to non-inline if we don't have enough space
...ret = insert_inline_extent(trans, root, inode, start, inline_len, compressed_size, compress_type, compressed_pages); - if (ret) { + if (ret && ret != -ENOSPC) { btrfs_abort_transaction(trans, root, ret); return ret; + } else if (ret == -ENOSPC) { + return 1; } + btrfs_delalloc_release_metadata(inode, end + 1 - start); btrfs_drop_extent_cache(inode, start, aligned_end - 1, 0); return 0; -- 1.7.7.6 -- 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/maj...
2010 Apr 26
0
[PATCH V2 11/12] Btrfs: Pre-allocate space for data relocation
...+ page = find_lock_page(inode->i_mapping, index); if (!page) { page_cache_sync_readahead(inode->i_mapping, @@ -2622,8 +2668,10 @@ static int relocate_file_extent_cluster( last_index + 1 - index); page = grab_cache_page(inode->i_mapping, index); if (!page) { + btrfs_delalloc_release_metadata(inode, + PAGE_CACHE_SIZE); ret = -ENOMEM; - goto out_unlock; + goto out; } } @@ -2639,8 +2687,10 @@ static int relocate_file_extent_cluster( if (!PageUptodate(page)) { unlock_page(page); page_cache_release(page); + btrfs_delalloc_release_metadata(inode, +...
2013 Feb 13
0
Re: Heavy memory leak when using quota groups
...<ffffffff81183beb>] ? kfree+0x3b/0x150 > [ 5123.800332] [<ffffffffa05290d3>] > btrfs_delayed_refs_qgroup_accounting+0xa3/0x100 [btrfs] > [ 5123.800341] [<ffffffffa0540941>] __btrfs_end_transaction+0x81/0x410 [btrfs] > [ 5123.800349] [<ffffffffa052b646>] ? > btrfs_delalloc_release_metadata+0x106/0x180 [btrfs] > [ 5123.800358] [<ffffffffa0540d20>] btrfs_end_transaction+0x10/0x20 [btrfs] > [ 5123.800367] [<ffffffffa054965d>] btrfs_finish_ordered_io+0x10d/0x3d0 [btrfs] > [ 5123.800374] [<ffffffff8106a3a0>] ? cascade+0xa0/0xa0 > [ 5123.800384] [<fffff...
2011 Jul 26
0
[PATCH] Btrfs: use bytes_may_use for all ENOSPC reservations
...break; *trimmed += actually_trimmed; diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 0b858d7..ffd0924 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -1388,11 +1388,7 @@ static int btrfs_clear_bit_hook(struct inode *inode, } if (*bits & EXTENT_DO_ACCOUNTING) - btrfs_delalloc_release_metadata(inode, len); - - if (root->root_key.objectid != BTRFS_DATA_RELOC_TREE_OBJECTID - && do_list) - btrfs_free_reserved_data_space(inode, len); + btrfs_delalloc_release_space(inode, len); spin_lock(&root->fs_info->delalloc_lock); root->fs_info->delalloc_bytes...
2011 Jul 27
0
[PATCH] Btrfs: use bytes_may_use for all ENOSPC reservations V2
...break; *trimmed += actually_trimmed; diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 0b858d7..ffd0924 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -1388,11 +1388,7 @@ static int btrfs_clear_bit_hook(struct inode *inode, } if (*bits & EXTENT_DO_ACCOUNTING) - btrfs_delalloc_release_metadata(inode, len); - - if (root->root_key.objectid != BTRFS_DATA_RELOC_TREE_OBJECTID - && do_list) - btrfs_free_reserved_data_space(inode, len); + btrfs_delalloc_release_space(inode, len); spin_lock(&root->fs_info->delalloc_lock); root->fs_info->delalloc_bytes...
2010 Sep 03
0
[PATCH 1/2] btrfs: document where we use BUG_ON instead of error handling
...t_byte, 1); - BUG_ON(ret); + btrfs_fixable_bug_on(ret); if (isize > actual_end) inline_len = min_t(u64, isize, actual_end); ret = insert_inline_extent(trans, root, inode, start, inline_len, compressed_size, compressed_pages); - BUG_ON(ret); + btrfs_fixable_bug_on(ret); btrfs_delalloc_release_metadata(inode, end + 1 - start); btrfs_drop_extent_cache(inode, start, aligned_end - 1, 0); return 0; @@ -667,7 +667,7 @@ retry: async_extent->ram_size, ins.offset, BTRFS_ORDERED_COMPRESSED); - BUG_ON(ret); + btrfs_fixable_bug_on(ret); /* * clear dir...
2011 Aug 15
9
[patch v2 0/9] btrfs: More error handling patches
Hi all - The following 9 patches add more error handling to the btrfs code: - Add btrfs_panic - Catch locking failures in {set,clear}_extent_bit - Push up set_extent_bit errors to callers - Push up lock_extent errors to callers - Push up clear_extent_bit errors to callers - Push up unlock_extent errors to callers - Make pin_down_extent return void - Push up btrfs_pin_extent errors to
2011 Oct 06
26
[PATCH v0 00/18] btfs: Subvolume Quota Groups
This is a first draft of a subvolume quota implementation. It is possible to limit subvolumes and any group of subvolumes and also to track the amount of space that will get freed when deleting snapshots. The current version is functionally incomplete, with the main missing feature being the initial scan and rescan of an existing filesystem. I put some effort into writing an introduction into
2011 Oct 04
68
[patch 00/65] Error handling patchset v3
Hi all - Here''s my current error handling patchset, against 3.1-rc8. Almost all of this patchset is preparing for actual error handling. Before we start in on that work, I''m trying to reduce the surface we need to worry about. It turns out that there is a ton of code that returns an error code but never actually reports an error. The patchset has grown to 65 patches. 46 of them