diff options
author | 2017-04-14 08:35:54 +0800 | |
---|---|---|
committer | 2017-04-18 14:07:27 +0200 | |
commit | 0966a7b1300f953b04b436aa82486d3d1b17c96d (patch) | |
tree | 918f983ce93ded51f7c8176740cdaee6f1ee7eb6 /tools/perf/scripts/python/call-graph-from-sql.py | |
parent | btrfs: Use ktime_get_real_ts for root ctime (diff) | |
download | wireguard-linux-0966a7b1300f953b04b436aa82486d3d1b17c96d.tar.xz wireguard-linux-0966a7b1300f953b04b436aa82486d3d1b17c96d.zip |
btrfs: scrub: Introduce full stripe lock for RAID56
Unlike mirror based profiles, RAID5/6 recovery needs to read out the
whole full stripe.
And if we don't do proper protection, it can easily cause race condition.
Introduce 2 new functions: lock_full_stripe() and unlock_full_stripe()
for RAID5/6.
Which store a rb_tree of mutexes for full stripes, so scrub callers can
use them to lock a full stripe to avoid race.
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Reviewed-by: Liu Bo <bo.li.liu@oracle.com>
Reviewed-by: David Sterba <dsterba@suse.com>
[ minor comment adjustments ]
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'tools/perf/scripts/python/call-graph-from-sql.py')
0 files changed, 0 insertions, 0 deletions