Btrfs: stop spinning on mutex_trylock and let the adaptive code spin for us
Mutexes now spin internally and the btrfs spin is no longer required for performance. Signed-off-by: Chris Mason <chris.mason@oracle.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
@@ -37,16 +37,6 @@
|
|||||||
|
|
||||||
int btrfs_tree_lock(struct extent_buffer *eb)
|
int btrfs_tree_lock(struct extent_buffer *eb)
|
||||||
{
|
{
|
||||||
int i;
|
|
||||||
|
|
||||||
if (mutex_trylock(&eb->mutex))
|
|
||||||
return 0;
|
|
||||||
for (i = 0; i < 512; i++) {
|
|
||||||
cpu_relax();
|
|
||||||
if (mutex_trylock(&eb->mutex))
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
cpu_relax();
|
|
||||||
mutex_lock_nested(&eb->mutex, BTRFS_MAX_LEVEL - btrfs_header_level(eb));
|
mutex_lock_nested(&eb->mutex, BTRFS_MAX_LEVEL - btrfs_header_level(eb));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user