On Wed, Jul 01, 2020 at 09:33:58AM +0100, Christoph Hellwig wrote: > On Tue, Jun 30, 2020 at 08:41:56AM -0700, Darrick J. Wong wrote: > > From: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > > > In commit 8d3d7e2b35ea, we changed xfs_qm_dqpurge to bail out if we > > can't lock the dquot buf to flush the dquot. This prevents the AIL from > > blocking on the dquot, but it also forgets to clear the FREEING flag on > > its way out. A subsequent purge attempt will see the FREEING flag is > > set and bail out, which leads to dqpurge_all failing to purge all the > > dquots. This causes unmounts and quotaoff operations to hang. > > > > Fixes: 8d3d7e2b35ea ("xfs: trylock underlying buffer on dquot flush") > > Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > Looks like Dave submitted this as a separate fix just after you.. Ah, I didn't look at this patchset yesterday so didn't notice that Darrick had already posted it. I'm happy for this version to be merged... Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> -- Dave Chinner david@xxxxxxxxxxxxx