Displaying 5 results from an estimated 5 matches for "delalloc_lock".
2010 Mar 24
1
Possible race in btrfs
...24c
writeback_inodes_wb+0x374/0x48d
wb_writeback+0x121/0x1f6
wb_do_writeback+0x147/0x159
bdi_writeback_task+0x3a/0xaa
bdi_start_fn+0x63/0xc7
kthread+0x7a/0x82
kernel_thread_helper+0x4/0x10
The write to delalloc_bytes in the function btrfs_clear_bit_hook is
protected by the spin_lock delalloc_lock whereas the read is not.The
write is not atomic so the read could return some old value.
I am not sure what would be the implication of this?Is it ok if stat
system call returns some value which is not consistent with rest of
the fields? If not then is it better to make this field as atomic_t?
I a...
2013 Mar 01
0
[PATCH 1/2] Btrfs: don't call btrfs_qgroup_free if just btrfs_qgroup_reserve fails
...= 0;
@@ -4805,10 +4810,6 @@ int btrfs_delalloc_reserve_metadata(struct inode *inode, u64 num_bytes)
btrfs_ino(inode),
to_free, 0);
}
- if (root->fs_info->quota_enabled) {
- btrfs_qgroup_free(root, num_bytes +
- nr_extents * root->leafsize);
- }
if (delalloc_lock)
mutex_unlock(&BTRFS_I(inode)->delalloc_mutex);
return ret;
--
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/majordomo-info.html
2011 Jul 26
0
[PATCH] Btrfs: use bytes_may_use for all ENOSPC reservations
...ENT_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 -= len;
--
1.7.5.2
--
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 Jul 27
0
[PATCH] Btrfs: use bytes_may_use for all ENOSPC reservations V2
...ENT_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 -= len;
--
1.7.5.2
--
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 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