OSDN Git Service

hw/block/nvme: split setup and register for namespace
authorMinwoo Im <minwoo.im.dev@gmail.com>
Sun, 17 Jan 2021 14:53:34 +0000 (23:53 +0900)
committerKlaus Jensen <k.jensen@samsung.com>
Mon, 8 Feb 2021 20:15:53 +0000 (21:15 +0100)
commit15d024d4aa9b73ff05604f6f6d998788d3ea26e2
tree0ba71ecbbe6c91d483bd672962cb361e2a531b78
parent337ccd7650cfab379bfba9eed54ad790e88ec62e
hw/block/nvme: split setup and register for namespace

In NVMe, namespace is being attached to process I/O.  We register NVMe
namespace to a controller via nvme_register_namespace() during
nvme_ns_setup().  This is main reason of receiving NvmeCtrl object
instance to this function to map the namespace to a controller.

To make namespace instance more independent, it should be split into two
parts: setup and register.  This patch split them into two differnt
parts, and finally nvme_ns_setup() does not have nothing to do with
NvmeCtrl instance at all.

This patch is a former patch to introduce NVMe subsystem scheme to the
existing design especially for multi-path.  In that case, it should be
split into two to make namespace independent from a controller.

Signed-off-by: Minwoo Im <minwoo.im.dev@gmail.com>
Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
hw/block/nvme-ns.c