Message ID | 20210425030440.12762-1-zhanglianjie@uniontech.com |
---|---|
State | Accepted |
Headers | show |
Series | Ignore ntfs file system | expand |
Hi, > If the fuse file system is ignored and the kernel enable CONFIG_NTFS_FS, > then the mount.ntfs of fuse is used when mounting ntfs, > which is equivalent to not ignoring the fuse file system. ... > +++ b/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c > @@ -123,6 +123,7 @@ static struct tst_test test = { > .all_filesystems = 1, > .skip_filesystems = (const char *const []){ > "fuse", > + "ntfs", Shouldn't "ntfs" *replace* "fuse"? Testing on SLES kernel 5.3 (heavily patched) which is without CONFIG_NTFS_FS: ... tst_supported_fs_types.c:51: TINFO: mkfs.vfat does exist ... Summary: passed 21 failed 0 broken 0 skipped 0 warnings 0 Testing Debian kernel 4.9.0-11-amd64 which is with CONFIG_NTFS_FS: tst_supported_fs_types.c:148: TINFO: Skipping ntfs as requested by the test ... Summary: passed 15 failed 0 broken 0 skipped 0 warnings 0 Kind regards, Petr
Hi, > >> If the fuse file system is ignored and the kernel enable CONFIG_NTFS_FS, >> then the mount.ntfs of fuse is used when mounting ntfs, >> which is equivalent to not ignoring the fuse file system. > > ... >> +++ b/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c >> @@ -123,6 +123,7 @@ static struct tst_test test = { >> .all_filesystems = 1, >> .skip_filesystems = (const char *const []){ >> "fuse", >> + "ntfs", > > Shouldn't "ntfs" *replace* "fuse"? Can't replace fuse. > > Testing on SLES kernel 5.3 (heavily patched) which is without CONFIG_NTFS_FS: > ... > tst_supported_fs_types.c:51: TINFO: mkfs.vfat does exist > ... > Summary: > passed 21 > failed 0 > broken 0 > skipped 0 > warnings 0 If there is no CONFIG_NTFS_FS, the test of the ntfs file system will be ignored. Because there is fuse in skip_filesystems, the test can pass. > > Testing Debian kernel 4.9.0-11-amd64 which is with CONFIG_NTFS_FS: > tst_supported_fs_types.c:148: TINFO: Skipping ntfs as requested by the test > ... > Summary: > passed 15 > failed 0 > broken 0 > skipped 0 > warnings 0 > CONFIG_NTFS_FS is configured, are you sure there is no ntfs in skip_filesystems? Why does it output "Skipping ntfs as requested by the test"? There should be no mount.ntfs command provided by ntfs-3g in your system. Testing Ubuntu kernel 5.8.0-50-generic: ub-PC$ cat /boot/config-5.8.0-50-generic | grep -E "EXFAT_FS|NTFS_FS" CONFIG_EXFAT_FS=m CONFIG_NTFS_FS=m tst_supported_fs_types.c:89: TINFO: Kernel supports ntfs tst_supported_fs_types.c:51: TINFO: mkfs.ntfs does exist ... tst_test.c:1379: TINFO: Testing on ntfs tst_test.c:888: TINFO: Formatting /dev/loop10 with ntfs opts='' extra opts='' tst_test.c:899: TINFO: Trying FUSE... tst_test.c:1311: TINFO: Timeout per run is 0h 05m 00s sync_file_range02.c:73: TFAIL: Sync equals write: Synced 0, expected 33554432 sync_file_range02.c:73: TFAIL: Sync inside of write: Synced 0, expected 16777216 sync_file_range02.c:73: TFAIL: Sync overlaps with write: Synced 0, expected 8388608 Summary: passed 15 failed 3 broken 0 skipped 0 warnings 0
Hi, > > > If the fuse file system is ignored and the kernel enable CONFIG_NTFS_FS, > > > then the mount.ntfs of fuse is used when mounting ntfs, > > > which is equivalent to not ignoring the fuse file system. > > ... > > > +++ b/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c > > > @@ -123,6 +123,7 @@ static struct tst_test test = { > > > .all_filesystems = 1, > > > .skip_filesystems = (const char *const []){ > > > "fuse", > > > + "ntfs", > > Shouldn't "ntfs" *replace* "fuse"? > Can't replace fuse. Not sure if we understand each other: I mean add "ntfs" and *remove* "fuse", as "fuse" is now redundant when we whitelist ntfs (see tst_get_supported_fs_types()), unless there is problem with other fuse filesystems. I tested with CONFIG_FUSE_FS=m CONFIG_EXFAT_FS=m. But maybe removing "fuse" should be a separate step. > > Testing on SLES kernel 5.3 (heavily patched) which is without CONFIG_NTFS_FS: > > ... > > tst_supported_fs_types.c:51: TINFO: mkfs.vfat does exist > > ... > > Summary: > > passed 21 > > failed 0 > > broken 0 > > skipped 0 > > warnings 0 > If there is no CONFIG_NTFS_FS, the test of the ntfs file system will be > ignored. Because there is fuse in skip_filesystems, the test can pass. See above. > > Testing Debian kernel 4.9.0-11-amd64 which is with CONFIG_NTFS_FS: > > tst_supported_fs_types.c:148: TINFO: Skipping ntfs as requested by the test > > ... > > Summary: > > passed 15 > > failed 0 > > broken 0 > > skipped 0 > > warnings 0 > CONFIG_NTFS_FS is configured, are you sure there is no ntfs > in skip_filesystems? Why does it output "Skipping ntfs as requested by > the test"? > There should be no mount.ntfs command provided by ntfs-3g in your > system. See above. Kind regards, Petr
Hi, > >>>> If the fuse file system is ignored and the kernel enable CONFIG_NTFS_FS, >>>> then the mount.ntfs of fuse is used when mounting ntfs, >>>> which is equivalent to not ignoring the fuse file system. > >>> ... >>>> +++ b/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c >>>> @@ -123,6 +123,7 @@ static struct tst_test test = { >>>> .all_filesystems = 1, >>>> .skip_filesystems = (const char *const []){ >>>> "fuse", >>>> + "ntfs", > >>> Shouldn't "ntfs" *replace* "fuse"? >> Can't replace fuse. > Not sure if we understand each other: I mean add "ntfs" and *remove* "fuse", > as "fuse" is now redundant when we whitelist ntfs (see > tst_get_supported_fs_types()), unless there is problem with other fuse > filesystems. I tested with CONFIG_FUSE_FS=m CONFIG_EXFAT_FS=m. > > But maybe removing "fuse" should be a separate step. > I can understand what you mean, but I can't remove the fuse. If the fuse is removed and the kernel is not configured with CONFIG_EXFAT_FS=m, it will cause the test exfat to fail. >>> Testing on SLES kernel 5.3 (heavily patched) which is without CONFIG_NTFS_FS: >>> ... >>> tst_supported_fs_types.c:51: TINFO: mkfs.vfat does exist >>> ... >>> Summary: >>> passed 21 >>> failed 0 >>> broken 0 >>> skipped 0 >>> warnings 0 >> If there is no CONFIG_NTFS_FS, the test of the ntfs file system will be >> ignored. Because there is fuse in skip_filesystems, the test can pass. > > See above. > >>> Testing Debian kernel 4.9.0-11-amd64 which is with CONFIG_NTFS_FS: >>> tst_supported_fs_types.c:148: TINFO: Skipping ntfs as requested by the test >>> ... >>> Summary: >>> passed 15 >>> failed 0 >>> broken 0 >>> skipped 0 >>> warnings 0 > >> CONFIG_NTFS_FS is configured, are you sure there is no ntfs >> in skip_filesystems? Why does it output "Skipping ntfs as requested by >> the test"? >> There should be no mount.ntfs command provided by ntfs-3g in your >> system. > See above. > > Kind regards, > Petr > >
Hi, > > > > Shouldn't "ntfs" *replace* "fuse"? > > > Can't replace fuse. > > Not sure if we understand each other: I mean add "ntfs" and *remove* "fuse", > > as "fuse" is now redundant when we whitelist ntfs (see > > tst_get_supported_fs_types()), unless there is problem with other fuse > > filesystems. I tested with CONFIG_FUSE_FS=m CONFIG_EXFAT_FS=m. > > But maybe removing "fuse" should be a separate step. > I can understand what you mean, but I can't remove the fuse. If the fuse is > removed and the kernel is not configured with CONFIG_EXFAT_FS=m, it will > cause the test exfat to fail. You're right, I didn't notice I tested it without mount.exfat. Sorry for being slow. Interesting that while NTFS kernel module does not work on the test, exfat from Samsung does. Anyway merged. Thanks! Kind regards, Petr
diff --git a/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c b/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c index d9a8eec31..f9693089b 100644 --- a/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c +++ b/testcases/kernel/syscalls/sync_file_range/sync_file_range02.c @@ -123,6 +123,7 @@ static struct tst_test test = { .all_filesystems = 1, .skip_filesystems = (const char *const []){ "fuse", + "ntfs", "tmpfs", NULL },
If the fuse file system is ignored and the kernel enable CONFIG_NTFS_FS, then the mount.ntfs of fuse is used when mounting ntfs, which is equivalent to not ignoring the fuse file system. Signed-off-by: zhanglianjie <zhanglianjie@uniontech.com> --- testcases/kernel/syscalls/sync_file_range/sync_file_range02.c | 1 + 1 file changed, 1 insertion(+) -- 2.20.1