mbox series

[V3,0/8] hw/block/nvme: support namespace attachment

Message ID 20210228161100.54015-1-minwoo.im.dev@gmail.com (mailing list archive)
Headers show
Series hw/block/nvme: support namespace attachment | expand

Message

Minwoo Im Feb. 28, 2021, 4:10 p.m. UTC
Hello,

This series supports namespace attachment: attach and detach.  This is
the third version of series with fixing command events and asynchronous
events based on Keith's review.

Since command effects for the namespace attachment command is added in
this version, we no longer need to rescan controller after namespace
attachment command.  Kernel will rescan the controller namespaces after
the command successfully done through passthru.

Please review.

Thanks,

Since V2:
  - Added command effects (namespace inventory changed) for namespace
    attach command.  (Keith)
  - Added [7/8] patch to support asynchronus event when namespace
    inventory is updated.  (Keith)
  - Added review and tested tag from Klaus to all the patches, but [6/8]
    and [7/8].

Since V1:
  - Fix to take 'ctrl' which is given from the command rather than 'n'.
    (Klaus)
  - Add a [7/7] patch to support CNS 12h Identify command (Namespace
    Attached Controller list).

Minwoo Im (8):
  hw/block/nvme: support namespace detach
  hw/block/nvme: fix namespaces array to 1-based
  hw/block/nvme: fix allocated namespace list to 256
  hw/block/nvme: support allocated namespace type
  hw/block/nvme: refactor nvme_select_ns_iocs
  hw/block/nvme: support namespace attachment command
  hw/block/nvme: support changed namespace asyncrohous event
  hw/block/nvme: support Identify NS Attached Controller List

 hw/block/nvme-ns.c     |   1 +
 hw/block/nvme-ns.h     |   1 +
 hw/block/nvme-subsys.h |  28 +++-
 hw/block/nvme.c        | 287 ++++++++++++++++++++++++++++++++++++-----
 hw/block/nvme.h        |  40 ++++++
 hw/block/trace-events  |   3 +
 include/block/nvme.h   |  14 ++
 7 files changed, 338 insertions(+), 36 deletions(-)