search for: groups_sem

Displaying 4 results from an estimated 4 matches for "groups_sem".

2008 Oct 10
1
[PATCH] fix enospc when there is plenty of space
...h again, with loop == 2. If we come full circle and haven''t found what we need then we exit with -ENOSPC. I''ve been running this for a couple of days now and it seems stable, and I haven''t yet hit a -ENOSPC when there was plenty of space left. Also I''ve made a groups_sem to handle the group list for the space_info. This is part of my locking changes, but is relatively safe and seems better than holding the space_info spinlock over that entire search time. Thanks, Signed-off-by: Josef Bacik <jbacik@redhat.com> diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctre...
2009 Mar 20
1
[PATCH 2/4] Btrfs: clean up find_free_extent
...{ - last_wanted = 0; + if (search_start == hint_byte) { + using_hint = 1; + block_group = btrfs_lookup_block_group(root->fs_info, + search_start); + if (block_group && block_group_bits(block_group, data)) { + total_needed += empty_size; + down_read(&space_info->groups_sem); + goto have_block_group; + } + empty_size += empty_cluster; + using_hint = 0; } - total_needed += empty_size; - block_group = btrfs_lookup_block_group(root->fs_info, search_start); - if (!block_group) - block_group = btrfs_lookup_first_block_group(root->fs_info, - sea...
2009 Aug 24
0
[PATCH] Btrfs: proper metadata -ENOSPC handling
...s_delalloc, (unsigned long long)info->bytes_may_use, - (unsigned long long)info->bytes_used); + (unsigned long long)info->bytes_used, + (unsigned long long)info->bytes_readonly, + (unsigned long long)info->bytes_super); down_read(&info->groups_sem); list_for_each_entry(cache, &info->block_groups, list) { spin_lock(&cache->lock); printk(KERN_INFO "block group %llu has %llu bytes, %llu used " - "%llu pinned %llu reserved\n", + "%llu pinned %llu reserved %llu super and is%s " +...
2011 Aug 23
40
[PATCH 00/21] [RFC] Btrfs: restriper
Hello, This patch series adds an initial implementation of restriper (it''s a clever name for relocation framework that allows to do selective profile changing and selective balancing with some goodies like pausing/resuming and reporting progress to the user. Profile changing is global (per-FS) so far, per-subvolume profiles require some discussion and can be implemented in future.