From: Dave Chinner <david@fromorbit.com>
To: Christoph Hellwig <hch@lst.de>
Cc: Kent Overstreet <kent.overstreet@linux.dev>,
bfoster@redhat.com, linux-bcachefs@vger.kernel.org,
linux-fsdevel@vger.kernel.org
Subject: Re: [PATCH] bcachefs: fix incorrect usage of REQ_OP_FLUSH
Date: Tue, 23 Jan 2024 11:42:22 +1100 [thread overview]
Message-ID: <Za8LbtBgIZgj1mcx@dread.disaster.area> (raw)
In-Reply-To: <20240122184147.GA7072@lst.de>
On Mon, Jan 22, 2024 at 07:41:47PM +0100, Christoph Hellwig wrote:
> On Mon, Jan 22, 2024 at 12:42:24PM -0500, Kent Overstreet wrote:
> > updating my tests for the MD_FAULTY removal, then will do. Is there
> > anything you want me to look for?
>
> Nothing fancy. Just that you do data integrity operations and do
> not see an error.
>
> > considering most tests won't break or won't clearly break if flush/fua
> > is being dropped (even generic/388 was passing reliably, of course,
> > since virtual block devices aren't going to reorder writes...) maybe we
> > could do some print statement sanity checking...
>
> Well, xfstests is not very good about power fail testing, because it
> can't inject a power fail.. Which is a problem in it's own, but
> would need hardware power failing or at least some pretty good VM
> emulation of the same outside the scope of the actual xfstests runner.
We do actually have stuff in fstests that checks write vs flush
ordering as issued by the filesystem. We use dm-logwrites for
tracking the writes and flushes and to be able to replay arbitrary
groups of writes between flushes. generic/482 is one of those
tests.
These are the ordering problems that power failures expose,
so we do actually have tests that cover the same conditions that
pulling the power from a device would exercise.
I even wrote a debugging script (tools/dm-logwrite-replay) to
iterate write+fua groups in the test corpse to isolate the write
groups where the consistency failure occurs when doing work to
optimise flushes being issued by the XFS journal checkpoint writes.
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
prev parent reply other threads:[~2024-01-23 0:42 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-11 7:36 [PATCH] bcachefs: fix incorrect usage of REQ_OP_FLUSH Christoph Hellwig
2024-01-11 16:37 ` Kent Overstreet
2024-01-19 21:32 ` Kent Overstreet
2024-01-22 6:30 ` Christoph Hellwig
2024-01-22 6:37 ` Kent Overstreet
2024-01-22 6:50 ` Christoph Hellwig
2024-01-22 17:37 ` Kent Overstreet
2024-01-22 17:38 ` Christoph Hellwig
2024-01-22 17:42 ` Kent Overstreet
2024-01-22 18:41 ` Christoph Hellwig
2024-01-23 0:42 ` Dave Chinner [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=Za8LbtBgIZgj1mcx@dread.disaster.area \
--to=david@fromorbit.com \
--cc=bfoster@redhat.com \
--cc=hch@lst.de \
--cc=kent.overstreet@linux.dev \
--cc=linux-bcachefs@vger.kernel.org \
--cc=linux-fsdevel@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox