* [PATCH] ext4/271: Fix test failure with data=<foo> mount option @ 2016-06-16 10:05 Jan Kara 2016-06-20 9:25 ` Eryu Guan 0 siblings, 1 reply; 3+ messages in thread From: Jan Kara @ 2016-06-16 10:05 UTC (permalink / raw) To: fstests; +Cc: Jan Kara The test is failing when MOUNT_OPTIONS contain 'data=<foo>' mount option as it does not combine with 'noload' mount option the test uses. Fix it by removing the data=<foo> mount option. Arguably we could also fix the problem by just skipping the test when such option is set but e.g. using 'data=writeback' is common to excercise somewhat different behavior and it is undesirable to skip the test just because of this. Signed-off-by: Jan Kara <jack@suse.cz> --- tests/ext4/271 | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/ext4/271 b/tests/ext4/271 index d68c2719024e..417a796ffac9 100755 --- a/tests/ext4/271 +++ b/tests/ext4/271 @@ -45,6 +45,10 @@ _scratch_mkfs_sized $((128 * 1024 * 1024)) >> $seqres.full 2>&1 # -onoload and EXT4_SYNC_FL on file is important becase result in # metadata sync writes inside ext4_handle_dirty_metadata() +# +# We have to be careful and remove data=<foo> mount options as they don't +# combine with 'noload'. +MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS | sed -e 's/\([ ,]\)data=[a-zA-Z]*[,$]/\1/') _scratch_mount -onoload touch $SCRATCH_MNT/file $CHATTR_PROG +S $SCRATCH_MNT/file -- 2.6.6 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] ext4/271: Fix test failure with data=<foo> mount option 2016-06-16 10:05 [PATCH] ext4/271: Fix test failure with data=<foo> mount option Jan Kara @ 2016-06-20 9:25 ` Eryu Guan 2016-06-20 10:48 ` Jan Kara 0 siblings, 1 reply; 3+ messages in thread From: Eryu Guan @ 2016-06-20 9:25 UTC (permalink / raw) To: Jan Kara; +Cc: fstests Hi Jan, On Thu, Jun 16, 2016 at 12:05:11PM +0200, Jan Kara wrote: > The test is failing when MOUNT_OPTIONS contain 'data=<foo>' mount option > as it does not combine with 'noload' mount option the test uses. Fix it > by removing the data=<foo> mount option. Arguably we could also fix the > problem by just skipping the test when such option is set but e.g. using > 'data=writeback' is common to excercise somewhat different behavior and When MOUNT_OPTIONS contains 'data=writeback' ext4/271 also fails [275528.681541] EXT4-fs (sda6): can't mount with data=, fs mounted w/o journal Seems kernel commit 1e381f60dad9 ("ext4: do not allow journal_opts for fs w/o journal") refuses all mounts with "data=" mount option. > it is undesirable to skip the test just because of this. So skipping ext4/271 in this case makes more sense to me. > > Signed-off-by: Jan Kara <jack@suse.cz> > --- > tests/ext4/271 | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/tests/ext4/271 b/tests/ext4/271 > index d68c2719024e..417a796ffac9 100755 > --- a/tests/ext4/271 > +++ b/tests/ext4/271 > @@ -45,6 +45,10 @@ _scratch_mkfs_sized $((128 * 1024 * 1024)) >> $seqres.full 2>&1 > > # -onoload and EXT4_SYNC_FL on file is important becase result in > # metadata sync writes inside ext4_handle_dirty_metadata() > +# > +# We have to be careful and remove data=<foo> mount options as they don't > +# combine with 'noload'. > +MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS | sed -e 's/\([ ,]\)data=[a-zA-Z]*[,$]/\1/') This doesn't remove 'data=<foo>' mount option for me $ MKFS_OPTIONS="-o data=journal" $ echo $MKFS_OPTIONS | sed -e 's/\([ ,]\)data=[a-zA-Z]*[,$]/\1/' -o data=journal Even with that works, the 'sed' filter only removes the 'data=<foo>' part and leaves the '-o' part, which results in MOUNT_OPTIONS="-o" and still causes mount to fail. And perhaps other journal related mount options should be removed too? e.g. journal_checksum, journal_async_commit, commit=<n> I sent two patches back in Jan. to fix ext4/271 (skip ext4/271 when MOUNT_OPTIONS contain journal related options), what do you think? https://patchwork.kernel.org/patch/8052251/ https://patchwork.kernel.org/patch/8052261/ Thanks, Eryu ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ext4/271: Fix test failure with data=<foo> mount option 2016-06-20 9:25 ` Eryu Guan @ 2016-06-20 10:48 ` Jan Kara 0 siblings, 0 replies; 3+ messages in thread From: Jan Kara @ 2016-06-20 10:48 UTC (permalink / raw) To: Eryu Guan; +Cc: Jan Kara, fstests Hi Eryu, On Mon 20-06-16 17:25:41, Eryu Guan wrote: > On Thu, Jun 16, 2016 at 12:05:11PM +0200, Jan Kara wrote: > > The test is failing when MOUNT_OPTIONS contain 'data=<foo>' mount option > > as it does not combine with 'noload' mount option the test uses. Fix it > > by removing the data=<foo> mount option. Arguably we could also fix the > > problem by just skipping the test when such option is set but e.g. using > > 'data=writeback' is common to excercise somewhat different behavior and > > When MOUNT_OPTIONS contains 'data=writeback' ext4/271 also fails > > [275528.681541] EXT4-fs (sda6): can't mount with data=, fs mounted w/o journal > > Seems kernel commit 1e381f60dad9 ("ext4: do not allow journal_opts for > fs w/o journal") refuses all mounts with "data=" mount option. > > > it is undesirable to skip the test just because of this. > > So skipping ext4/271 in this case makes more sense to me. OK, I didn't think of other journal options. Yes, so skipping the test probably makes more sense then. > > Signed-off-by: Jan Kara <jack@suse.cz> > > --- > > tests/ext4/271 | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/tests/ext4/271 b/tests/ext4/271 > > index d68c2719024e..417a796ffac9 100755 > > --- a/tests/ext4/271 > > +++ b/tests/ext4/271 > > @@ -45,6 +45,10 @@ _scratch_mkfs_sized $((128 * 1024 * 1024)) >> $seqres.full 2>&1 > > > > # -onoload and EXT4_SYNC_FL on file is important becase result in > > # metadata sync writes inside ext4_handle_dirty_metadata() > > +# > > +# We have to be careful and remove data=<foo> mount options as they don't > > +# combine with 'noload'. > > +MOUNT_OPTIONS=$(echo $MOUNT_OPTIONS | sed -e 's/\([ ,]\)data=[a-zA-Z]*[,$]/\1/') > > This doesn't remove 'data=<foo>' mount option for me > > $ MKFS_OPTIONS="-o data=journal" > $ echo $MKFS_OPTIONS | sed -e 's/\([ ,]\)data=[a-zA-Z]*[,$]/\1/' > -o data=journal > > Even with that works, the 'sed' filter only removes the 'data=<foo>' > part and leaves the '-o' part, which results in MOUNT_OPTIONS="-o" and > still causes mount to fail. > > And perhaps other journal related mount options should be removed too? > e.g. journal_checksum, journal_async_commit, commit=<n> > > I sent two patches back in Jan. to fix ext4/271 (skip ext4/271 when > MOUNT_OPTIONS contain journal related options), what do you think? > > https://patchwork.kernel.org/patch/8052251/ > https://patchwork.kernel.org/patch/8052261/ OK, those two patches are fine with me. Why didn't they get merged? Care to resend? Honza -- Jan Kara <jack@suse.com> SUSE Labs, CR ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-06-20 10:49 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-06-16 10:05 [PATCH] ext4/271: Fix test failure with data=<foo> mount option Jan Kara 2016-06-20 9:25 ` Eryu Guan 2016-06-20 10:48 ` Jan Kara
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox