f2fs: judge whether discard_unit is section only when have CONFIG_BLK_DEV_ZONED
The current logic, regardless of whether CONFIG_BLK_DEV_ZONED is enabled or not, will judge whether discard_unit is SECTION, when f2fs_sb_has_blkzoned. In fact, when CONFIG_BLK_DEV_ZONED is not enabled, this judgment is a path that will never be accessed. At this time, -EINVAL will be returned in the parse_options function, accompanied by the message "Zoned block device support is not enabled". Let's wrap this discard_unit judgment with CONFIG_BLK_DEV_ZONED. Signed-off-by: Yangtao Li <frank.li@vivo.com> Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
ebaaec351e
commit
b5a711acab
|
@ -1294,19 +1294,18 @@ static int parse_options(struct super_block *sb, char *options, bool is_remount)
|
|||
* zone alignment optimization. This is optional for host-aware
|
||||
* devices, but mandatory for host-managed zoned block devices.
|
||||
*/
|
||||
#ifndef CONFIG_BLK_DEV_ZONED
|
||||
if (f2fs_sb_has_blkzoned(sbi)) {
|
||||
f2fs_err(sbi, "Zoned block device support is not enabled");
|
||||
return -EINVAL;
|
||||
}
|
||||
#endif
|
||||
if (f2fs_sb_has_blkzoned(sbi)) {
|
||||
#ifdef CONFIG_BLK_DEV_ZONED
|
||||
if (F2FS_OPTION(sbi).discard_unit !=
|
||||
DISCARD_UNIT_SECTION) {
|
||||
f2fs_info(sbi, "Zoned block device doesn't need small discard, set discard_unit=section by default");
|
||||
F2FS_OPTION(sbi).discard_unit =
|
||||
DISCARD_UNIT_SECTION;
|
||||
}
|
||||
#else
|
||||
f2fs_err(sbi, "Zoned block device support is not enabled");
|
||||
return -EINVAL;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef CONFIG_F2FS_FS_COMPRESSION
|
||||
|
|
Loading…
Reference in New Issue