Re: [PATCH 05/13] xfs: sync work is now only periodic log work

Mark Tinguely
2012-09-04T18:56:45Z

On 08/30/12 07:00, Dave Chinner wrote:
> From: Dave Chinner<dchinner@redhat.com>
>
> The only thing the periodic sync work does now is flush the AIL and
> idle the log. These are really functions of the log code, so move
> the work to xfs_log.c and rename it appropriately.
>
> The only wart that this leaves behind is the xfssyncd_centisecs
> sysctl, otherwise the xfssyncd is dead. Clean up any comments that
> related to xfssyncd to reflect it's passing.
>
> Signed-off-by: Dave Chinner<dchinner@redhat.com>
> ---

...

>
> diff --git a/fs/xfs/xfs_log.c b/fs/xfs/xfs_log.c
> index 7f4f937..598f279 100644
> --- a/fs/xfs/xfs_log.c
> +++ b/fs/xfs/xfs_log.c
> @@ -34,6 +34,7 @@
> #include "xfs_dinode.h"
> #include "xfs_inode.h"
> #include "xfs_trace.h"
> +#include "xfs_fsops.h"
>
> kmem_zone_t *xfs_log_ticket_zone;
>
> @@ -698,6 +699,8 @@ xfs_log_mount_finish(xfs_mount_t *mp)
> ASSERT(mp->m_flags& XFS_MOUNT_RDONLY);
> }
>

Looking at this closer, shouldn't there be a check for recovery failure.
If it did, the mount will stop:

if (!error)

> + xfs_log_work_queue(mp);
> +
> return error;
> }

--Mark.