mbox series

[0/9] hw/nvme: refactor/cleanup

Message ID 20241216-nvme-queue-v1-0-4e42212b92f7@samsung.com (mailing list archive)
Headers show
Series hw/nvme: refactor/cleanup | expand

Message

Klaus Jensen Dec. 16, 2024, 12:53 p.m. UTC
Apart from some random small fixes here and there, the major thing here
is cleaning up how we handle command sets. Prior to this series, the
controller would not correctly validate namespace command sets against
CC.CSS. This is fixed here.

The most clean way of doing this (as far as I could tell) was to make
sure an nvme-subsys device exists (creating it if necessary). This
allows us to "store" the namespaces in the subsystem, using existing
functionality, and attach supported namespaces when the device is
started (instead of when the device is created/realized).

Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
---
Klaus Jensen (9):
      hw/nvme: always initialize a subsystem
      hw/nvme: make oacs dynamic
      hw/nvme: add knob for doorbell buffer config support
      nvme: fix iocs status code values
      hw/nvme: be compliant wrt. dsm processing limits
      hw/nvme: rework csi handling
      hw/nvme: only set command abort requested when cancelled due to Abort
      hw/nvme: set error status code explicitly for misc commands
      hw/nvme: remove nvme_aio_err()

 hw/nvme/ctrl.c       | 430 ++++++++++++++++++++++++++++-----------------------
 hw/nvme/ns.c         |  62 ++------
 hw/nvme/nvme.h       |  10 +-
 include/block/nvme.h |  22 ++-
 4 files changed, 276 insertions(+), 248 deletions(-)
---
base-commit: ca80a5d026a280762e0772615f1988db542b3ade
change-id: 20241216-nvme-queue-f4151c5d7507

Best regards,