mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 08:50:52 +07:00
nvme-rdma: move nvme cm status helper to .h file
This will enable the usage for nvme rdma target. Also move from a lookup array to a switch statement. Signed-off-by: Max Gurtovoy <maxg@mellanox.com> Reviewed-by: Parav Pandit <parav@mellanox.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Sagi Grimberg <sagi@grimberg.me> Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:
parent
faef3af69d
commit
3ee80c3d15
@ -42,28 +42,6 @@
|
||||
|
||||
#define NVME_RDMA_MAX_INLINE_SEGMENTS 1
|
||||
|
||||
static const char *const nvme_rdma_cm_status_strs[] = {
|
||||
[NVME_RDMA_CM_INVALID_LEN] = "invalid length",
|
||||
[NVME_RDMA_CM_INVALID_RECFMT] = "invalid record format",
|
||||
[NVME_RDMA_CM_INVALID_QID] = "invalid queue ID",
|
||||
[NVME_RDMA_CM_INVALID_HSQSIZE] = "invalid host SQ size",
|
||||
[NVME_RDMA_CM_INVALID_HRQSIZE] = "invalid host RQ size",
|
||||
[NVME_RDMA_CM_NO_RSC] = "resource not found",
|
||||
[NVME_RDMA_CM_INVALID_IRD] = "invalid IRD",
|
||||
[NVME_RDMA_CM_INVALID_ORD] = "Invalid ORD",
|
||||
};
|
||||
|
||||
static const char *nvme_rdma_cm_msg(enum nvme_rdma_cm_status status)
|
||||
{
|
||||
size_t index = status;
|
||||
|
||||
if (index < ARRAY_SIZE(nvme_rdma_cm_status_strs) &&
|
||||
nvme_rdma_cm_status_strs[index])
|
||||
return nvme_rdma_cm_status_strs[index];
|
||||
else
|
||||
return "unrecognized reason";
|
||||
};
|
||||
|
||||
/*
|
||||
* We handle AEN commands ourselves and don't even let the
|
||||
* block layer know about them.
|
||||
|
@ -29,6 +29,30 @@ enum nvme_rdma_cm_status {
|
||||
NVME_RDMA_CM_INVALID_ORD = 0x08,
|
||||
};
|
||||
|
||||
static inline const char *nvme_rdma_cm_msg(enum nvme_rdma_cm_status status)
|
||||
{
|
||||
switch (status) {
|
||||
case NVME_RDMA_CM_INVALID_LEN:
|
||||
return "invalid length";
|
||||
case NVME_RDMA_CM_INVALID_RECFMT:
|
||||
return "invalid record format";
|
||||
case NVME_RDMA_CM_INVALID_QID:
|
||||
return "invalid queue ID";
|
||||
case NVME_RDMA_CM_INVALID_HSQSIZE:
|
||||
return "invalid host SQ size";
|
||||
case NVME_RDMA_CM_INVALID_HRQSIZE:
|
||||
return "invalid host RQ size";
|
||||
case NVME_RDMA_CM_NO_RSC:
|
||||
return "resource not found";
|
||||
case NVME_RDMA_CM_INVALID_IRD:
|
||||
return "invalid IRD";
|
||||
case NVME_RDMA_CM_INVALID_ORD:
|
||||
return "Invalid ORD";
|
||||
default:
|
||||
return "unrecognized reason";
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* struct nvme_rdma_cm_req - rdma connect request
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user