hw/block/nvme: support for multi-controller in subsystem
We have nvme-subsys and nvme devices mapped together. To support multi-controller scheme to this setup, controller identifier(id) has to be managed. Earlier, cntlid(controller id) used to be always 0 because we didn't have any subsystem scheme that controller id matters. This patch introduced 'cntlid' attribute to the nvme controller instance(NvmeCtrl) and make it allocated by the nvme-subsys device mapped to the controller. If nvme-subsys is not given to the controller, then it will always be 0 as it was. Added 'ctrls' array in the nvme-subsys instance to manage attached controllers to the subsystem with a limit(32). This patch didn't take list for the controllers to make it seamless with nvme-ns device. Signed-off-by: NMinwoo Im <minwoo.im.dev@gmail.com> Tested-by: NKlaus Jensen <k.jensen@samsung.com> Reviewed-by: NKlaus Jensen <k.jensen@samsung.com> Reviewed-by: NKeith Busch <kbusch@kernel.org> Signed-off-by: NKlaus Jensen <k.jensen@samsung.com>
Showing
想要评论请 注册 或 登录