Re: [PATCH 6/8] nvme-fabrics: add a generic NVMe over Fabrics library
From: Keith Busch <hidden>
Date: 2016-06-15 19:16:03
Also in:
linux-nvme, linux-rdma
From: Keith Busch <hidden>
Date: 2016-06-15 19:16:03
Also in:
linux-nvme, linux-rdma
On Mon, Jun 13, 2016 at 04:45:26PM +0200, Christoph Hellwig wrote:
@@ -107,10 +108,19 @@ struct nvme_ctrl { u8 event_limit; u8 vwc; u32 vs; + u32 sgls; bool subsystem; unsigned long quirks; struct work_struct scan_work; struct work_struct async_event_work; + + /* Fabrics only */ + u16 sqsize; + u32 ioccsz; + u32 iorcsz; + u16 icdoff; + u16 maxcmd; + struct nvmf_ctrl_options *opts; };
The pci only stuff goes in 'struct nvme_dev' and embeds 'struct nvme_ctrl', but fabrics gets to use nvme_ctrl directly? If we need transport specifics for anything, like you have during nvme_init_identify, I think we should add function callbacks to nvme_ctrl_ops to set up those specifics, then we don't need 'is_fabrics' checks.