qemu-patch-raspberry4/hw/block
Klaus Jensen 3754df04ec hw/block/nvme: fix zone management receive reporting too many zones
nvme_zone_mgmt_recv uses nvme_ns_nlbas() to get the number of LBAs in
the namespace and then calculates the number of zones to report by
incrementing slba with ZSZE until exceeding the number of LBAs as
returned by nvme_ns_nlbas().

This is bad because the namespace might be of such as size that some
LBAs are valid, but are not part of any zone, causing zone management
receive to report one additional (but non-existing) zone.

Fix this with a conventional loop on i < ns->num_zones instead.

Fixes: a479335bfa ("hw/block/nvme: Support Zoned Namespace Command Set")
Cc: Dmitry Fomichev <dmitry.fomichev@wdc.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
2021-03-18 12:34:51 +01:00
..
dataplane block: Separate blk_is_writable() and blk_supports_write_perm() 2021-01-27 20:45:20 +01:00
block.c block: make BlockConf size props 32bit and accept size suffixes 2020-06-17 14:53:40 +02:00
cdrom.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
ecc.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
fdc.c hw/block/fdc: Remove the check_media_rate property 2021-02-20 12:36:19 +01:00
hd-geometry.c block: Remove blk_pread_unthrottled() 2019-08-16 10:25:16 +02:00
Kconfig hw/block: Introduce TC58128 eeprom Kconfig entry 2021-03-06 16:18:42 +01:00
m25p80.c hw/block: m25p80: Add various ISSI flash information 2021-03-04 09:43:29 -05:00
meson.build hw/block/nvme: introduce nvme-subsys device 2021-03-09 11:00:55 +01:00
nand.c block: Separate blk_is_writable() and blk_supports_write_perm() 2021-01-27 20:45:20 +01:00
nvme-ns.c hw/block/nvme: support namespace detach 2021-03-09 11:00:57 +01:00
nvme-ns.h hw/block/nvme: support changed namespace asynchronous event 2021-03-09 11:00:58 +01:00
nvme-subsys.c hw/block/nvme: assert namespaces array indices 2021-03-18 12:34:51 +01:00
nvme-subsys.h hw/block/nvme: assert namespaces array indices 2021-03-18 12:34:51 +01:00
nvme.c hw/block/nvme: fix zone management receive reporting too many zones 2021-03-18 12:34:51 +01:00
nvme.h hw/block/nvme: assert namespaces array indices 2021-03-18 12:34:51 +01:00
onenand.c block: Separate blk_is_writable() and blk_supports_write_perm() 2021-01-27 20:45:20 +01:00
pflash_cfi01.c sysemu: Let VMChangeStateHandler take boolean 'running' argument 2021-03-09 23:13:57 +01:00
pflash_cfi02.c block: Separate blk_is_writable() and blk_supports_write_perm() 2021-01-27 20:45:20 +01:00
swim.c block: Separate blk_is_writable() and blk_supports_write_perm() 2021-01-27 20:45:20 +01:00
tc58128.c hw/sh4: Add missing license 2021-03-06 16:18:42 +01:00
trace-events hw/block/nvme: support Identify NS Attached Controller List 2021-03-09 11:00:58 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
vhost-user-blk.c vhost-user-blk: fix blkcfg->num_queues endianness 2021-03-08 14:55:19 +01:00
virtio-blk.c virtio-blk: Respect discard granularity 2021-03-15 09:48:53 +00:00
xen-block.c xen-block: fix reporting of discard feature 2021-02-15 15:10:14 +01:00
xen_blkif.h xen: Import other xen/io/*.h 2019-06-24 10:42:30 +01:00