On Mon 10-09-18 11:23:56, Eric Sandeen wrote: > On 8/8/18 12:25 PM, Dave Jiang wrote: > > From: Ross Zwisler <zwisler@xxxxxxxxxx> > > > > 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 <ross.zwisler@xxxxxxxxxxxxxxx> > > Reviewed-by: Jan Kara <jack@xxxxxxx> > > Ted - wondering if this one is still on your radar? Resent the patch to Ted to catch more attention. Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR