aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/i40iw
diff options
context:
space:
mode:
authorBob Sharp <Robert.O.Sharp@intel.com>2017-10-16 15:46:05 -0500
committerDoug Ledford <dledford@redhat.com>2017-10-18 13:28:46 -0400
commitd2782739c1498e4425dcdeb79f90f9291e58f6f6 (patch)
tree4c4e417b901d7632ad412f11b099c9f92f66935b /drivers/infiniband/hw/i40iw
parenti40iw: Remove UDA QP from QoS list if creation fails (diff)
downloadlinux-dev-d2782739c1498e4425dcdeb79f90f9291e58f6f6.tar.xz
linux-dev-d2782739c1498e4425dcdeb79f90f9291e58f6f6.zip
i40iw: Move cqp_cmd_head init to CQP initialization
Control QP (CQP) command backlog list is initialized at device initialization time. It is not reinitialized in the reset flow. Move the initialization to CQP creation time so the list can be initialized correctly for reset as well. Fixes: 86dbcd0f12e9 ("i40iw: add file to handle cqp calls") Signed-off-by: Bob Sharp <Robert.O.Sharp@intel.com> Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/hw/i40iw')
-rw-r--r--drivers/infiniband/hw/i40iw/i40iw_ctrl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/i40iw/i40iw_ctrl.c b/drivers/infiniband/hw/i40iw/i40iw_ctrl.c
index c8a40b3fbc31..d88c6cf47cf2 100644
--- a/drivers/infiniband/hw/i40iw/i40iw_ctrl.c
+++ b/drivers/infiniband/hw/i40iw/i40iw_ctrl.c
@@ -482,6 +482,7 @@ static enum i40iw_status_code i40iw_sc_cqp_init(struct i40iw_sc_cqp *cqp,
I40IW_RING_INIT(cqp->sq_ring, cqp->sq_size);
cqp->dev->cqp_cmd_stats[OP_REQUESTED_COMMANDS] = 0;
cqp->dev->cqp_cmd_stats[OP_COMPLETED_COMMANDS] = 0;
+ INIT_LIST_HEAD(&cqp->dev->cqp_cmd_head); /* for the cqp commands backlog. */
i40iw_wr32(cqp->dev->hw, I40E_PFPE_CQPTAIL, 0);
i40iw_wr32(cqp->dev->hw, I40E_PFPE_CQPDB, 0);
@@ -5067,7 +5068,6 @@ enum i40iw_status_code i40iw_device_init(struct i40iw_sc_dev *dev,
u8 db_size;
spin_lock_init(&dev->cqp_lock);
- INIT_LIST_HEAD(&dev->cqp_cmd_head); /* for the cqp commands backlog. */
i40iw_device_init_uk(&dev->dev_uk);