Re: [PATCH 0/3] zone-append support in aio and io-uring
From: Christoph Hellwig <hch@infradead.org>
Date: 2020-06-19 07:56:30
Also in:
io-uring, linux-fsdevel, lkml
From: Christoph Hellwig <hch@infradead.org>
Date: 2020-06-19 07:56:30
Also in:
io-uring, linux-fsdevel, lkml
On Thu, Jun 18, 2020 at 11:22:58PM +0530, Kanchan Joshi wrote:
I was thinking of raw block-access to zone device rather than pristine file abstraction.
Why?
And in that context, semantics, at this point, are unchanged (i.e. same as direct writes) while flexibility of async-interface gets added. Synchronous-writes on single-zone sound fine, but synchronous-appends on single-zone do not sound that fine.
Where does synchronous access come into play?
quoted
What could be a useful addition is a way for O_APPEND/RWF_APPEND writes to report where they actually wrote, as that comes close to Zone Append while still making sense at our usual abstraction level for file I/O.Thanks for suggesting this. O and RWF_APPEND may not go well with block access as end-of-file will be picked from dev inode.
No, but they go really well with zonefs.
But perhaps a new flag like RWF_ZONE_APPEND can help to transform writes (aio or uring) into append without introducing new opcodes.
I don't think this is a good idea. Zones are a concept for a a very specific class of zoned devices. Trying to shoe-horn this into the byte address files / whole device abstraction not only is ugly conceptually but also adds the overhead for it to the VFS. And O_APPEND that returns the written position OTOH makes total sense at the file level as well and not just for raw zoned devices.