On 08.03.2022 05:42, Damien Le Moal wrote:
On 3/8/22 00:15, Keith Busch wrote:
On Mon, Mar 07, 2022 at 03:35:12PM +0100, Javier González wrote:
As I mentioned in the last reply to to Dave, the main concern for me
at the moment is supporting arbitrary zone sizes in the kernel. If we
can agree on a path towards that, we can definitely commit to focus on
ZoneFS and implement support for it on the different places we
maintain in user-space.
FWIW, the block layer doesn't require pow2 chunk_sectors anymore, so it
looks like that requirement for zone sizes can be relaxed, too.
As long as:
1) Userspace does not break (really not sure about that one...)
2) No performance regression: the overhead of using multiplications &
divisions for sector to zone conversions must be acceptable for ZNS (it
will not matter for SMR HDDs)
Good. The emulation patches we sent should cover this.
All in kernel users of zoned devices will need some patching (zonefs,
btrfs, f2fs). Some will not work anymore (e.g. f2fs) and others will
need different constraints (btrfs needs 64K aligned zones). Not all
zoned devices will be usable anymore, and I am not sure if this
degradation in the support provided is acceptable.
We will do the work for btrfs (already have a prototype) and for zonefs
(we need to look into it). F2FS will use the emulation layer for now;
only !PO2 devices will pay the price. We will add a knob in the block
layer so that F2FS can force enable the emulation.