Otherwise, mkfs.f2fs may persist truncated path of main device.

- mkfs.f2fs /mnt/f2fs/0123456789012345678901234567890123456789012345678901234 \
  -c /mnt/f2fs/012345678901234567890123456789012345678901234567890123 -f
- mount /mnt/f2fs/0123456789012345678901234567890123456789012345678901234
  /mnt/f2fs/loop

F2FS-fs (loop0): Mount Device [ 0]: 
/mnt/f2fs/012345678901234567890123456789012345678901234567890123,      511,     
   0 -    3ffff
F2FS-fs (loop0): Failed to find devices

Signed-off-by: Chao Yu <c...@kernel.org>
---
 mkfs/f2fs_format_main.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/mkfs/f2fs_format_main.c b/mkfs/f2fs_format_main.c
index 3a8fde0..f0bec4f 100644
--- a/mkfs/f2fs_format_main.c
+++ b/mkfs/f2fs_format_main.c
@@ -384,6 +384,12 @@ static void f2fs_parse_options(int argc, char *argv[])
                mkfs_usage();
        }
 
+       if (c.ndevs > 1 && strlen(argv[optind]) > MAX_PATH_LEN) {
+               MSG(0, "Error: main device path %s should be equal or "
+                               "less than %d characters\n",
+                               argv[optind], MAX_PATH_LEN);
+               mkfs_usage();
+       }
        /* [0] : META, [1 to MAX_DEVICES - 1] : NODE/DATA */
        c.devices[0].path = strdup(argv[optind]);
 
-- 
2.49.0



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to