[LTP] fsconfig04: Check FSCONFIG_SET_PATH
Andrea Cervesato
andrea.cervesato@suse.com
Tue Aug 11 09:44:26 CEST 2026
Hi Wei,
> > > + TEST(fsconfig(fd, FSCONFIG_SET_PATH, "journal_path", dev2, 0));
> > > + if (TST_RET == -1) {
> > > + if (TST_ERR == EOPNOTSUPP)
> > > + tst_brk(TCONF, "fsconfig(FSCONFIG_SET_PATH) not supported");
> > > + else
> > > + tst_brk(TFAIL | TTERRNO, "fsconfig(FSCONFIG_SET_PATH) failed");
> > > + }
> >
> > Could this test be gated with .min_kver = "7.2"?
> >
> > Before Linux 7.2, ext4 declared journal_path as a string parameter, so
> > FSCONFIG_SET_PATH is rejected with EINVAL rather than EOPNOTSUPP. Since
> > fsopen_supported_by_kernel() only gates fsopen at Linux 5.2, those kernels
> > reach the else branch and report TFAIL instead of TCONF.
> If fsconfig parameter is correct, return EINVAL should be an kernel bug.
> Current logic is correct.
> I guess AI mix wtih some old code with new API. But how to fix AI's rule is a
> question.
yeah, agent is wrong.
> >
> > > + SAFE_SSCANF(dev2, "/dev/%s", loop_name);
> > > +
> > > + snprintf(path, sizeof(path), "/sys/block/%s/dev", loop_name);
> > > + SAFE_FILE_SCANF(path, "%u:%u", &major, &minor);
> >
> > Could the device number be obtained from stat(dev2).st_rdev instead?
what about this?
> >
> > tst_find_free_loopdev() also supports /dev/loop/N and /dev/block/loopN.
> > Those paths produce loop/N or block/loopN here, causing the test to read a
> > nonexistent sysfs path and terminate with TBROK.
> >
> > > + SAFE_MKFS(dev0, tst_device->fs_type, mkfs_opts_set_journal_dev1, NULL);
> > > +}
> > > +
> > > +static void run(void)
> > > +{
> > > + ...
> > > + TEST(fsconfig(fd, FSCONFIG_SET_PATH, "journal_path", dev2, 0));
> >
> > Could each iteration reset dev0 to dev1 or alternate the source and target
> > journal devices?
> >
> > The first iteration persists dev2 in dev0's superblock. Every subsequent
> > -i iteration requests dev2 again, so it no longer exercises a dynamic
> > journal-device change.
and this?
--
Andrea Cervesato
SUSE QE Automation Engineer Linux
andrea.cervesato@suse.com
More information about the ltp
mailing list