diff options
| author | Yunlei He <heyunlei@huawei.com> | 2016-09-01 10:14:39 +0800 |
|---|---|---|
| committer | Mister Oyster <oysterized@gmail.com> | 2017-04-13 12:34:04 +0200 |
| commit | 3f2d713b0bd3f984a759fb5a0e127c2d7d4ce4bd (patch) | |
| tree | 345e6d5b22a4693edf1b9d38a90b5d85fd168cfa | |
| parent | 1b990d816f3bffe42b343a474b3fb4a4904e27de (diff) | |
f2fs: forbid to do fstrim if fs has some error
This patch skip fstrim if sbi set SBI_NEED_FSCK flag
Signed-off-by: Yunlei He <heyunlei@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
| -rw-r--r-- | fs/f2fs/segment.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index a78ed6ad8..7fbce1b72 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c @@ -1335,6 +1335,12 @@ int f2fs_trim_fs(struct f2fs_sb_info *sbi, struct fstrim_range *range) if (end <= MAIN_BLKADDR(sbi)) goto out; + if (is_sbi_flag_set(sbi, SBI_NEED_FSCK)) { + f2fs_msg(sbi->sb, KERN_WARNING, + "Found FS corruption, run fsck to fix."); + goto out; + } + /* start/end segment number in main_area */ start_segno = (start <= MAIN_BLKADDR(sbi)) ? 0 : GET_SEGNO(sbi, start); end_segno = (end >= MAX_BLKADDR(sbi)) ? MAIN_SEGS(sbi) - 1 : |
