summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBryan O'Sullivan <bos@pathscale.com>2006-08-25 11:24:42 -0700
committerRoland Dreier <rolandd@cisco.com>2006-09-22 15:22:37 -0700
commitca4ce383acfb05b8035453cdbbfd4f8ae36c7a69 (patch)
treec18fe8810822fe7a6cb01d66ce7ab05a7f29264e
parentfc8cf8cdfc3ce328c577b18ebcd60a5595f2a283 (diff)
downloadlinux-ca4ce383acfb05b8035453cdbbfd4f8ae36c7a69.tar.gz
linux-ca4ce383acfb05b8035453cdbbfd4f8ae36c7a69.tar.bz2
linux-ca4ce383acfb05b8035453cdbbfd4f8ae36c7a69.zip
IB/ipath: validate path_mig_state properly
Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
-rw-r--r--drivers/infiniband/hw/ipath/ipath_qp.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/ipath/ipath_qp.c b/drivers/infiniband/hw/ipath/ipath_qp.c
index 502d555fdf37..77391886d2f8 100644
--- a/drivers/infiniband/hw/ipath/ipath_qp.c
+++ b/drivers/infiniband/hw/ipath/ipath_qp.c
@@ -491,7 +491,8 @@ int ipath_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
goto inval;
if (attr_mask & IB_QP_PATH_MIG_STATE)
- if (attr->path_mig_state != IB_MIG_MIGRATED)
+ if (attr->path_mig_state != IB_MIG_MIGRATED &&
+ attr->path_mig_state != IB_MIG_REARM)
goto inval;
switch (new_state) {