[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <340e4306-4442-4276-b420-6fee8ed97a7e@oracle.com>
Date: Thu, 12 Sep 2024 15:48:09 +0100
From: John Garry <john.g.garry@...cle.com>
To: Christoph Hellwig <hch@....de>
Cc: axboe@...nel.dk, song@...nel.org, yukuai3@...wei.com, kbusch@...nel.org,
sagi@...mberg.me, James.Bottomley@...senPartnership.com,
martin.petersen@...cle.com, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-raid@...r.kernel.org,
linux-nvme@...ts.infradead.org, linux-scsi@...r.kernel.org
Subject: Re: [PATCH RFC 4/4] md/raid0: Atomic write support
On 12/09/2024 14:18, Christoph Hellwig wrote:
> On Tue, Sep 03, 2024 at 03:07:48PM +0000, John Garry wrote:
>> if (sectors < bio_sectors(bio)) {
>> - struct bio *split = bio_split(bio, sectors, GFP_NOIO,
>> + struct bio *split;
>> +
>> + if (bio->bi_opf & REQ_ATOMIC)
>> + return false;
> I guess this is the erroring out when attempting to split the request.
I actually now think that I should change bio_split() to return NULL for
splitting a REQ_ATOMIC, like what do for ZONE_APPEND - calling
bio_split() like this is a common pattern in md RAID personalities.
However, none of the md RAID code check for a NULL split, which they
really should, so I can make that change also.
> Can you add a comment to explain that and why it can't happen for the
> normal I/O patterns?
ok, will do.
Cheers,
John
Powered by blists - more mailing lists