lkml.org 
[lkml]   [2019]   [Dec]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [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

\
 
 \ /
  Last update: 2019-12-20 02:56    [W:0.092 / U:4.580 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site