All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Theodore Ts'o <tytso@mit.edu>,
	fstests@vger.kernel.org, djwong@kernel.org,
	linux-xfs@vger.kernel.org, linux-ext4@vger.kernel.org,
	linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] ext4/054,ext4/055: don't run when using DAX
Date: Thu, 28 Apr 2022 15:58:25 +1000	[thread overview]
Message-ID: <20220428055825.GU1544202@dread.disaster.area> (raw)
In-Reply-To: <20220428045313.kntbytbqlpgummql@zlang-mailbox>

On Thu, Apr 28, 2022 at 12:53:13PM +0800, Zorro Lang wrote:
> On Wed, Apr 27, 2022 at 03:44:58PM -0400, Theodore Ts'o wrote:
> > On Thu, Apr 28, 2022 at 01:19:23AM +0800, Zorro Lang wrote:
> > > I just noticed that _scratch_mkfs_sized() and _scratch_mkfs_blocksized() both use
> > > _scratch_mkfs_xfs for XFS, I'm wondering if ext4 would like to use _scratch_mkfs_ext4()
> > > or even use _scratch_mkfs() directly in these two functions. Then you can do something
> > > likes:
> > >   MKFS_OPTIONS="$MKFS_OPTIONS -F -O quota"
> > >   _scratch_mkfs_blocksized 1024
> > > or:
> > >   MKFS_OPTIONS="$MKFS_OPTIONS -F -O quota" _scratch_mkfs_blocksized 1024
> > 
> > I'd prefer to keep changing _scratch_mkfs_sized and
> > _scatch_mkfs_blocksized to use _scratch_mfks_ext4 as a separate
> > commit.  It makes sense to do that, but it does mean some behavioral
> > changes; specifically in the external log case,
> > "_scratch_mkfs_blocksized" will now create a file system using an
> > external log.  It's probably a good change, but there is some testing
> > I'd like to do first before makinig that change and I don't have time
> > for it.
> 
> Sure, totally agree :)
> 
> > 
> > > We just provide a helper to avoid someone forget 'dax', I don't object someone would
> > > like to "exclude dax" by explicit method :) So if you don't have much time to do this
> > > change, you can just do what you said above, then I'll take another time/chance to
> > > change _scratch_mkfs_* things.
> > 
> > Hmm, one thing which I noticed when searching through things.  xfs/432
> > does this:
> > 
> > _scratch_mkfs -b size=1k -n size=64k > "$seqres.full" 2>&1
> > 
> > So in {gce,kvm}-xfstests we have an exclude file entry in
> > .../fs/xfs/cfg/dax.exclude:
> > 
> > # This test formats a file system with a 1k block size, which is not
> > # compatible with DAX (at least with systems with a 4k page size).
> > xfs/432
> > 
> > ... in order to suppress a test failure.
> > 
> > Arguably we should add an "_exclude_scratch_mount_option dax" to this
> > test, as opposed to having an explicit test exclusion in my test
> > runner.  Or we figure out how to change xfs/432 to use
> > _scratch_mkfs_blocksized.  So there is a lot of cleanup that can be
> > done here, and I suspect we should do this work incrementally.  :-)
> 
> Thanks for finding that, yes, we can do a cleanup later, if you have
> a failed testing list welcome to provide to be references :)
> 
> > 
> > > Maybe we should think about let all _scratch_mkfs_*[1] helpers use _scratch_mkfs
> > > consistently. But that will change and affect too many things. I don't want to break
> > > fundamental code too much, might be better to let each fs help to change and test
> > > that bit by bit, when they need :)
> > 
> > Yep.   :-)
> > 
> > 						- Ted
> > 
> > P.S.  Here's something else that should probably be moved from my test
> > runner into xfstests.  Again from .../xfs/cfg/dax.exclude:
> > 
> > # mkfs.xfs options which now includes reflink, and reflink is not
> > # compatible with DAX
> > xfs/032
> > xfs/205
> > xfs/294
> 
> Yes, xfs reflink can't work with DAX now, I don't know if it *will*, maybe
> Darrick knows more details.

The DAX+reflink patches are almost ready to be merged - everything
has been reviewed and if I get updated patches in the next week or
two that address all the remaining concerns I'll probably merge
them.

> > Maybe _scratch_mkfs_xfs should be parsing the output of mkfs.xfs to
> > see if reflink is enabled, and then automatically asserting an
> > "_exclude_scratch_mount_option dax", perhaps?

The time to do this was about 4 years ago, not right now when we are
potentially within a couple of weeks of actually landing the support
for this functionality in the dev tree and need the fstests
infrastructure to explicitly support this configuration....

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

  reply	other threads:[~2022-04-28  5:58 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-27  0:52 [PATCH] ext4/054,ext4/055: don't run when using DAX Theodore Ts'o
2022-04-27  8:05 ` Zorro Lang
2022-04-27 14:53   ` Theodore Ts'o
2022-04-27 17:19     ` Zorro Lang
2022-04-27 19:44       ` Theodore Ts'o
2022-04-28  4:53         ` Zorro Lang
2022-04-28  5:58           ` Dave Chinner [this message]
2022-04-28  6:55             ` Zorro Lang
2022-04-29  1:10 ` Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220428055825.GU1544202@dread.disaster.area \
    --to=david@fromorbit.com \
    --cc=djwong@kernel.org \
    --cc=fstests@vger.kernel.org \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.