Message ID | 20210519111340.20613-3-smalin@marvell.com |
---|---|
State | Superseded |
Headers | show |
Series | NVMeTCP Offload ULP and QEDN Device Driver | expand |
On 5/19/21 6:13 AM, Shai Malin wrote: > From: Arie Gershberg <agershberg@marvell.com> > > Move NVMF_ALLOWED_OPTS and NVMF_REQUIRED_OPTS definitions > to header file, so it can be used by the different HW devices. > > NVMeTCP offload devices might have different limitations of the > allowed options, for example, a device that does not support all the > queue types. With tcp and rdma, only the nvme-tcp and nvme-rdma layers > handle those attributes and the HW devices do not create any limitations > for the allowed options. > > An alternative design could be to add separate fields in nvme_tcp_ofld_ops > such as max_hw_sectors and max_segments that we already have in this > series. > > Acked-by: Igor Russkikh <irusskikh@marvell.com> > Signed-off-by: Arie Gershberg <agershberg@marvell.com> > Signed-off-by: Prabhakar Kushwaha <pkushwaha@marvell.com> > Signed-off-by: Omkar Kulkarni <okulkarni@marvell.com> > Signed-off-by: Michal Kalderon <mkalderon@marvell.com> > Signed-off-by: Ariel Elior <aelior@marvell.com> > Signed-off-by: Shai Malin <smalin@marvell.com> > --- > drivers/nvme/host/fabrics.c | 7 ------- > drivers/nvme/host/fabrics.h | 7 +++++++ > 2 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/drivers/nvme/host/fabrics.c b/drivers/nvme/host/fabrics.c > index a2bb7fc63a73..e1e05aa2fada 100644 > --- a/drivers/nvme/host/fabrics.c > +++ b/drivers/nvme/host/fabrics.c > @@ -942,13 +942,6 @@ void nvmf_free_options(struct nvmf_ctrl_options *opts) > } > EXPORT_SYMBOL_GPL(nvmf_free_options); > > -#define NVMF_REQUIRED_OPTS (NVMF_OPT_TRANSPORT | NVMF_OPT_NQN) > -#define NVMF_ALLOWED_OPTS (NVMF_OPT_QUEUE_SIZE | NVMF_OPT_NR_IO_QUEUES | \ > - NVMF_OPT_KATO | NVMF_OPT_HOSTNQN | \ > - NVMF_OPT_HOST_ID | NVMF_OPT_DUP_CONNECT |\ > - NVMF_OPT_DISABLE_SQFLOW |\ > - NVMF_OPT_FAIL_FAST_TMO) > - > static struct nvme_ctrl * > nvmf_create_ctrl(struct device *dev, const char *buf) > { > diff --git a/drivers/nvme/host/fabrics.h b/drivers/nvme/host/fabrics.h > index d7f7974dc208..ce7fe3a842b1 100644 > --- a/drivers/nvme/host/fabrics.h > +++ b/drivers/nvme/host/fabrics.h > @@ -68,6 +68,13 @@ enum { > NVMF_OPT_FAIL_FAST_TMO = 1 << 20, > }; > > +#define NVMF_REQUIRED_OPTS (NVMF_OPT_TRANSPORT | NVMF_OPT_NQN) > +#define NVMF_ALLOWED_OPTS (NVMF_OPT_QUEUE_SIZE | NVMF_OPT_NR_IO_QUEUES | \ > + NVMF_OPT_KATO | NVMF_OPT_HOSTNQN | \ > + NVMF_OPT_HOST_ID | NVMF_OPT_DUP_CONNECT |\ > + NVMF_OPT_DISABLE_SQFLOW |\ > + NVMF_OPT_FAIL_FAST_TMO) > + > /** > * struct nvmf_ctrl_options - Used to hold the options specified > * with the parsing opts enum. > Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com> -- Himanshu Madhani Oracle Linux Engineering
> From: Arie Gershberg <agershberg@marvell.com> > > Move NVMF_ALLOWED_OPTS and NVMF_REQUIRED_OPTS definitions > to header file, so it can be used by the different HW devices. > > NVMeTCP offload devices might have different limitations of the > allowed options, for example, a device that does not support all the > queue types. With tcp and rdma, only the nvme-tcp and nvme-rdma layers > handle those attributes and the HW devices do not create any limitations > for the allowed options. > > An alternative design could be to add separate fields in nvme_tcp_ofld_ops > such as max_hw_sectors and max_segments that we already have in this > series. Seems harmless... Acked-by: Sagi Grimberg <sagi@grimberg.me>
diff --git a/drivers/nvme/host/fabrics.c b/drivers/nvme/host/fabrics.c index a2bb7fc63a73..e1e05aa2fada 100644 --- a/drivers/nvme/host/fabrics.c +++ b/drivers/nvme/host/fabrics.c @@ -942,13 +942,6 @@ void nvmf_free_options(struct nvmf_ctrl_options *opts) } EXPORT_SYMBOL_GPL(nvmf_free_options); -#define NVMF_REQUIRED_OPTS (NVMF_OPT_TRANSPORT | NVMF_OPT_NQN) -#define NVMF_ALLOWED_OPTS (NVMF_OPT_QUEUE_SIZE | NVMF_OPT_NR_IO_QUEUES | \ - NVMF_OPT_KATO | NVMF_OPT_HOSTNQN | \ - NVMF_OPT_HOST_ID | NVMF_OPT_DUP_CONNECT |\ - NVMF_OPT_DISABLE_SQFLOW |\ - NVMF_OPT_FAIL_FAST_TMO) - static struct nvme_ctrl * nvmf_create_ctrl(struct device *dev, const char *buf) { diff --git a/drivers/nvme/host/fabrics.h b/drivers/nvme/host/fabrics.h index d7f7974dc208..ce7fe3a842b1 100644 --- a/drivers/nvme/host/fabrics.h +++ b/drivers/nvme/host/fabrics.h @@ -68,6 +68,13 @@ enum { NVMF_OPT_FAIL_FAST_TMO = 1 << 20, }; +#define NVMF_REQUIRED_OPTS (NVMF_OPT_TRANSPORT | NVMF_OPT_NQN) +#define NVMF_ALLOWED_OPTS (NVMF_OPT_QUEUE_SIZE | NVMF_OPT_NR_IO_QUEUES | \ + NVMF_OPT_KATO | NVMF_OPT_HOSTNQN | \ + NVMF_OPT_HOST_ID | NVMF_OPT_DUP_CONNECT |\ + NVMF_OPT_DISABLE_SQFLOW |\ + NVMF_OPT_FAIL_FAST_TMO) + /** * struct nvmf_ctrl_options - Used to hold the options specified * with the parsing opts enum.