[PATCH] nvme-multipath: combine grpid and ANA state checks in nvme_parse_ana_log()

Wu Bo
2021-06-08T03:50:11Z

Hi,

Combine grpid and ANA state checks in nvme_parse_ana_log() to
reduce repetitive code and more intuitive meaning.

Signed-off-by: Wu Bo <wubo40@huawei.com>
---
drivers/nvme/host/multipath.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/drivers/nvme/host/multipath.c b/drivers/nvme/host/multipath.c
index f81871c..19fe16d 100644
--- a/drivers/nvme/host/multipath.c
+++ b/drivers/nvme/host/multipath.c
@@ -522,13 +522,11 @@ static int nvme_parse_ana_log(struct nvme_ctrl *ctrl, void *data,
nr_nsids = le32_to_cpu(desc->nnsids);
nsid_buf_size = nr_nsids * sizeof(__le32);

- if (WARN_ON_ONCE(desc->grpid == 0))
+ if (WARN_ON_ONCE(desc->grpid == 0 ||
+ le32_to_cpu(desc->grpid) > ctrl->anagrpmax))
return -EINVAL;
- if (WARN_ON_ONCE(le32_to_cpu(desc->grpid) > ctrl->anagrpmax))
- return -EINVAL;
- if (WARN_ON_ONCE(desc->state == 0))
- return -EINVAL;
- if (WARN_ON_ONCE(desc->state > NVME_ANA_CHANGE))
+ if (WARN_ON_ONCE(desc->state == 0 ||
+ desc->state > NVME_ANA_CHANGE))
return -EINVAL;

offset += sizeof(*desc);
--
2.30.2