Searched hist:"5 cd57b2cbbb06a350df2698314e4e6a80805fc2f" (Results 1 – 3 of 3) sorted by relevance
/openbmc/linux/fs/btrfs/ |
H A D | ctree.c | diff 5cd57b2cbbb06a350df2698314e4e6a80805fc2f Wed Jun 25 15:01:30 CDT 2008 Chris Mason <chris.mason@oracle.com> Btrfs: Add a skip_locking parameter to struct path, and make various funcs honor it
Allocations may need to read in block groups from the extent allocation tree, which will require a tree search and take locks on the extent allocation tree. But, those locks might already be held in other places, leading to deadlocks.
Since the alloc_mutex serializes everything right now, it is safe to skip the btree locking while caching block groups. A better fix will be to either create a recursive lock or find a way to back off existing locks while caching block groups.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
|
H A D | ctree.h | diff 5cd57b2cbbb06a350df2698314e4e6a80805fc2f Wed Jun 25 15:01:30 CDT 2008 Chris Mason <chris.mason@oracle.com> Btrfs: Add a skip_locking parameter to struct path, and make various funcs honor it
Allocations may need to read in block groups from the extent allocation tree, which will require a tree search and take locks on the extent allocation tree. But, those locks might already be held in other places, leading to deadlocks.
Since the alloc_mutex serializes everything right now, it is safe to skip the btree locking while caching block groups. A better fix will be to either create a recursive lock or find a way to back off existing locks while caching block groups.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
|
H A D | extent-tree.c | diff 5cd57b2cbbb06a350df2698314e4e6a80805fc2f Wed Jun 25 15:01:30 CDT 2008 Chris Mason <chris.mason@oracle.com> Btrfs: Add a skip_locking parameter to struct path, and make various funcs honor it
Allocations may need to read in block groups from the extent allocation tree, which will require a tree search and take locks on the extent allocation tree. But, those locks might already be held in other places, leading to deadlocks.
Since the alloc_mutex serializes everything right now, it is safe to skip the btree locking while caching block groups. A better fix will be to either create a recursive lock or find a way to back off existing locks while caching block groups.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
|