[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191220015338.GB7473@magnolia>
Date: Thu, 19 Dec 2019 17:53:39 -0800
From: "Darrick J. Wong" <darrick.wong@...cle.com>
To: "Martin K. Petersen" <martin.petersen@...cle.com>
Cc: Kirill Tkhai <ktkhai@...tuozzo.com>, axboe@...nel.dk,
linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-ext4@...r.kernel.org, tytso@....edu,
adilger.kernel@...ger.ca, ming.lei@...hat.com, osandov@...com,
jthumshirn@...e.de, minwoo.im.dev@...il.com, damien.lemoal@....com,
andrea.parri@...rulasolutions.com, hare@...e.com, tj@...nel.org,
ajay.joshi@....com, sagi@...mberg.me, dsterba@...e.com,
chaitanya.kulkarni@....com, bvanassche@....org,
dhowells@...hat.com, asml.silence@...il.com
Subject: Re: [PATCH RFC 1/3] block: Add support for REQ_OP_ASSIGN_RANGE
operation
On Thu, Dec 19, 2019 at 05:37:47PM -0500, Martin K. Petersen wrote:
>
> Kirill,
>
> > Hm. BLKDEV_ZERO_NOUNMAP is used in __blkdev_issue_write_zeroes() only.
> > So, do I understand right that we should the below two?:
> >
> > 1) Introduce a new flag BLKDEV_ZERO_ALLOCATE for
> > blkdev_issue_write_zeroes().
>
> > 2) Introduce a new flag REQ_NOZERO in enum req_opf.
>
> Something like that. If zeroing is a problem for you.
>
> Right now we offer the following semantics:
>
> Deallocate, no zeroing (discard)
>
> Optionally deallocate, zeroing (zeroout)
>
> Allocate, zeroing (zeroout + NOUNMAP)
>
> Some devices also implement a fourth option which would be:
>
> Anchor: Allocate, no zeroing
What happens if you anchor and then try to read the results? IO error?
(Yeah, I'm being lazy and not digging through SBC-3, sorry...)
--D
> > Won't this confuse a reader that we have blkdev_issue_write_zeroes(),
> > which does not write zeroes sometimes? Maybe we should rename
> > blkdev_issue_write_zeroes() in some more generic name?
>
> Maybe. The naming is what it is for hysterical raisins and reflects how
> things are implemented in the storage protocols. I wouldn't worry too
> much about that. We can rename things if need be but we shouldn't plumb
> an essentially identical operation through the block stack just to
> expose a different name at the top.
>
> --
> Martin K. Petersen Oracle Linux Engineering
Powered by blists - more mailing lists