RDMA/hns: Add a check for current state before modifying QP
authorLang Cheng <chenglang@huawei.com>
Tue, 25 Aug 2020 11:07:54 +0000 (19:07 +0800)
committerJason Gunthorpe <jgg@nvidia.com>
Thu, 27 Aug 2020 12:46:07 +0000 (09:46 -0300)
commite0ef0f68c4c0d85b1eb63f38d5d10324361280e8
tree54d8111cf939a9dc5ce6dfdf482044c7658237e0
parentb9caebb290d298a114ed6426e644db9a09560055
RDMA/hns: Add a check for current state before modifying QP

It should be considered an illegal operation if the ULP attempts to modify
a QP from another state to the current hardware state. Otherwise, the ULP
can modify some fields of QPC at any time. For example, for a QP in state
of RTS, modify it from RTR to RTS can change the PSN, which is always not
as expected.

Fixes: 9a4435375cd1 ("IB/hns: Add driver files for hns RoCE driver")
Link: https://lore.kernel.org/r/1598353674-24270-1-git-send-email-liweihang@huawei.com
Signed-off-by: Lang Cheng <chenglang@huawei.com>
Signed-off-by: Weihang Li <liweihang@huawei.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/hns/hns_roce_qp.c