aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/intel-pt-events.py
diff options
context:
space:
mode:
authorRoss Zwisler <[email protected]>2018-09-11 17:31:16 +0000
committerTheodore Ts'o <[email protected]>2018-09-11 17:31:16 +0000
commitb1f382178d150f256c1cf95b9341fda6eb764459 (patch)
treea0d4c289912c4150b948abd2729980d85d3e9ade /tools/perf/scripts/python/intel-pt-events.py
parentext4: fix online resizing for bigalloc file systems with a 1k block size (diff)
downloadkernel-b1f382178d150f256c1cf95b9341fda6eb764459.tar.gz
kernel-b1f382178d150f256c1cf95b9341fda6eb764459.zip
ext4: close race between direct IO and ext4_break_layouts()
If the refcount of a page is lowered between the time that it is returned by dax_busy_page() and when the refcount is again checked in ext4_break_layouts() => ___wait_var_event(), the waiting function ext4_wait_dax_page() will never be called. This means that ext4_break_layouts() will still have 'retry' set to false, so we'll stop looping and never check the refcount of other pages in this inode. Instead, always continue looping as long as dax_layout_busy_page() gives us a page which it found with an elevated refcount. Signed-off-by: Ross Zwisler <[email protected]> Reviewed-by: Jan Kara <[email protected]> Signed-off-by: Jan Kara <[email protected]> Signed-off-by: Theodore Ts'o <[email protected]> Cc: [email protected]
Diffstat (limited to 'tools/perf/scripts/python/intel-pt-events.py')
0 files changed, 0 insertions, 0 deletions