Re: [PATCH v10 1/4] docs/qcow2: add the zoned format feature
On Thu, May 14, 2026 at 8:47 PM Stefan Hajnoczi wrote: > > On Sun, May 10, 2026 at 07:50:56PM +0200, Sam Li wrote: > > Add the specs for the zoned format feature of the qcow2 driver. > > The qcow2 file then can emulate real zoned devices, either passed > > through by virtio-blk device or NVMe ZNS drive to the guest > > given zoned information. > > > > Signed-off-by: Sam Li > > Reviewed-by: Stefan Hajnoczi > > --- > > docs/system/qemu-block-drivers.rst.inc | 42 ++ > > 1 file changed, 42 insertions(+) Hi Stefan, Thanks for reviewing! > > > > diff --git a/docs/system/qemu-block-drivers.rst.inc > > b/docs/system/qemu-block-drivers.rst.inc > > index 384e95ba76..5066c943d5 100644 > > --- a/docs/system/qemu-block-drivers.rst.inc > > +++ b/docs/system/qemu-block-drivers.rst.inc > > @@ -172,6 +172,48 @@ This section describes each format and the options > > that are supported for it. > > filename`` to check if the NOCOW flag is set or not (Capital 'C' is > > NOCOW flag). > > > > + .. option:: zone.mode > > +If this is set to ``host-managed``, the image is an emulated zoned > > +block device. This option is only valid to emulated zoned device files. > > + > > + .. option:: zone.size > > + > > +The size of a zone in bytes. The device is divided into zones of this > > +size with the exception of the last zone, which may be smaller. > > This option is required when zone.mode=host-managed? > > It would be useful to indicate whether each option listed here is > required or has a default value when absent. Makes sense. I'll set the default to 256MB. > > > + > > + .. option:: zone.capacity > > + > > +The initial capacity value, in bytes, for all zones. The capacity must > > +be less than or equal to zone size. If the last zone is smaller, then > > +its capacity is capped. > > + > > +The zone capacity is per zone and may be different between zones in > > real > > +devices. QCow2 sets all zones to the same capacity. > > This defaults to zone.size? Yes. > > > + > > + .. option:: zone.conventional_zones > > + > > +The number of conventional zones of the zoned device. > > This defaults to (size + size.size - 1) / zone.size? Or just zero, meaning all zones are sequential write required. > > > + > > + .. option:: zone.max_active_zones > > + > > +The limit of the zones with implicit open, explicit open or closed > > state. > > + > > +The max active zones must be less or equal to the number of SWR > > +(sequential write required) zones of the device. > > This defaults to (size + size.size - 1) / zone.size? Or maybe zero, meaning no limit. Although it does have a limit lower than nr_zones. > > > + > > + .. option:: zone.max_open_zones > > + > > +The maximal allowed open zones. The max open zones must not be larger > > than > > +the max active zones. > > + > > +If the limits of open zones or active zones are equal to the number of > > +SWR zones, then it is the same as having no limits. > > This defaults to max_active_zones? Yes, if max_active_zone is set, otherwise zero. > > > + .. option:: zone.max_append_bytes > > + > > +The number of bytes in a zone append request that can be issued to the > > +device. It must be 512-byte aligned and less than the zone capacity. > > Is there a default? Yes, it can set to 64 KB. > > > + > > .. program:: image-formats > > .. option:: qed > > > > -- > > 2.43.0 > >
Re: [PATCH v10 1/4] docs/qcow2: add the zoned format feature
On Sun, May 10, 2026 at 07:50:56PM +0200, Sam Li wrote: > Add the specs for the zoned format feature of the qcow2 driver. > The qcow2 file then can emulate real zoned devices, either passed > through by virtio-blk device or NVMe ZNS drive to the guest > given zoned information. > > Signed-off-by: Sam Li > Reviewed-by: Stefan Hajnoczi > --- > docs/system/qemu-block-drivers.rst.inc | 42 ++ > 1 file changed, 42 insertions(+) > > diff --git a/docs/system/qemu-block-drivers.rst.inc > b/docs/system/qemu-block-drivers.rst.inc > index 384e95ba76..5066c943d5 100644 > --- a/docs/system/qemu-block-drivers.rst.inc > +++ b/docs/system/qemu-block-drivers.rst.inc > @@ -172,6 +172,48 @@ This section describes each format and the options that > are supported for it. > filename`` to check if the NOCOW flag is set or not (Capital 'C' is > NOCOW flag). > > + .. option:: zone.mode > +If this is set to ``host-managed``, the image is an emulated zoned > +block device. This option is only valid to emulated zoned device files. > + > + .. option:: zone.size > + > +The size of a zone in bytes. The device is divided into zones of this > +size with the exception of the last zone, which may be smaller. This option is required when zone.mode=host-managed? It would be useful to indicate whether each option listed here is required or has a default value when absent. > + > + .. option:: zone.capacity > + > +The initial capacity value, in bytes, for all zones. The capacity must > +be less than or equal to zone size. If the last zone is smaller, then > +its capacity is capped. > + > +The zone capacity is per zone and may be different between zones in real > +devices. QCow2 sets all zones to the same capacity. This defaults to zone.size? > + > + .. option:: zone.conventional_zones > + > +The number of conventional zones of the zoned device. This defaults to (size + size.size - 1) / zone.size? > + > + .. option:: zone.max_active_zones > + > +The limit of the zones with implicit open, explicit open or closed state. > + > +The max active zones must be less or equal to the number of SWR > +(sequential write required) zones of the device. This defaults to (size + size.size - 1) / zone.size? > + > + .. option:: zone.max_open_zones > + > +The maximal allowed open zones. The max open zones must not be larger > than > +the max active zones. > + > +If the limits of open zones or active zones are equal to the number of > +SWR zones, then it is the same as having no limits. This defaults to max_active_zones? > + .. option:: zone.max_append_bytes > + > +The number of bytes in a zone append request that can be issued to the > +device. It must be 512-byte aligned and less than the zone capacity. Is there a default? > + > .. program:: image-formats > .. option:: qed > > -- > 2.43.0 > signature.asc Description: PGP signature
[PATCH v10 1/4] docs/qcow2: add the zoned format feature
Add the specs for the zoned format feature of the qcow2 driver. The qcow2 file then can emulate real zoned devices, either passed through by virtio-blk device or NVMe ZNS drive to the guest given zoned information. Signed-off-by: Sam Li Reviewed-by: Stefan Hajnoczi --- docs/system/qemu-block-drivers.rst.inc | 42 ++ 1 file changed, 42 insertions(+) diff --git a/docs/system/qemu-block-drivers.rst.inc b/docs/system/qemu-block-drivers.rst.inc index 384e95ba76..5066c943d5 100644 --- a/docs/system/qemu-block-drivers.rst.inc +++ b/docs/system/qemu-block-drivers.rst.inc @@ -172,6 +172,48 @@ This section describes each format and the options that are supported for it. filename`` to check if the NOCOW flag is set or not (Capital 'C' is NOCOW flag). + .. option:: zone.mode +If this is set to ``host-managed``, the image is an emulated zoned +block device. This option is only valid to emulated zoned device files. + + .. option:: zone.size + +The size of a zone in bytes. The device is divided into zones of this +size with the exception of the last zone, which may be smaller. + + .. option:: zone.capacity + +The initial capacity value, in bytes, for all zones. The capacity must +be less than or equal to zone size. If the last zone is smaller, then +its capacity is capped. + +The zone capacity is per zone and may be different between zones in real +devices. QCow2 sets all zones to the same capacity. + + .. option:: zone.conventional_zones + +The number of conventional zones of the zoned device. + + .. option:: zone.max_active_zones + +The limit of the zones with implicit open, explicit open or closed state. + +The max active zones must be less or equal to the number of SWR +(sequential write required) zones of the device. + + .. option:: zone.max_open_zones + +The maximal allowed open zones. The max open zones must not be larger than +the max active zones. + +If the limits of open zones or active zones are equal to the number of +SWR zones, then it is the same as having no limits. + + .. option:: zone.max_append_bytes + +The number of bytes in a zone append request that can be issued to the +device. It must be 512-byte aligned and less than the zone capacity. + .. program:: image-formats .. option:: qed -- 2.43.0
