cgroups.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: anthony <antmbox@youngman.org.uk>
To: Yu Kuai <yukuai1@huaweicloud.com>, Christoph Hellwig <hch@infradead.org>
Cc: colyli@kernel.org, hare@suse.de, tieren@fnnas.com,
	axboe@kernel.dk, tj@kernel.org, josef@toxicpanda.com,
	song@kernel.org, akpm@linux-foundation.org, neil@brown.name,
	linux-block@vger.kernel.org, linux-kernel@vger.kernel.org,
	cgroups@vger.kernel.org, linux-raid@vger.kernel.org,
	yi.zhang@huawei.com, yangerkun@huawei.com,
	johnny.chenyi@huawei.com, John Garry <john.g.garry@oracle.com>,
	"yukuai (C)" <yukuai3@huawei.com>
Subject: Re: [PATCH RFC 4/7] md/raid10: convert read/write to use bio_submit_split()
Date: Tue, 26 Aug 2025 18:35:10 +0100	[thread overview]
Message-ID: <835fe512-4cff-4130-8b67-d30b91d95099@youngman.org.uk> (raw)
In-Reply-To: <fe595b6a-8653-d1aa-0ae3-af559107ac5d@huaweicloud.com>

On 26/08/2025 10:14, Yu Kuai wrote:
>> Umm, that's actually a red flag.  If a device guarantees atomic behavior
>> it can't just fail it.  So I think REQ_ATOMIC should be disallowed
>> for md raid with bad block tracking.
>>
> 
> I agree that do not look good, however, John explained while adding this
> that user should retry and fallback without REQ_ATOMIC to make things
> work as usual.

Whether a device promises atomic write is orthogonal to whether that 
write succeeds - it could fail for a whole host of reasons, so why can't 
"this is too big to be atomic" just be another reason for failing?

Yes you want to know *why* the write failed, if you can't pass that 
back, then you have a problem, but if you can pass back the error "too 
big for atomic write" then the caller can sort it out.

That then allows the driver - if it knows the block size of the device - 
to manage atomic writes (in the sense that it can refuse writes that are 
too large), even if the device doesn't claim to support it. It can just 
force the caller to submit small enough blocks.

Cheers,
Wol

  reply	other threads:[~2025-08-26 21:07 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-25  9:36 [PATCH RFC 0/7] block: fix disordered IO in the case recursive split Yu Kuai
2025-08-25  9:36 ` [PATCH RFC 1/7] block: export helper bio_submit_split() Yu Kuai
2025-08-25 10:53   ` Christoph Hellwig
2025-08-26  0:51     ` Yu Kuai
2025-08-25  9:36 ` [PATCH RFC 2/7] md/raid0: convert raid0_handle_discard() to use bio_submit_split() Yu Kuai
2025-08-25 10:57   ` Christoph Hellwig
2025-08-26  1:08     ` Yu Kuai
2025-08-26  7:54       ` Christoph Hellwig
2025-08-26  9:11         ` Yu Kuai
2025-08-25  9:36 ` [PATCH RFC 3/7] md/raid1: convert " Yu Kuai
2025-08-25 10:57   ` Christoph Hellwig
2025-08-26  1:09     ` Yu Kuai
2025-08-25  9:36 ` [PATCH RFC 4/7] md/raid10: convert read/write " Yu Kuai
2025-08-25 10:59   ` Christoph Hellwig
2025-08-26  1:13     ` Yu Kuai
2025-08-26  7:55       ` Christoph Hellwig
2025-08-26  9:14         ` Yu Kuai
2025-08-26 17:35           ` anthony [this message]
2025-08-27  7:31             ` Christoph Hellwig
2025-09-02  6:18               ` John Garry
2025-09-02  6:30                 ` Christoph Hellwig
2025-09-02  6:58                   ` John Garry
2025-09-02  8:25                     ` Yu Kuai
2025-09-02 14:46                       ` John Garry
2025-08-25  9:36 ` [PATCH RFC 5/7] md/raid5: convert " Yu Kuai
2025-08-25 11:00   ` Christoph Hellwig
2025-08-26  1:15     ` Yu Kuai
2025-08-26  7:56       ` Christoph Hellwig
2025-08-25  9:36 ` [PATCH RFC 6/7] md/md-linear: " Yu Kuai
2025-08-25  9:37 ` [PATCH RFC 7/7] block: fix disordered IO in the case recursive split Yu Kuai
2025-08-25 11:07   ` Christoph Hellwig
2025-08-26  1:20     ` Yu Kuai

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=835fe512-4cff-4130-8b67-d30b91d95099@youngman.org.uk \
    --to=antmbox@youngman.org.uk \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=cgroups@vger.kernel.org \
    --cc=colyli@kernel.org \
    --cc=hare@suse.de \
    --cc=hch@infradead.org \
    --cc=john.g.garry@oracle.com \
    --cc=johnny.chenyi@huawei.com \
    --cc=josef@toxicpanda.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-raid@vger.kernel.org \
    --cc=neil@brown.name \
    --cc=song@kernel.org \
    --cc=tieren@fnnas.com \
    --cc=tj@kernel.org \
    --cc=yangerkun@huawei.com \
    --cc=yi.zhang@huawei.com \
    --cc=yukuai1@huaweicloud.com \
    --cc=yukuai3@huawei.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;
as well as URLs for NNTP newsgroup(s).