Re: [PATCH v1 1/1] swap: Add exfat to filesystems requiring tst_fill_file
Cyril Hrubis <[email protected]>
| Newsgroups | gmane.linux.ltp |
|---|---|
| Message-ID | <[email protected]> |
Hi! > exfat, like XFS, requires actual data writes (not just fallocate) to > fully allocate swap files. Without this, swapon(2) fails with EINVAL > due to unallocated extents. > > This matches the kernel's requirement that swap files must be fully > allocated before activation. > > Signed-off-by: Jan Polensky <[email protected]> > --- > libs/swap/tse_swap.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/libs/swap/tse_swap.c b/libs/swap/tse_swap.c > index ae3c193132e6..e321cb1dfe63 100644 > --- a/libs/swap/tse_swap.c > +++ b/libs/swap/tse_swap.c > @@ -177,8 +177,9 @@ int make_swapfile(const char *file, const int lineno, > if (prealloc_contiguous_file(swapfile, blk_size, blocks) != 0) > tst_brk_(file, lineno, TBROK, "Failed to create swapfile"); > > - /* Fill the file if needed (specific to old xfs filesystems) */ > - if (tst_fs_type(swapfile) == TST_XFS_MAGIC) { > + /* Fill the file if needed (specific to xfs and exfat filesystems) */ > + long fs_type = tst_fs_type(swapfile); > + if (fs_type == TST_XFS_MAGIC || fs_type == TST_EXFAT_MAGIC) { > if (tst_fill_file(swapfile, 0, blk_size, blocks) != 0) > tst_brk_(file, lineno, TBROK, "Failed to fill swapfile"); > } The swapon01 works for me for exfat without this change. Where does this fail (arch, kernel, OS, is exfat in kernel or FUSE, etc.)? -- Cyril Hrubis [email protected] -- Mailing list info: https://lists.linux.it/listinfo/ltp