public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
From: Matthew Wilcox <willy@infradead.org>
To: Qu Wenruo <wqu@suse.com>
Cc: Johannes Thumshirn <Johannes.Thumshirn@wdc.com>,
	"hch@infradead.org" <hch@infradead.org>,
	Kanchan Joshi <joshi.k@samsung.com>,
	Theodore Ts'o <tytso@mit.edu>,
	"lsf-pc@lists.linux-foundation.org"
	<lsf-pc@lists.linux-foundation.org>,
	"linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>,
	"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
	"linux-nvme@lists.infradead.org" <linux-nvme@lists.infradead.org>,
	"linux-block@vger.kernel.org" <linux-block@vger.kernel.org>,
	"josef@toxicpanda.com" <josef@toxicpanda.com>
Subject: Re: [LSF/MM/BPF TOPIC] File system checksum offload
Date: Mon, 3 Feb 2025 08:26:33 +0000	[thread overview]
Message-ID: <Z6B9uSTQK8s-i9TM@casper.infradead.org> (raw)
In-Reply-To: <eaec853d-eda6-4ee9-abb6-e2fa32f54f5c@suse.com>

On Mon, Feb 03, 2025 at 06:46:49PM +1030, Qu Wenruo wrote:
> It's pretty common to reproduce, just start a VM with an image on btrfs, set
> the VM cache mode to none (aka, using direct IO), and run XFS/EXT4 inside
> the VM, run some fsstress it should cause btrfs to hit data csum mismatch
> false alerts.
> 
> The root cause is the content change during direct IO, and XFS/EXT4 doesn't
> wait for folio writeback before dirtying the folio (if no AS_STABLE_WRITES
> set).
> That's a valid optimization, but that will cause contents change.

XFS honours the bdev flag:

static inline void xfs_update_stable_writes(struct xfs_inode *ip)
{
        if (bdev_stable_writes(xfs_inode_buftarg(ip)->bt_bdev))
                mapping_set_stable_writes(VFS_I(ip)->i_mapping);
        else
                mapping_clear_stable_writes(VFS_I(ip)->i_mapping);
}

so this is a block layer issue if it's not set.

> (I know there is the AS_STABLE_WRITES, but I'm not sure if qemu will pass
> that flag to virtio block devices inside the VM)

  reply	other threads:[~2025-02-03  8:26 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20250130092400epcas5p1a3a9d899583e9502ed45fe500ae8a824@epcas5p1.samsung.com>
2025-01-30  9:15 ` [LSF/MM/BPF TOPIC] File system checksum offload Kanchan Joshi
2025-01-30 14:28   ` Theodore Ts'o
2025-01-30 20:39     ` [Lsf-pc] " Martin K. Petersen
2025-01-31  4:40       ` Theodore Ts'o
2025-01-31  7:07         ` Christoph Hellwig
2025-01-31 13:11     ` Kanchan Joshi
2025-02-03  7:47       ` Johannes Thumshirn
2025-02-03  7:56         ` Christoph Hellwig
2025-02-03  8:04           ` Johannes Thumshirn
2025-02-03  8:06             ` hch
2025-02-03  8:16             ` Qu Wenruo
2025-02-03  8:26               ` Matthew Wilcox [this message]
2025-02-03  8:30                 ` hch
2025-02-03  8:36                   ` Qu Wenruo
2025-02-03  8:40                     ` hch
2025-02-03  8:51                       ` Qu Wenruo
2025-02-03  8:57                         ` hch
2025-02-03  8:26               ` hch
2025-02-03 13:27               ` Kanchan Joshi
2025-02-03 23:17                 ` Qu Wenruo
2025-02-04  5:48                   ` hch
2025-02-04  5:16                 ` hch
2025-03-18  7:06                   ` Kanchan Joshi
2025-03-18  8:07                     ` hch
2025-03-19 18:06                       ` Kanchan Joshi
2025-03-20  5:48                         ` hch
2025-02-03 13:32         ` Kanchan Joshi

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=Z6B9uSTQK8s-i9TM@casper.infradead.org \
    --to=willy@infradead.org \
    --cc=Johannes.Thumshirn@wdc.com \
    --cc=hch@infradead.org \
    --cc=josef@toxicpanda.com \
    --cc=joshi.k@samsung.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-nvme@lists.infradead.org \
    --cc=lsf-pc@lists.linux-foundation.org \
    --cc=tytso@mit.edu \
    --cc=wqu@suse.com \
    /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