All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: Christoph Hellwig <hch@lst.de>
Cc: zlang@kernel.org, luca.dimaio1@gmail.com,
	linux-xfs@vger.kernel.org, fstests@vger.kernel.org
Subject: Re: [PATCH] xfs/841: create a block device that must exist
Date: Wed, 4 Mar 2026 08:49:47 -0800	[thread overview]
Message-ID: <20260304164947.GX57948@frogsfrogsfrogs> (raw)
In-Reply-To: <20260304125502.GA13048@lst.de>

On Wed, Mar 04, 2026 at 01:55:02PM +0100, Christoph Hellwig wrote:
> On Tue, Mar 03, 2026 at 09:53:00AM -0800, Darrick J. Wong wrote:
> > On Mon, Feb 02, 2026 at 09:57:01AM +0100, Christoph Hellwig wrote:
> > > This test currently creates a block device node for /dev/ram0,
> > > which isn't guaranteed to exist, and can thus cause the test to
> > > fail with:
> > > 
> > > mkfs.xfs: cannot open $TEST_DIR/proto/blockdev: No such device or address
> > > 
> > > Instead, create a node for the backing device for $TEST_DIR, which must
> > > exist.
> > 
> > Hrm.  I'm still noticing regressions with this test, particularly when
> > the blocksize of the test filesystem is different from the block size
> > of the $IMG_FILE filesystem.
> 
> That is with the test in general, and not because of the block device
> fix, right?  Your description seems to indicate that, I'm just a bit
> confused as it is replying to my incremental patch.

Correct, I'm just complaining about x841 in general.  Your bdev fix
eliminated one of the sources of test failures.

> > So I started looking for fsblock discrepancies between
> > xfs_reproducible_test.img.[1-3] and noticed that EOF block contents are
> > different if the file being copied in has sparse holes in it that are
> > not aligned to the fsblock size of the new filesystem.
> 
> Oooh.
> 
> > Next, the region at 3k causes mkfs to re-call libxfs_file_write, but
> > this time it writes 3072 bytes of zeroes and 1024 bytes of copied-in
> > data, thus obliterating the first write.
> > 
> > That bug's on me,
> 
> Yeah.
> 
> 
> > and I'll fix it in writefile by rounding data_pos and
> > hole_pos outward as needed to be aligned to the block size of the copied
> > in filesystem.  And I'll update xfs/841 to compare $PROTO_DIR against
> > what's in the new filesystem.
> > 
> > That fixes the data corruption problem, but then the test still fails
> > because now the space map isn't the same between mkfs invocations.
> 
> Aarg.  But I'm glad we got a test for this feature that's uncovering
> old buggy/sloppy libxfs code..

Yeah.  I missed the detail that none of the existing protofile tests
actually tried to import sparse files, let alone checked the results.

I'll try to send the fix patches in a bit but QA blew up last night so I
should probably go figure out why there's suddenly log corruption, or if
some cloud thing got really FUBARd at 17:08 last night.

--D

      reply	other threads:[~2026-03-04 16:49 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-02  8:57 [PATCH] xfs/841: create a block device that must exist Christoph Hellwig
2026-02-02 18:54 ` Luca Di Maio
2026-02-03  8:28 ` Zorro Lang
2026-03-03 17:53 ` Darrick J. Wong
2026-03-04 12:55   ` Christoph Hellwig
2026-03-04 16:49     ` Darrick J. Wong [this message]

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=20260304164947.GX57948@frogsfrogsfrogs \
    --to=djwong@kernel.org \
    --cc=fstests@vger.kernel.org \
    --cc=hch@lst.de \
    --cc=linux-xfs@vger.kernel.org \
    --cc=luca.dimaio1@gmail.com \
    --cc=zlang@kernel.org \
    /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.