[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <020e01d104cc$af078480$0d168d80$@samsung.com>
Date: Mon, 12 Oct 2015 17:01:29 +0800
From: Chao Yu <chao2.yu@...sung.com>
To: 'Jaegeuk Kim' <jaegeuk@...nel.org>
Cc: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
linux-f2fs-devel@...ts.sourceforge.net
Subject: RE: [f2fs-dev] [PATCH 1/2] f2fs: add F2FS_GOING_DOWN_METAFLUSH to test
power-failure
> -----Original Message-----
> From: Jaegeuk Kim [mailto:jaegeuk@...nel.org]
> Sent: Friday, October 09, 2015 8:29 AM
> To: linux-kernel@...r.kernel.org; linux-fsdevel@...r.kernel.org;
> linux-f2fs-devel@...ts.sourceforge.net
> Cc: Jaegeuk Kim
> Subject: [f2fs-dev] [PATCH 1/2] f2fs: add F2FS_GOING_DOWN_METAFLUSH to test power-failure
>
> This patch introduces F2FS_GOING_DOWN_METAFLUSH which flushes meta pages like
> SSA blocks and then blocks all the writes.
> This can be used by power-failure tests.
>
> Signed-off-by: Jaegeuk Kim <jaegeuk@...nel.org>
Good idea! I test power-failure case by changing src/godown to use new
macro, until now, I didn't catch any consistent problem. :)
Reviewed-by: Chao Yu <chao2.yu@...sung.com>
Thanks,
> ---
> fs/f2fs/f2fs.h | 1 +
> fs/f2fs/file.c | 4 ++++
> 2 files changed, 5 insertions(+)
>
> diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
> index aad4720..f05ae22 100644
> --- a/fs/f2fs/f2fs.h
> +++ b/fs/f2fs/f2fs.h
> @@ -250,6 +250,7 @@ static inline bool __has_cursum_space(struct f2fs_summary_block *sum, int
> size,
> #define F2FS_GOING_DOWN_FULLSYNC 0x0 /* going down with full sync */
> #define F2FS_GOING_DOWN_METASYNC 0x1 /* going down with metadata */
> #define F2FS_GOING_DOWN_NOSYNC 0x2 /* going down */
> +#define F2FS_GOING_DOWN_METAFLUSH 0x3 /* going down with meta flush */
>
> #if defined(__KERNEL__) && defined(CONFIG_COMPAT)
> /*
> diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
> index b3985a6..6d3cfd5 100644
> --- a/fs/f2fs/file.c
> +++ b/fs/f2fs/file.c
> @@ -1498,6 +1498,10 @@ static int f2fs_ioc_shutdown(struct file *filp, unsigned long arg)
> case F2FS_GOING_DOWN_NOSYNC:
> f2fs_stop_checkpoint(sbi);
> break;
> + case F2FS_GOING_DOWN_METAFLUSH:
> + sync_meta_pages(sbi, META, LONG_MAX);
> + f2fs_stop_checkpoint(sbi);
> + break;
> default:
> return -EINVAL;
> }
> --
> 2.1.1
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Linux-f2fs-devel mailing list
> Linux-f2fs-devel@...ts.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists