diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c index 1c36022c8529..6cd1aff628b3 100644 --- a/fs/f2fs/file.c +++ b/fs/f2fs/file.c @@ -2318,9 +2318,9 @@ static int f2fs_ioc_gc_range(struct file *filp, unsigned long arg) return -EROFS; end = range.start + range.len; - if (range.start < MAIN_BLKADDR(sbi) || end >= MAX_BLKADDR(sbi)) { + if (end < range.start || range.start < MAIN_BLKADDR(sbi) || + end >= MAX_BLKADDR(sbi)) return -EINVAL; - } ret = mnt_want_write_file(filp); if (ret)