search for: meta_sinfo

Displaying 2 results from an estimated 2 matches for "meta_sinfo".

Did you mean: data_sinfo
2010 Mar 12
2
[PATCH] Btrfs: force delalloc flushing when things get desperate
...ot *root, btrfs_queue_worker(&root->fs_info->enospc_workers, &async->work); - wait_on_flush(root, info); + wait_on_flush(root, info, soft); return; flush: @@ -3146,14 +3152,17 @@ again: if (!delalloc_flushed) { delalloc_flushed = true; - flush_delalloc(root, meta_sinfo); + flush_delalloc(root, meta_sinfo, 1); goto again; } if (!chunk_allocated) { + int ret; + chunk_allocated = true; - btrfs_wait_ordered_extents(root, 0, 0); - maybe_allocate_chunk(root, meta_sinfo); + ret = maybe_allocate_chunk(root, meta_sinfo); + if (!ret) + flush_delalloc(ro...
2009 Aug 24
0
[PATCH] Btrfs: proper metadata -ENOSPC handling
...t 5% of our metadata space free - * for use. + * Figure out how much metadata space we have free. */ -int btrfs_check_metadata_free_space(struct btrfs_root *root) +u64 btrfs_metadata_free_space(struct btrfs_root *root) { struct btrfs_fs_info *info = root->fs_info; struct btrfs_space_info *meta_sinfo; - u64 alloc_target, thresh; - int committed = 0, ret; + u64 alloc_target, thresh, used, total; /* get the space info for where the metadata will live */ alloc_target = btrfs_get_alloc_profile(root, 0); meta_sinfo = __find_space_info(info, alloc_target); -again: spin_lock(&meta_sinf...