* [PULL 0/7] hw/nvme updates
@ 2023-06-28 9:24 Klaus Jensen
2023-06-28 9:24 ` [PULL 1/7] hw/nvme: add comment for nvme-ns properties Klaus Jensen
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:24 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Klaus Jensen
From: Klaus Jensen <k.jensen@samsung.com>
Hi,
The following changes since commit 4329d049d5b8d4af71c6b399d64a6d1b98856318:
Merge tag 'pull-tcg-20230626' of https://gitlab.com/rth7680/qemu into staging (2023-06-26 17:40:38 +0200)
are available in the Git repository at:
https://gitlab.com/birkelund/qemu.git tags/nvme-next-pull-request
for you to fetch changes up to e409c9057b55e890a6e5f70386a36932a5137bcf:
docs: update hw/nvme documentation for TP4146 (2023-06-28 11:22:49 +0200)
----------------------------------------------------------------
hw/nvme updates
Small set of fixes and some updates for the FDP support.
-----BEGIN PGP SIGNATURE-----
iQEzBAABCgAdFiEEUigzqnXi3OaiR2bATeGvMW1PDekFAmSb/D4ACgkQTeGvMW1P
DemziAf/eQfjnVr57A+Kglf8J15MCW0GiArbHCJfcl9vf0HPP/iY1c9V4cCZjTLG
vkkkU6W+TFaYALGOVgAldHWC7OCpOi7GHrlqRJDuw86d2dyLDn/l+GQin/rVoocD
fzF2gRVQU4x9qzmjRUikVhRzZbrB4F/AH6QQ8EV3wx2wrljyusItEGe53FEuCugx
pwtKrG990188+UCT1ofr2JYhLq3OmYQi3o2fWgzMp9jP+NeROgKaevWG4UEhFonG
CdeL9BMlSRAfrdR1gTvZpG2mFsrroeBCCjXcrKSwkAxBqpMJDSLvbGqoGJo6kDWm
c9x82Zy2/wVuQaDk+atmcTF1+Pddgw==
=//ks
-----END PGP SIGNATURE-----
----------------------------------------------------------------
Klaus Jensen (4):
hw/nvme: fix verification of number of ruhis
hw/nvme: verify uniqueness of reclaim unit handle identifiers
hw/nvme: add placement handle list ranges
docs: update hw/nvme documentation for TP4146
Minwoo Im (3):
hw/nvme: add comment for nvme-ns properties
hw/nvme: consider COPY command in nvme_aio_err
hw/nvme: check maximum copy length (MCL) for COPY
docs/system/devices/nvme.rst | 37 +++++++++++++++++++++++-
hw/nvme/ctrl.c | 34 +++++++++++++++++++++-
hw/nvme/ns.c | 55 ++++++++++++++++++++++++++++--------
hw/nvme/subsys.c | 6 ++--
4 files changed, 117 insertions(+), 15 deletions(-)
--
2.41.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PULL 1/7] hw/nvme: add comment for nvme-ns properties
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
@ 2023-06-28 9:24 ` Klaus Jensen
2023-06-28 9:24 ` [PULL 2/7] hw/nvme: consider COPY command in nvme_aio_err Klaus Jensen
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:24 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Minwoo Im, Klaus Jensen
From: Minwoo Im <minwoo.im@samsung.com>
Add more comments of existing properties for nvme-ns device.
Signed-off-by: Minwoo Im <minwoo.im@samsung.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ctrl.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
index fd917fcda1f5..020f37a780e0 100644
--- a/hw/nvme/ctrl.c
+++ b/hw/nvme/ctrl.c
@@ -43,7 +43,14 @@
* subsys=<subsys_id>
* -device nvme-ns,drive=<drive_id>,bus=<bus_name>,nsid=<nsid>,\
* zoned=<true|false[optional]>, \
- * subsys=<subsys_id>,detached=<true|false[optional]>
+ * subsys=<subsys_id>,shared=<true|false[optional]>, \
+ * detached=<true|false[optional]>, \
+ * zoned.zone_size=<N[optional]>, \
+ * zoned.zone_capacity=<N[optional]>, \
+ * zoned.descr_ext_size=<N[optional]>, \
+ * zoned.max_active=<N[optional]>, \
+ * zoned.max_open=<N[optional]>, \
+ * zoned.cross_read=<true|false[optional]>
*
* Note cmb_size_mb denotes size of CMB in MB. CMB is assumed to be at
* offset 0 in BAR2 and supports only WDS, RDS and SQS for now. By default, the
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PULL 2/7] hw/nvme: consider COPY command in nvme_aio_err
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
2023-06-28 9:24 ` [PULL 1/7] hw/nvme: add comment for nvme-ns properties Klaus Jensen
@ 2023-06-28 9:24 ` Klaus Jensen
2023-06-28 9:24 ` [PULL 3/7] hw/nvme: check maximum copy length (MCL) for COPY Klaus Jensen
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:24 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Minwoo Im, Klaus Jensen
From: Minwoo Im <minwoo.im@samsung.com>
If we don't have NVME_CMD_COPY consideration in the switch statement in
nvme_aio_err(), it will go to have NVME_INTERNAL_DEV_ERROR and
`req->status` will be ovewritten to it. During the aio context, it
might set the NVMe status field like NVME_CMD_SIZE_LIMIT, but it's
overwritten in the nvme_aio_err().
Add consideration for the NVME_CMD_COPY not to overwrite the status at
the end of the function.
Signed-off-by: Minwoo Im <minwoo.im@samsung.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ctrl.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
index 020f37a780e0..e031c2250a84 100644
--- a/hw/nvme/ctrl.c
+++ b/hw/nvme/ctrl.c
@@ -1755,6 +1755,7 @@ static void nvme_aio_err(NvmeRequest *req, int ret)
case NVME_CMD_WRITE:
case NVME_CMD_WRITE_ZEROES:
case NVME_CMD_ZONE_APPEND:
+ case NVME_CMD_COPY:
status = NVME_WRITE_FAULT;
break;
default:
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PULL 3/7] hw/nvme: check maximum copy length (MCL) for COPY
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
2023-06-28 9:24 ` [PULL 1/7] hw/nvme: add comment for nvme-ns properties Klaus Jensen
2023-06-28 9:24 ` [PULL 2/7] hw/nvme: consider COPY command in nvme_aio_err Klaus Jensen
@ 2023-06-28 9:24 ` Klaus Jensen
2023-06-28 9:24 ` [PULL 4/7] hw/nvme: fix verification of number of ruhis Klaus Jensen
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:24 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Minwoo Im, Klaus Jensen
From: Minwoo Im <minwoo.im@samsung.com>
MCL(Maximum Copy Length) in the Identify Namespace data structure limits
the number of LBAs to be copied inside of the controller. We've not
checked it at all, so added the check with returning the proper error
status.
Signed-off-by: Minwoo Im <minwoo.im@samsung.com>
Reviewed-by: Klaus Jensen <k.jensen@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ctrl.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c
index e031c2250a84..355668bdf87e 100644
--- a/hw/nvme/ctrl.c
+++ b/hw/nvme/ctrl.c
@@ -2855,6 +2855,25 @@ static void nvme_copy_source_range_parse(void *ranges, int idx, uint8_t format,
}
}
+static inline uint16_t nvme_check_copy_mcl(NvmeNamespace *ns,
+ NvmeCopyAIOCB *iocb, uint16_t nr)
+{
+ uint32_t copy_len = 0;
+
+ for (int idx = 0; idx < nr; idx++) {
+ uint32_t nlb;
+ nvme_copy_source_range_parse(iocb->ranges, idx, iocb->format, NULL,
+ &nlb, NULL, NULL, NULL);
+ copy_len += nlb + 1;
+ }
+
+ if (copy_len > ns->id_ns.mcl) {
+ return NVME_CMD_SIZE_LIMIT | NVME_DNR;
+ }
+
+ return NVME_SUCCESS;
+}
+
static void nvme_copy_out_completed_cb(void *opaque, int ret)
{
NvmeCopyAIOCB *iocb = opaque;
@@ -3167,6 +3186,11 @@ static uint16_t nvme_copy(NvmeCtrl *n, NvmeRequest *req)
}
}
+ status = nvme_check_copy_mcl(ns, iocb, nr);
+ if (status) {
+ goto invalid;
+ }
+
iocb->req = req;
iocb->ret = 0;
iocb->nr = nr;
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PULL 4/7] hw/nvme: fix verification of number of ruhis
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
` (2 preceding siblings ...)
2023-06-28 9:24 ` [PULL 3/7] hw/nvme: check maximum copy length (MCL) for COPY Klaus Jensen
@ 2023-06-28 9:24 ` Klaus Jensen
2023-06-28 9:24 ` [PULL 5/7] hw/nvme: verify uniqueness of reclaim unit handle identifiers Klaus Jensen
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:24 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Klaus Jensen, Jesper Wendel Devantier
From: Klaus Jensen <k.jensen@samsung.com>
Fix a off-by-one error when verifying the number of reclaim unit handle
identifiers specified in fdp.ruhs. To make the fix nicer, move the
verification of the fdp.nruh parameter to an earlier point.
Fixes: 73064edfb864 ("hw/nvme: flexible data placement emulation")
Reviewed-by: Jesper Wendel Devantier <j.devantier@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ns.c | 4 +---
hw/nvme/subsys.c | 6 ++++--
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/hw/nvme/ns.c b/hw/nvme/ns.c
index 547c0b154312..050fdaf50fcd 100644
--- a/hw/nvme/ns.c
+++ b/hw/nvme/ns.c
@@ -438,9 +438,7 @@ static bool nvme_ns_init_fdp(NvmeNamespace *ns, Error **errp)
/* parse the placement handle identifiers */
while ((token = qemu_strsep(&p, ";")) != NULL) {
- ns->fdp.nphs += 1;
- if (ns->fdp.nphs > NVME_FDP_MAXPIDS ||
- ns->fdp.nphs == endgrp->fdp.nruh) {
+ if (ns->fdp.nphs++ == endgrp->fdp.nruh) {
error_setg(errp, "too many placement handles");
free(r);
return false;
diff --git a/hw/nvme/subsys.c b/hw/nvme/subsys.c
index 24ddec860e45..d30bb8bfd5b4 100644
--- a/hw/nvme/subsys.c
+++ b/hw/nvme/subsys.c
@@ -158,8 +158,10 @@ static bool nvme_subsys_setup_fdp(NvmeSubsystem *subsys, Error **errp)
endgrp->fdp.nrg = subsys->params.fdp.nrg;
- if (!subsys->params.fdp.nruh) {
- error_setg(errp, "fdp.nruh must be non-zero");
+ if (!subsys->params.fdp.nruh ||
+ subsys->params.fdp.nruh > NVME_FDP_MAXPIDS) {
+ error_setg(errp, "fdp.nruh must be non-zero and less than %u",
+ NVME_FDP_MAXPIDS);
return false;
}
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PULL 5/7] hw/nvme: verify uniqueness of reclaim unit handle identifiers
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
` (3 preceding siblings ...)
2023-06-28 9:24 ` [PULL 4/7] hw/nvme: fix verification of number of ruhis Klaus Jensen
@ 2023-06-28 9:24 ` Klaus Jensen
2023-06-28 9:25 ` [PULL 6/7] hw/nvme: add placement handle list ranges Klaus Jensen
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:24 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Klaus Jensen, Jesper Wendel Devantier
From: Klaus Jensen <k.jensen@samsung.com>
Verify that a reclaim unit handle identifier is only specified once in
fdp.ruhs.
Fixes: 73064edfb864 ("hw/nvme: flexible data placement emulation")
Reviewed-by: Jesper Wendel Devantier <j.devantier@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ns.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/hw/nvme/ns.c b/hw/nvme/ns.c
index 050fdaf50fcd..c4ea2033bb1c 100644
--- a/hw/nvme/ns.c
+++ b/hw/nvme/ns.c
@@ -453,6 +453,17 @@ static bool nvme_ns_init_fdp(NvmeNamespace *ns, Error **errp)
free(r);
+ /* verify that the ruhids are unique */
+ for (unsigned int i = 0; i < ns->fdp.nphs; i++) {
+ for (unsigned int j = i + 1; j < ns->fdp.nphs; j++) {
+ if (ruhids[i] == ruhids[j]) {
+ error_setg(errp, "duplicate reclaim unit handle identifier: %u",
+ ruhids[i]);
+ return false;
+ }
+ }
+ }
+
ph = ns->fdp.phs = g_new(uint16_t, ns->fdp.nphs);
ruhid = ruhids;
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PULL 6/7] hw/nvme: add placement handle list ranges
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
` (4 preceding siblings ...)
2023-06-28 9:24 ` [PULL 5/7] hw/nvme: verify uniqueness of reclaim unit handle identifiers Klaus Jensen
@ 2023-06-28 9:25 ` Klaus Jensen
2023-06-28 9:25 ` [PULL 7/7] docs: update hw/nvme documentation for TP4146 Klaus Jensen
2023-06-28 13:49 ` [PULL 0/7] hw/nvme updates Richard Henderson
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:25 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Klaus Jensen, Jesper Wendel Devantier
From: Klaus Jensen <k.jensen@samsung.com>
Allow the placement handles to be specified as ranges, i.e.
`fdp.ruhs=1:3-5` will attempt to assign ruh 1, 3, 4 and 5 to the
namespace.
Reviewed-by: Jesper Wendel Devantier <j.devantier@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
hw/nvme/ns.c | 42 +++++++++++++++++++++++++++++++++---------
1 file changed, 33 insertions(+), 9 deletions(-)
diff --git a/hw/nvme/ns.c b/hw/nvme/ns.c
index c4ea2033bb1c..44aba8f4d9cf 100644
--- a/hw/nvme/ns.c
+++ b/hw/nvme/ns.c
@@ -400,8 +400,9 @@ static bool nvme_ns_init_fdp(NvmeNamespace *ns, Error **errp)
NvmeRuHandle *ruh;
uint8_t lbafi = NVME_ID_NS_FLBAS_INDEX(ns->id_ns.flbas);
g_autofree unsigned int *ruhids = NULL;
- unsigned int *ruhid;
- char *r, *p, *token;
+ unsigned int n, m, *ruhid;
+ const char *endptr, *token;
+ char *r, *p;
uint16_t *ph;
if (!ns->params.fdp.ruhs) {
@@ -438,17 +439,40 @@ static bool nvme_ns_init_fdp(NvmeNamespace *ns, Error **errp)
/* parse the placement handle identifiers */
while ((token = qemu_strsep(&p, ";")) != NULL) {
- if (ns->fdp.nphs++ == endgrp->fdp.nruh) {
- error_setg(errp, "too many placement handles");
- free(r);
- return false;
- }
-
- if (qemu_strtoui(token, NULL, 0, ruhid++) < 0) {
+ if (qemu_strtoui(token, &endptr, 0, &n) < 0) {
error_setg(errp, "cannot parse reclaim unit handle identifier");
free(r);
return false;
}
+
+ m = n;
+
+ /* parse range */
+ if (*endptr == '-') {
+ token = endptr + 1;
+
+ if (qemu_strtoui(token, NULL, 0, &m) < 0) {
+ error_setg(errp, "cannot parse reclaim unit handle identifier");
+ free(r);
+ return false;
+ }
+
+ if (m < n) {
+ error_setg(errp, "invalid reclaim unit handle identifier range");
+ free(r);
+ return false;
+ }
+ }
+
+ for (; n <= m; n++) {
+ if (ns->fdp.nphs++ == endgrp->fdp.nruh) {
+ error_setg(errp, "too many placement handles");
+ free(r);
+ return false;
+ }
+
+ *ruhid++ = n;
+ }
}
free(r);
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PULL 7/7] docs: update hw/nvme documentation for TP4146
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
` (5 preceding siblings ...)
2023-06-28 9:25 ` [PULL 6/7] hw/nvme: add placement handle list ranges Klaus Jensen
@ 2023-06-28 9:25 ` Klaus Jensen
2023-06-28 13:49 ` [PULL 0/7] hw/nvme updates Richard Henderson
7 siblings, 0 replies; 9+ messages in thread
From: Klaus Jensen @ 2023-06-28 9:25 UTC (permalink / raw)
To: qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen, Klaus Jensen, Jesper Wendel Devantier
From: Klaus Jensen <k.jensen@samsung.com>
Update documentation for TP4146 ("Flexible Data Placement") emulation.
Reviewed-by: Jesper Wendel Devantier <j.devantier@samsung.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
docs/system/devices/nvme.rst | 37 +++++++++++++++++++++++++++++++++++-
1 file changed, 36 insertions(+), 1 deletion(-)
diff --git a/docs/system/devices/nvme.rst b/docs/system/devices/nvme.rst
index 30f841ef6222..a8bb8d729cd2 100644
--- a/docs/system/devices/nvme.rst
+++ b/docs/system/devices/nvme.rst
@@ -212,6 +212,41 @@ The namespace may be configured with additional parameters
the minimum memory page size (CAP.MPSMIN). The default value (``0``)
has this property inherit the ``mdts`` value.
+Flexible Data Placement
+-----------------------
+
+The device may be configured to support TP4146 ("Flexible Data Placement") by
+configuring it (``fdp=on``) on the subsystem::
+
+ -device nvme-subsys,id=nvme-subsys-0,nqn=subsys0,fdp=on,fdp.nruh=16
+
+The subsystem emulates a single Endurance Group, on which Flexible Data
+Placement will be supported. Also note that the device emulation deviates
+slightly from the specification, by always enabling the "FDP Mode" feature on
+the controller if the subsystems is configured for Flexible Data Placement.
+
+Enabling Flexible Data Placement on the subsyste enables the following
+parameters:
+
+``fdp.nrg`` (default: ``1``)
+ Set the number of Reclaim Groups.
+
+``fdp.nruh`` (default: ``0``)
+ Set the number of Reclaim Unit Handles. This is a mandatory paramater and
+ must be non-zero.
+
+``fdp.runs`` (default: ``96M``)
+ Set the Reclaim Unit Nominal Size. Defaults to 96 MiB.
+
+Namespaces within this subsystem may requests Reclaim Unit Handles::
+
+ -device nvme-ns,drive=nvm-1,fdp.ruhs=RUHLIST
+
+The ``RUHLIST`` is a semicolon separated list (i.e. ``0;1;2;3``) and may
+include ranges (i.e. ``0;8-15``). If no reclaim unit handle list is specified,
+the controller will assign the controller-specified reclaim unit handle to
+placement handle identifier 0.
+
Metadata
--------
@@ -320,4 +355,4 @@ controller are:
.. code-block:: console
- echo 0000:01:00.1 > /sys/bus/pci/drivers/nvme/bind
\ No newline at end of file
+ echo 0000:01:00.1 > /sys/bus/pci/drivers/nvme/bind
--
2.41.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PULL 0/7] hw/nvme updates
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
` (6 preceding siblings ...)
2023-06-28 9:25 ` [PULL 7/7] docs: update hw/nvme documentation for TP4146 Klaus Jensen
@ 2023-06-28 13:49 ` Richard Henderson
7 siblings, 0 replies; 9+ messages in thread
From: Richard Henderson @ 2023-06-28 13:49 UTC (permalink / raw)
To: Klaus Jensen, qemu-devel, Peter Maydell
Cc: Fam Zheng, Stefan Hajnoczi, Kevin Wolf, Keith Busch,
Philippe Mathieu-Daudé, qemu-block, Hanna Reitz,
Klaus Jensen
On 6/28/23 11:24, Klaus Jensen wrote:
> From: Klaus Jensen<k.jensen@samsung.com>
>
> Hi,
>
> The following changes since commit 4329d049d5b8d4af71c6b399d64a6d1b98856318:
>
> Merge tag 'pull-tcg-20230626' ofhttps://gitlab.com/rth7680/qemu into staging (2023-06-26 17:40:38 +0200)
>
> are available in the Git repository at:
>
> https://gitlab.com/birkelund/qemu.git tags/nvme-next-pull-request
>
> for you to fetch changes up to e409c9057b55e890a6e5f70386a36932a5137bcf:
>
> docs: update hw/nvme documentation for TP4146 (2023-06-28 11:22:49 +0200)
>
> ----------------------------------------------------------------
> hw/nvme updates
>
> Small set of fixes and some updates for the FDP support.
> -----BEGIN PGP SIGNATURE-----
Applied, thanks. Please update https://wiki.qemu.org/ChangeLog/8.1 as appropriate.
r~
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2023-06-28 13:49 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-28 9:24 [PULL 0/7] hw/nvme updates Klaus Jensen
2023-06-28 9:24 ` [PULL 1/7] hw/nvme: add comment for nvme-ns properties Klaus Jensen
2023-06-28 9:24 ` [PULL 2/7] hw/nvme: consider COPY command in nvme_aio_err Klaus Jensen
2023-06-28 9:24 ` [PULL 3/7] hw/nvme: check maximum copy length (MCL) for COPY Klaus Jensen
2023-06-28 9:24 ` [PULL 4/7] hw/nvme: fix verification of number of ruhis Klaus Jensen
2023-06-28 9:24 ` [PULL 5/7] hw/nvme: verify uniqueness of reclaim unit handle identifiers Klaus Jensen
2023-06-28 9:25 ` [PULL 6/7] hw/nvme: add placement handle list ranges Klaus Jensen
2023-06-28 9:25 ` [PULL 7/7] docs: update hw/nvme documentation for TP4146 Klaus Jensen
2023-06-28 13:49 ` [PULL 0/7] hw/nvme updates Richard Henderson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).