[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH v2 00/18] hw/block/nvme: Support Namespace Types and Zoned Na
From: |
Dmitry Fomichev |
Subject: |
RE: [PATCH v2 00/18] hw/block/nvme: Support Namespace Types and Zoned Namespace Command Set |
Date: |
Mon, 29 Jun 2020 20:26:54 +0000 |
Bump... Any feedback on this series?
> -----Original Message-----
> From: Dmitry Fomichev <dmitry.fomichev@wdc.com>
> Sent: Wednesday, June 17, 2020 5:34 PM
> To: Kevin Wolf <kwolf@redhat.com>; Keith Busch <kbusch@kernel.org>;
> Philippe Mathieu-Daudé <philmd@redhat.com>; Maxim Levitsky
> <mlevitsky@redhat.com>
> Cc: qemu-block@nongnu.org; qemu-devel@nongnu.org; Matias Bjorling
> <Matias.Bjorling@wdc.com>; Damien Le Moal <Damien.LeMoal@wdc.com>;
> Niklas Cassel <Niklas.Cassel@wdc.com>; Dmitry Fomichev
> <Dmitry.Fomichev@wdc.com>
> Subject: [PATCH v2 00/18] hw/block/nvme: Support Namespace Types and
> Zoned Namespace Command Set
>
> v2: rebased on top of block-next/block branch
>
> Zoned Namespace (ZNS) Command Set is a newly introduced command set
> published by the NVM Express, Inc. organization as TP 4053. The main
> design goals of ZNS are to provide hardware designers the means to
> reduce NVMe controller complexity and to allow achieving a better I/O
> latency and throughput. SSDs that implement this interface are
> commonly known as ZNS SSDs.
>
> This command set is implementing a zoned storage model, similarly to
> ZAC/ZBC. As such, there is already support in Linux, allowing one to
> perform the majority of tasks needed for managing ZNS SSDs.
>
> The Zoned Namespace Command Set relies on another TP, known as
> Namespace Types (NVMe TP 4056), which introduces support for 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 capability to the existing NVMe PCI driver.
>
> The patchset is organized as follows -
>
> The first several patches are preparatory and are added to allow for
> an easier review of the subsequent commits. The group of patches that
> follows adds NS Types support with only NVM Command Set being
> available. Finally, the last group of commits makes definitions and
> adds new code to support Zoned Namespace Command Set.
>
> Based-on: <20200609205944.3549240-1-eblake@redhat.com>
>
> Ajay Joshi (1):
> hw/block/nvme: Define 64 bit cqe.result
>
> Dmitry Fomichev (15):
> hw/block/nvme: Move NvmeRequest has_sg field to a bit flag
> hw/block/nvme: Clean up unused AER definitions
> hw/block/nvme: Add Commands Supported and Effects log
> hw/block/nvme: Define trace events related to NS Types
> hw/block/nvme: Make Zoned NS Command Set definitions
> hw/block/nvme: Define Zoned NS Command Set trace events
> hw/block/nvme: Support Zoned Namespace Command Set
> hw/block/nvme: Introduce max active and open zone limits
> hw/block/nvme: Simulate Zone Active excursions
> hw/block/nvme: Set Finish/Reset Zone Recommended attributes
> hw/block/nvme: Generate zone AENs
> hw/block/nvme: Support Zone Descriptor Extensions
> hw/block/nvme: Add injection of Offline/Read-Only zones
> hw/block/nvme: Use zone metadata file for persistence
> hw/block/nvme: Document zoned parameters in usage text
>
> Niklas Cassel (2):
> hw/block/nvme: Introduce the Namespace Types definitions
> hw/block/nvme: Add support for Namespace Types
>
> block/nvme.c | 2 +-
> block/trace-events | 2 +-
> hw/block/nvme.c | 2316
> ++++++++++++++++++++++++++++++++++++++++-
> hw/block/nvme.h | 228 +++-
> hw/block/trace-events | 56 +
> include/block/nvme.h | 282 ++++-
> 6 files changed, 2820 insertions(+), 66 deletions(-)
>
> --
> 2.21.0
- [PATCH v2 09/18] hw/block/nvme: Define Zoned NS Command Set trace events, (continued)
- [PATCH v2 09/18] hw/block/nvme: Define Zoned NS Command Set trace events, Dmitry Fomichev, 2020/06/17
- [PATCH v2 10/18] hw/block/nvme: Support Zoned Namespace Command Set, Dmitry Fomichev, 2020/06/17
- [PATCH v2 12/18] hw/block/nvme: Simulate Zone Active excursions, Dmitry Fomichev, 2020/06/17
- [PATCH v2 11/18] hw/block/nvme: Introduce max active and open zone limits, Dmitry Fomichev, 2020/06/17
- [PATCH v2 13/18] hw/block/nvme: Set Finish/Reset Zone Recommended attributes, Dmitry Fomichev, 2020/06/17
- [PATCH v2 15/18] hw/block/nvme: Support Zone Descriptor Extensions, Dmitry Fomichev, 2020/06/17
- [PATCH v2 14/18] hw/block/nvme: Generate zone AENs, Dmitry Fomichev, 2020/06/17
- [PATCH v2 16/18] hw/block/nvme: Add injection of Offline/Read-Only zones, Dmitry Fomichev, 2020/06/17
- [PATCH v2 18/18] hw/block/nvme: Document zoned parameters in usage text, Dmitry Fomichev, 2020/06/17
- [PATCH v2 17/18] hw/block/nvme: Use zone metadata file for persistence, Dmitry Fomichev, 2020/06/17
- RE: [PATCH v2 00/18] hw/block/nvme: Support Namespace Types and Zoned Namespace Command Set,
Dmitry Fomichev <=