XFS write cache flush policy

Matthias Schniedermeyer ms at citd.de
Mon Dec 17 18:34:38 CST 2012


On 18.12.2012 10:24, Dave Chinner wrote:
> 
> diff --git a/fs/xfs/xfs_sync.c b/fs/xfs/xfs_sync.c
> index 9500caf..7bf85e8 100644
> --- a/fs/xfs/xfs_sync.c
> +++ b/fs/xfs/xfs_sync.c
> @@ -400,7 +400,7 @@ xfs_sync_worker(
>  	 * cancel_delayed_work_sync on this work queue before tearing down
>  	 * the ail and the log in xfs_log_unmount.
>  	 */
> -	if (!(mp->m_super->s_flags & MS_ACTIVE) &&
> +	if ((mp->m_super->s_flags & MS_ACTIVE) &&
>  	    !(mp->m_flags & XFS_MOUNT_RDONLY)) {
>  		/* dgc: errors ignored here */
>  		if (mp->m_super->s_writers.frozen == SB_UNFROZEN &&
> 
> 

This also appears to fix the other case.
When the activity ceases sharply and the log is still not written after 
minutes.

After writing 10 files, waiting a minute, yanking ... all 10 files where 
there.
So the OP-case MIGHT have been this same error.
But that's the amateuer talking again.




-- 

Matthias



More information about the xfs mailing list