John, please see inline...
Regards,
Dmitry
On Thu, 2019-07-25 at 13:58 -0400, John Snow wrote:
>
> On 7/23/19 6:19 PM, Dmitry Fomichev wrote:
> > Currently, attaching zoned block devices (i.e., storage devices
> > compliant to ZAC/ZBC standards) using several virtio method
On Fri, 2023-03-10 at 18:23 +0800, Sam Li wrote:
> Signed-off-by: Sam Li
> Reviewed-by: Stefan Hajnoczi
> Reviewed-by: Damien Le Moal
> Reviewed-by: Hannes Reinecke
Looks good to me.
Reviewed-by: Dmitry Fomichev
> ---
> include/block/b
example, to test zone_report, use following command:
> $ ./build/qemu-io --image-opts -n driver=host_device, filename=/dev/nullb0
> -c "zrp offset nr_zones"
>
> Signed-off-by: Sam Li
> Reviewed-by: Hannes Reinecke
> Reviewed-by: Stefan Hajnoczi
LGTM,
Reviewed-by: Dmitry Fomi
On Fri, 2023-03-10 at 18:24 +0800, Sam Li wrote:
> Signed-off-by: Sam Li
> Reviewed-by: Stefan Hajnoczi
With one small nit below,
Reviewed-by: Dmitry Fomichev
> ---
> block/file-posix.c | 3 +++
> block/trace-events | 2 ++
> 2 files changed, 5 insertions(+)
>
>
On Fri, 2023-03-10 at 18:31 +0800, Sam Li wrote:
> Since Linux doesn't have a user API to issue zone append operations to
> zoned devices from user space, the file-posix driver is modified to add
> zone append emulation using regular writes. To do this, the file-posix
> driver tracks the wp locatio
On Fri, 2023-03-10 at 18:31 +0800, Sam Li wrote:
> Signed-off-by: Sam Li
Looks good,
Reviewed-by: Dmitry Fomichev
> block/file-posix.c | 3 +++
> block/trace-events | 2 ++
> 2 files changed, 5 insertions(+)
>
> diff --git a/block/file-posix.c b/block/file-posix.c
n written in the zone.
>
> Signed-off-by: Sam Li
With nits above,
Reviewed-by: Dmitry Fomichev
> ---
> block/block-backend.c | 60 +++
> block/file-posix.c | 54 +---
> block/io.c
On Tue, 2022-10-18 at 16:56 +0800, Sam Li wrote:
> Dmitry Fomichev 于2022年10月17日周一 09:01写道:
> >
> > On Sun, 2022-10-16 at 23:05 +0800, Sam Li wrote:
> > > This patch extends virtio-blk emulation to handle zoned device commands
> > > by calling the new block layer
On Tue, 2022-10-18 at 16:41 +0800, Sam Li wrote:
> Dmitry Fomichev 于2022年10月17日周一 08:57写道:
> >
> > On Sun, 2022-10-16 at 22:51 +0800, Sam Li wrote:
> > > We have added new block layer APIs of zoned block devices.
> > > Test it with:
> > > Create a null
ation.
>
> Signed-off-by: Sam Li
> Reviewed-by: Hannes Reinecke
> Reviewed-by: Stefan Hajnoczi
> Reviewed-by: Damien Le Moal
Reviewed-by: Dmitry Fomichev
> ---
> block/file-posix.c | 124 ++-
> include/block/block_int-common.h
On Sun, 2022-10-16 at 23:05 +0800, Sam Li wrote:
> Use scripts/update-linux-headers.sh to update virtio-blk headers
> from Dmitry's "virtio-blk:add support for zoned block devices"
> linux patch. There is a link for more information:
> https://github.com/dmitry-fomichev/
ck layer APIs for zoned storage
> +-
> +QEMU block layer has three zoned storage model:
replace it with
+QEMU block layer supports three zoned storage models:
? with this nit,
Reviewed-by: Dmitry Fomichev
> +- BLK_Z_HM: The host-managed zoned model on
On Sun, 2022-10-16 at 22:51 +0800, Sam Li wrote:
> Signed-off-by: Sam Li
> Reviewed-by: Stefan Hajnoczi
> Reviewed-by: Damien Le Moal
> Reviewed-by: Hannes Reinecke
> ---
> include/block/block-common.h | 43
> 1 file changed, 43 insertions(+)
>
> diff --gi
On Sun, 2022-10-16 at 22:51 +0800, Sam Li wrote:
> Add a new zoned_host_device BlockDriver. The zoned_host_device option
> accepts only zoned host block devices. By adding zone management
> operations in this new BlockDriver, users can use the new block
> layer APIs including Report Zone and four z
s Reinecke
Reviewed-by: Dmitry Fomichev
> ---
> block/raw-format.c | 13 +
> 1 file changed, 13 insertions(+)
>
> diff --git a/block/raw-format.c b/block/raw-format.c
> index f337ac7569..bac43f1d25 100644
> --- a/block/raw-format.c
> +++ b/block/r
On Sun, 2022-10-16 at 22:51 +0800, Sam Li wrote:
> Putting zoned/non-zoned BlockDrivers on top of each other is not
> allowed.
>
> Signed-off-by: Sam Li
> Reviewed-by: Stefan Hajnoczi
> Reviewed-by: Hannes Reinecke
Reviewed-by: Dmitry Fomichev
> ---
> block.c
On Sun, 2022-10-16 at 22:51 +0800, Sam Li wrote:
> We have added new block layer APIs of zoned block devices.
> Test it with:
> Create a null_blk device, run each zone operation on it and see
> whether reporting right zone information.
change this to "whether the logs show the correct zone informa
On Sun, 2022-10-16 at 22:56 +0800, Sam Li wrote:
> Since Linux doesn't have a user API to issue zone append operations to
> zoned devices from user space, the file-posix driver is modified to add
> zone append emulation using regular writes. To do this, the file-posix
> driver tracks the wp locatio
On Sun, 2022-10-16 at 23:05 +0800, Sam Li wrote:
> This patch extends virtio-blk emulation to handle zoned device commands
> by calling the new block layer APIs to perform zoned device I/O on
> behalf of the guest. It supports Report Zone, four zone oparations (open,
> close, finish, reset), and Ap
On Sun, 2022-10-16 at 22:56 +0800, Sam Li wrote:
> A zone append command is a write operation that specifies the first
> logical block of a zone as the write position. When writing to a zoned
> block device using zone append, the byte offset of writes is pointing
> to the write pointer of that zone
Looks good with a small nit (see below),
Reviewed-by: Dmitry Fomichev
>
On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> Add missing fields in the Identify Controller and Identify Namespace
> data structures to bring them in line with NVMe v1.3.
Looks good,
Reviewed-by: Dmitry Fomichev
> On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> Fix a missing cpu_to conversion by moving conversion to just before
> returning instead.
>
> Signed-off-by: Klaus Jensen
> Suggested-by
Looks good,
Reviewed-by: Dmitry Fomichev
> On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> Add various additional tracing and streamline nvme_identify_ns and
> nvme_identify_nslist (they do not need to repeat the command, it is
> already
Looks good,
Reviewed-by: Dmitry Fomichev
On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> Add support for the Get Log Page command and basic implementations of
> the mandatory Error Information, SMART / Health Information and Firmware
> Slot
Looks good,
Reviewed-by: Dmitry Fomichev
On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> It might seem weird to implement this feature for an emulated device,
> but it is mandatory to support and the feature is useful for testing
> asynchronou
Looks good,
Reviewed-by: Dmitry Fomichev
On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> Since the device does not have any persistent state storage, no
> features are "saveable" and setting the Save (SV) field in any Set
> Features
Looks good,
Reviewed-by: Dmitry Fomichev
On Mon, 2020-07-06 at 08:13 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> The SUBNQN field is mandatory in NVM Express 1.3.
>
> Signed-off-by: Klaus Jensen
> ---
> hw/block/nvme.c | 5 +
> 1 file changed, 5 inserti
Looks good,
Reviewed-by: Dmitry Fomichev
On Mon, 2020-07-06 at 08:13 +0200, Klaus Jensen wrote:
> From: Klaus Jensen
>
> Reject the nsid broadcast value (0x) and 0xfffe in the
> Active Namespace ID list.
>
> Signed-off-by: Klaus Jensen
> ---
&g
> -Original Message-
> From: Klaus Jensen
> Sent: Wednesday, July 8, 2020 5:24 PM
> To: Dmitry Fomichev
> Cc: qemu-bl...@nongnu.org; qemu-devel@nongnu.org; f...@euphon.net;
> javier.g...@samsung.com; kw...@redhat.com; mre...@redhat.com;
> mlevi...@redhat.com; p
> *
> - * http://www.nvmexpress.org/resources/
> + * https://nvmexpress.org/developers/nvme-specification/
> */
>
> /**
> --
> 2.21.3
>
>
Reviewed-by: Dmitry Fomichev
> +typedef struct QEMU_PACKED NvmeRangeType {
> uint8_t type;
> uint8_t attributes;
> uint8_t rsvd2[14];
> @@ -817,13 +817,13 @@ typedef struct NvmeRangeType {
> uint8_t rsvd48[16];
> } NvmeRangeType;
>
> -typedef struct NvmeLBAF {
> +typedef struct QEMU_PACKED NvmeLBAF {
> uint16_tms;
> uint8_t ds;
> uint8_t rp;
> } NvmeLBAF;
>
> -typedef struct NvmeIdNs {
> +typedef struct QEMU_PACKED NvmeIdNs {
> uint64_tnsze;
> uint64_tncap;
> uint64_tnuse;
> --
> 2.21.3
>
>
Reviewed-by: Dmitry Fomichev
gt; uint32_tpmrswtp;
> -uint32_tpmrmsc;
> +uint64_t pmrmsc;
> } NvmeBar;
>
> enum NvmeCapShift {
> --
> 2.21.3
>
>
Reviewed-by: Dmitry Fomichev
ize = pow2ceil(sizeof(NvmeBar) +
> 2 * (n->params.max_ioqpairs + 1) * NVME_DB_SIZE);
> n->namespaces = g_new0(NvmeNamespace, n->num_namespaces);
> n->sq = g_new0(NvmeSQueue *, n->params.max_ioqpairs + 1);
> --
> 2.21.3
>
>
Reviewed-by: Dmitry Fomichev
. Several scan steps that were previously done only for
TYPE_DISK devices, are now performed for the SCSI devices having
TYPE_ZBC too.
Reported-by: Johannes Thumshirn
Signed-off-by: Dmitry Fomichev
---
hw/scsi/scsi-generic.c | 10 ++
include/scsi/constants.h | 1 +
2 files changed, 7
correctly handle
SG nodes.
The following two patches fix these problems.
Based-on: <20200424084338.26803-16-arm...@redhat.com>
Dmitry Fomichev (2):
file-posix: Correctly read max_segments of SG nodes
scsi-generic: Fix HM-zoned device scan
block/file-po
: 9103f1ceb46614b150bcbc3c9a4fbc72b47fedcc
Signed-off-by: Dmitry Fomichev
---
block/file-posix.c | 55 +++---
1 file changed, 32 insertions(+), 23 deletions(-)
diff --git a/block/file-posix.c b/block/file-posix.c
index 094e3b0212..f9e2424e8f 100644
--- a/block/file
Bump... Any feedback on this series?
> -Original Message-
> From: Dmitry Fomichev
> Sent: Wednesday, June 17, 2020 5:34 PM
> To: Kevin Wolf ; Keith Busch ;
> Philippe Mathieu-Daudé ; Maxim Levitsky
>
> Cc: qemu-bl...@nongnu.org; qemu-devel@nongnu.org; Matias Bjorli
> -Original Message-
> From: Klaus Jensen
> Sent: Tuesday, June 30, 2020 4:30 PM
> To: Niklas Cassel
> Cc: qemu-bl...@nongnu.org; Klaus Jensen ;
> qemu-devel@nongnu.org; Keith Busch ; Max Reitz
> ; Kevin Wolf ; Javier Gonzalez
> ; Maxim Levitsky ;
> Phil
LGTM,
Reviewed-by: Dmitry Fomichev
> -Original Message-
> From: Klaus Jensen
> Sent: Wednesday, March 10, 2021 4:54 AM
> To: qemu-devel@nongnu.org
> Cc: Stefan Hajnoczi ; Klaus Jensen
> ; Fam Zheng ; Max Reitz
> ; Kevin Wolf ; qemu-
> bl...@nongnu.org; Gollu App
on capability to the existing NVMe PCI device.
Based-on: <20201013174826.ga1049...@dhcp-10-100-145-180.wdl.wdc.com>
Dmitry Fomichev (9):
hw/block/nvme: Add Commands Supported and Effects log
hw/block/nvme: Generate namespace UUIDs
hw/block/nvme: Support Zoned Namespace Comman
avoid code duplication when
reporting zero-filled identify structures.
Signed-off-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c| 2 +
hw/block/nvme-ns.h| 1 +
hw/block/nvme.c | 198 +++---
hw/block/trace-events | 7 ++
inc
incoming admin and i/o commands are now only processed if their
corresponding support bits are set in this log. This provides an
easy way to control what commands to support and what not to
depending on set CC.CSS.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.h| 1 +
hw/block/nvme.c
Added brief descriptions of the new device properties that are
now available to users to configure features of Zoned Namespace
Command Set in the emulator.
This patch is for documentation only, no functionality change.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 41
patch, no change in functionality.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 191 +-
hw/block/trace-events | 3 +-
2 files changed, 114 insertions(+), 80 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block/nvme.c
index 41caf35430
if they are exceeded.
Signed-off-by: Hans Holmberg
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 28 -
hw/block/nvme-ns.h | 41 +++
hw/block/nvme.c| 99 ++
3 files changed, 166 insertions(+), 2 deletions(-)
diff -
is initialized.
Suggested-by: Klaus Jansen
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 1 +
hw/block/nvme-ns.h | 1 +
hw/block/nvme.c| 9 +
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/hw/block/nvme-ns.c b/hw/block/nvme-ns.c
index b69cdaf27e..de735eb9f3 100644
n-zero,
it becomes possible to assign extensions of that size to any Empty
zones. The default value for this property is 0, therefore setting
extensions is disabled by default.
Signed-off-by: Hans Holmberg
Signed-off-by: Dmitry Fomichev
Reviewed-by: Klaus Jensen
---
hw/block/nvme-ns.c| 14 ++
re expected to be much
smaller than the total number of zones on a drive.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 64 ++
hw/block/nvme-ns.h | 2 ++
2 files changed, 66 insertions(+)
diff --git a/hw/block/nvme-ns.c b/hw/block/nvme-ns.
gement command to be
supported if the namespace attachment command is supported.
Signed-off-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 1 +
hw/block/nvme-ns.h | 1 +
hw/block/nvme.c | 68
include/block/nvme
nvme_write() now handles WRITE, WRITE ZEROES and ZONE_APPEND.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 95 +--
hw/block/trace-events | 1 -
2 files changed, 28 insertions(+), 68 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block
-by: Ajay Joshi
Signed-off-by: Chaitanya Kulkarni
Signed-off-by: Matias Bjorling
Signed-off-by: Aravind Ramesh
Signed-off-by: Shin'ichiro Kawasaki
Signed-off-by: Adam Manzanares
Signed-off-by: Dmitry Fomichev
---
block/nvme.c | 2 +-
hw/block/nvme-ns.c| 193 +
> -Original Message-
> From: Keith Busch
> Sent: Tuesday, October 13, 2020 8:51 PM
> To: Dmitry Fomichev
> Cc: Klaus Jensen ; Kevin Wolf
> ; Philippe Mathieu-Daudé ;
> Maxim Levitsky ; Fam Zheng ;
> Alistair Francis ; Matias Bjorling
> ; Niklas Cassel ;
> -Original Message-
> From: Niklas Cassel
> Sent: Wednesday, October 14, 2020 7:59 AM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Alistair Francis
> ; Matias Bjorling ;
> -Original Message-
> From: Niklas Cassel
> Sent: Wednesday, October 14, 2020 9:01 AM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Alistair Francis
> ; Matias Bjorling ;
espace Types specifications can be downloaded by
visiting the following link -
https://nvmexpress.org/wp-content/uploads/NVM-Express-1.4-Ratified-TPs.zip
This patch series adds Namespace Types support and zoned namespace
emulation capability to the existing NVMe PCI device.
Based-on: <2
is initialized.
Suggested-by: Klaus Jansen
Signed-off-by: Dmitry Fomichev
Reviewed-by: Klaus Jansen
---
hw/block/nvme-ns.c | 1 +
hw/block/nvme-ns.h | 1 +
hw/block/nvme.c| 9 +
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/hw/block/nvme-ns.c b/hw/block/nvme-ns.c
i
incoming admin and i/o commands are now only processed if their
corresponding support bits are set in this log. This provides an
easy way to control what commands to support and what not to
depending on set CC.CSS.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.h| 1 +
hw/block/nvme.c
gement command to be
supported if the namespace attachment command is supported.
Signed-off-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 1 +
hw/block/nvme-ns.h | 1 +
hw/block/nvme.c | 68
include/block/nvme
avoid code duplication when
reporting zero-filled identify structures.
Signed-off-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c| 2 +
hw/block/nvme-ns.h| 1 +
hw/block/nvme.c | 169 +++---
hw/block/trace-events | 7 ++
inc
Added brief descriptions of the new device properties that are
now available to users to configure features of Zoned Namespace
Command Set in the emulator.
This patch is for documentation only, no functionality change.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 41
n-zero,
it becomes possible to assign extensions of that size to any Empty
zones. The default value for this property is 0, therefore setting
extensions is disabled by default.
Signed-off-by: Hans Holmberg
Signed-off-by: Dmitry Fomichev
Reviewed-by: Klaus Jensen
---
hw/block/nvme-ns.c| 14 ++
re expected to be much
smaller than the total number of zones on a drive.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 64 ++
hw/block/nvme-ns.h | 2 ++
2 files changed, 66 insertions(+)
diff --git a/hw/block/nvme-ns.c b/hw/block/nvme-ns.
if they are exceeded.
Signed-off-by: Hans Holmberg
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.c | 28 -
hw/block/nvme-ns.h | 41 +++
hw/block/nvme.c| 99 ++
3 files changed, 166 insertions(+), 2 deletions(-)
diff -
nvme_write() now handles WRITE, WRITE ZEROES and ZONE_APPEND.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 95 +--
hw/block/trace-events | 1 -
2 files changed, 28 insertions(+), 68 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block
-by: Ajay Joshi
Signed-off-by: Chaitanya Kulkarni
Signed-off-by: Matias Bjorling
Signed-off-by: Aravind Ramesh
Signed-off-by: Shin'ichiro Kawasaki
Signed-off-by: Adam Manzanares
Signed-off-by: Dmitry Fomichev
---
block/nvme.c | 2 +-
hw/block/nvme-ns.c| 193 +
patch, no change in functionality.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 191 +-
hw/block/trace-events | 3 +-
2 files changed, 114 insertions(+), 80 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block/nvme.c
index 3b9ea326d7
On Mon, 2021-01-25 at 08:25 +0100, Klaus Jensen wrote:
> On Jan 19 14:54, Klaus Jensen wrote:
> > From: Klaus Jensen
> >
> > Patch [1/2] fixes the zone append bug reported by Niklas. [2/2]
> > refactors the zone write check function to return status codes in a
> > different order if there are mul
e a look.
In my
testing, it works just as well :)
>
> In the process, also fix a missing endianness conversion for the zone
> append ALBA.
Great catch! This could be placed to a separate patch though...
A few more comments below.
Reported-by: Niklas Cassel
Cc:
ut open coding
ZA validation :)
Best regards,
Dmitry
>
> Cc: Dmitry Fomichev
> Signed-off-by: Klaus Jensen
> ---
> hw/block/nvme.c | 47 +++
> hw/block/trace-events | 5 +
> 2 files changed, 26 insertions(+), 26 deletions(-
On Mon, 2021-01-25 at 09:22 +0100, Klaus Jensen wrote:
> From: Gollu Appalanaidu
>
> Change status checks to align with the existing style and remove the
> explicit check against NVME_SUCCESS.
>
> Cc: Dmitry Fomichev
> Signed-off-by: Gollu Appalanaidu
> Reviewed-by: K
It is observed that with the existing code it is possible to keep
appending to a zone indefinitely. To fix, add the missing check to
verify that the zone append is not going to write beyond zone capacity.
Reported-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 8
These patches solve a few problems that exist in zoned Write
ans Zone Append validation code.
Dmitry Fomichev (3):
hw/block/nvme: Check for zone boundary during append
hw/block/nvme: Check zone state before checking boundaries
hw/block/nvme: Add trace events for zone boundary violations
: Dmitry Fomichev
---
hw/block/nvme.c | 21 ++---
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block/nvme.c
index 67538010ef..b712634c27 100644
--- a/hw/block/nvme.c
+++ b/hw/block/nvme.c
@@ -1138,13 +1138,8 @@ static uint16_t nvme_check_zone_write
Add three new trace events to be raised in case of zone boundary
violations during Read, Write(Zeroes) and Zone Append.
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme.c | 8 ++--
hw/block/trace-events | 3 +++
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/hw/block
> -Original Message-
> From: Keith Busch
> Sent: Wednesday, January 27, 2021 12:42 PM
> To: Klaus Jensen
> Cc: qemu-devel@nongnu.org; Kevin Wolf ; Max Reitz
> ; qemu-bl...@nongnu.org; Dmitry Fomichev
> ; Klaus Jensen
> Subject: Re: [PATCH 0/2] hw/block/nvme: zone
pen or we end up with an invalid MAR/MOR configuration. This
> is an artifact of the parameters not being zeroes-based like in the
> spec.
>
> Cc: Dmitry Fomichev
> Reported-by: Gollu Appalanaidu
> Signed-off-by: Klaus Jensen
Reviewed-by: Dmitry Fomichev
> ---
>
> v
Implicitly and Explicitly Open zones can be closed by Close Zone
management function. This got broken by a recent commit and now such
commands fail with Invalid Zone State Transition status.
Modify nvm_zrm_close() function to make Close Zone work correctly.
Signed-off-by: Dmitry Fomichev
Fixes
> -Original Message-
> From: Klaus Jensen
> Sent: Monday, February 8, 2021 12:54 PM
> To: Philippe Mathieu-Daudé
> Cc: Keith Busch ; Dmitry Fomichev
> ; Kevin Wolf ; Max Reitz
> ; qemu-devel@nongnu.org; Niklas Cassel
>
> Subject: Re: [PATCH] hw/block/nvme: fi
small due to the host configuring the device for
> an even larger page size, convert the trace point in nvme_start_ctrl to
> an NVME_GUEST_ERR such that this is logged by QEMU instead of only
> traced.
>
> Reported-by: "i...@dantalion.nl"
> Cc: Dmitry Fomichev
> Signed
> -Original Message-
> From: Klaus Jensen
> Sent: Monday, October 19, 2020 7:43 AM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Niklas Cassel
> ; Damien Le Moal ;
> qem
> -Original Message-
> From: Klaus Jensen
> Sent: Monday, October 19, 2020 4:16 PM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Niklas Cassel
> ; Damien Le Moal ;
> qem
> -Original Message-
> From: Keith Busch
> Sent: Tuesday, October 20, 2020 8:36 AM
> To: Klaus Jensen
> Cc: Dmitry Fomichev ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Niklas Cassel
> ; Damien Le Moal ;
> qem
> -Original Message-
> From: Klaus Jensen
> Sent: Tuesday, October 20, 2020 4:21 AM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Niklas Cassel
> ; Damien Le Moal ;
> qem
> -Original Message-
> From: Klaus Jensen
> Sent: Monday, October 19, 2020 4:54 PM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Niklas Cassel
> ; Damien Le Moal ;
> qem
> -Original Message-
> From: Klaus Jensen
> Sent: Wednesday, October 21, 2020 6:26 AM
> To: Dmitry Fomichev
> Cc: Keith Busch ; Klaus Jensen
> ; Kevin Wolf ; Philippe
> Mathieu-Daudé ; Maxim Levitsky
> ; Fam Zheng ; Niklas Cassel
> ; Damien Le Moal ;
> qem
Hi Klaus,
Thank you for your review! Please see replies below...
On Thu, 2020-11-12 at 20:36 +0100, Klaus Jensen wrote:
> Hi Dmitry,
>
> I know you posted v10, but my comments should be relevant to that as
> well.
>
> On Nov 5 11:53, Dmitry Fomichev wrote:
> > The
functionality.
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
Acked-by: Klaus Jensen
---
hw/block/nvme.c | 107 --
hw/block/trace-events | 3 +-
2 files changed, 74 insertions(+), 36 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block
NS command variants.
The reason for not hooking up this command completely is because the
NVMe specification requires the namespace management command to be
supported if the namespace attachment command is supported.
Signed-off-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
Reviewed-by: K
Define values and structures that are needed to support Zoned
Namespace Command Set (NVMe TP 4053).
Signed-off-by: Dmitry Fomichev
---
include/block/nvme.h | 114 ++-
1 file changed, 113 insertions(+), 1 deletion(-)
diff --git a/include/block/nvme.h b
n-zero, it becomes possible to assign extensions
of that size to any Empty zones. The default value for this property
is 0, therefore setting extensions is disabled by default.
Signed-off-by: Hans Holmberg
Signed-off-by: Dmitry Fomichev
Reviewed-by: Klaus Jensen
Reviewed-by: Niklas Cassel
---
hw/
incoming admin and i/o commands are now only processed if their
corresponding support bits are set in this log. This provides an
easy way to control what commands to support and what not to
depending on set CC.CSS.
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
---
hw/block/nvme-ns.h| 1
is initialized.
Suggested-by: Klaus Jensen
Signed-off-by: Dmitry Fomichev
Reviewed-by: Klaus Jensen
Reviewed-by: Keith Busch
Reviewed-by: Niklas Cassel
---
hw/block/nvme-ns.h | 1 +
hw/block/nvme-ns.c | 1 +
hw/block/nvme.c| 9 +
3 files changed, 7 insertions(+), 4 deletions(-)
diff -
avoid code duplication when
reporting zero-filled identify structures.
Signed-off-by: Niklas Cassel
Signed-off-by: Dmitry Fomichev
Reviewed-by: Keith Busch
---
hw/block/nvme-ns.h| 1 +
include/block/nvme.h | 64 ++
hw/block/nvme-ns.c| 2 +
hw/block/nvme.c
Move write processing to nvme_do_write() that now handles both WRITE
and WRITE ZEROES. Both nvme_write() and nvme_write_zeroes() become
inline helper functions.
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
Acked-by: Klaus Jensen
---
hw/block/nvme.c | 78
Added brief descriptions of the new device properties that are
now available to users to configure features of Zoned Namespace
Command Set in the emulator.
This patch is for documentation only, no functionality change.
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
---
hw/block
-by: Ajay Joshi
Signed-off-by: Chaitanya Kulkarni
Signed-off-by: Matias Bjorling
Signed-off-by: Aravind Ramesh
Signed-off-by: Shin'ichiro Kawasaki
Signed-off-by: Adam Manzanares
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
---
hw/block/nvme-ns.h| 52 +++
hw/block/nvme
returned if they are exceeded.
Signed-off-by: Hans Holmberg
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
---
hw/block/nvme-ns.h| 41 +++
hw/block/nvme-ns.c| 31 ++-
hw/block/nvme.c | 92 +++
hw/blo
having
multiple command sets per namespace.
Both ZNS and Namespace Types specifications can be downloaded by
visiting the following link -
https://nvmexpress.org/wp-content/uploads/NVM-Express-1.4-Ratified-TPs.zip
This patch series adds Namespace Types support and zoned namespace
emulation capabili
re expected to be much
smaller than the total number of zones on a drive.
Signed-off-by: Dmitry Fomichev
Reviewed-by: Niklas Cassel
---
hw/block/nvme-ns.h | 2 ++
hw/block/nvme-ns.c | 53 ++
2 files changed, 55 insertions(+)
diff --git a/hw/block/nvme-n
steps
that are made different between reset and shutdown are that BAR.CC is not
reset to zero upon the shutdown and namespace data is flushed to
backing storage as a part of shutdown handling, but not upon reset.
Suggested-by: Klaus Jensen
Signed-off-by: Dmitry Fomichev
---
hw/block/nvme-ns.h | 2
1 - 100 of 314 matches
Mail list logo