aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUpinder Malhi <umalhi@cisco.com>2014-01-09 17:47:33 -0500
committerRoland Dreier <roland@purestorage.com>2014-01-14 03:44:40 -0500
commit8192d4acb5c5376c0f6756f2106ab243036c8c7d (patch)
treea6f89a696ac9b028054fd97bf4d59da69c9164db
parente3cf00d0a87f025db5855a43a67c67a41fa79fef (diff)
IB/usnic: Change WARN_ON to lockdep_assert_held
usNIC calls WARN_ON(spin_is_locked..) at few places. In some of these instances, the call is made while holding a spinlock. Change all WARN_ON(spin_is_locked...) calls in usNIC to lockdep_assert_held to make it fool-proof bc the latter can be called while holding a spinlock and unlike spin_is_locked, lockdep_assert_held also works correctly on UP. Signed-off-by: Upinder Malhi <umalhi@cisco.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
-rw-r--r--drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c b/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c
index ca5fa6ad59ac..5a873f5c2794 100644
--- a/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c
+++ b/drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c
@@ -82,7 +82,7 @@ static int add_fwd_filter(struct usnic_ib_qp_grp *qp_grp,
82 struct usnic_vnic_res_chunk *chunk; 82 struct usnic_vnic_res_chunk *chunk;
83 int rq_idx; 83 int rq_idx;
84 84
85 WARN_ON(!spin_is_locked(&qp_grp->lock)); 85 lockdep_assert_held(&qp_grp->lock);
86 86
87 chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ); 87 chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ);
88 if (IS_ERR_OR_NULL(chunk) || chunk->cnt < 1) { 88 if (IS_ERR_OR_NULL(chunk) || chunk->cnt < 1) {
@@ -119,7 +119,7 @@ static int del_all_filters(struct usnic_ib_qp_grp *qp_grp)
119 int err, status; 119 int err, status;
120 struct usnic_fwd_filter_hndl *filter_hndl, *tmp; 120 struct usnic_fwd_filter_hndl *filter_hndl, *tmp;
121 121
122 WARN_ON(!spin_is_locked(&qp_grp->lock)); 122 lockdep_assert_held(&qp_grp->lock);
123 123
124 status = 0; 124 status = 0;
125 125
@@ -145,7 +145,7 @@ static int enable_qp_grp(struct usnic_ib_qp_grp *qp_grp)
145 struct usnic_vnic_res_chunk *res_chunk; 145 struct usnic_vnic_res_chunk *res_chunk;
146 struct usnic_vnic_res *res; 146 struct usnic_vnic_res *res;
147 147
148 WARN_ON(!spin_is_locked(&qp_grp->lock)); 148 lockdep_assert_held(&qp_grp->lock);
149 149
150 vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); 150 vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic);
151 151
@@ -189,7 +189,7 @@ static int disable_qp_grp(struct usnic_ib_qp_grp *qp_grp)
189 struct usnic_vnic_res *res; 189 struct usnic_vnic_res *res;
190 int status = 0; 190 int status = 0;
191 191
192 WARN_ON(!spin_is_locked(&qp_grp->lock)); 192 lockdep_assert_held(&qp_grp->lock);
193 vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic); 193 vnic_idx = usnic_vnic_get_index(qp_grp->vf->vnic);
194 194
195 res_chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ); 195 res_chunk = usnic_ib_qp_grp_get_chunk(qp_grp, USNIC_VNIC_RES_TYPE_RQ);
@@ -392,7 +392,7 @@ static int qp_grp_and_vf_bind(struct usnic_ib_vf *vf,
392 int err; 392 int err;
393 struct pci_dev *pdev; 393 struct pci_dev *pdev;
394 394
395 WARN_ON(!spin_is_locked(&vf->lock)); 395 lockdep_assert_held(&vf->lock);
396 396
397 pdev = usnic_vnic_get_pdev(vf->vnic); 397 pdev = usnic_vnic_get_pdev(vf->vnic);
398 if (vf->qp_grp_ref_cnt == 0) { 398 if (vf->qp_grp_ref_cnt == 0) {
@@ -417,7 +417,7 @@ static void qp_grp_and_vf_unbind(struct usnic_ib_qp_grp *qp_grp)
417 struct pci_dev *pdev; 417 struct pci_dev *pdev;
418 struct usnic_ib_pd *pd; 418 struct usnic_ib_pd *pd;
419 419
420 WARN_ON(!spin_is_locked(&qp_grp->vf->lock)); 420 lockdep_assert_held(&qp_grp->vf->lock);
421 421
422 pd = qp_grp->vf->pd; 422 pd = qp_grp->vf->pd;
423 pdev = usnic_vnic_get_pdev(qp_grp->vf->vnic); 423 pdev = usnic_vnic_get_pdev(qp_grp->vf->vnic);
@@ -446,7 +446,7 @@ usnic_ib_qp_grp_create(struct usnic_fwd_dev *ufdev,
446 u16 port_num; 446 u16 port_num;
447 int err; 447 int err;
448 448
449 WARN_ON(!spin_is_locked(&vf->lock)); 449 lockdep_assert_held(&vf->lock);
450 450
451 err = usnic_vnic_res_spec_satisfied(&min_transport_spec[transport], 451 err = usnic_vnic_res_spec_satisfied(&min_transport_spec[transport],
452 res_spec); 452 res_spec);
@@ -514,7 +514,7 @@ void usnic_ib_qp_grp_destroy(struct usnic_ib_qp_grp *qp_grp)
514 enum usnic_transport_type transport; 514 enum usnic_transport_type transport;
515 515
516 WARN_ON(qp_grp->state != IB_QPS_RESET); 516 WARN_ON(qp_grp->state != IB_QPS_RESET);
517 WARN_ON(!spin_is_locked(&qp_grp->vf->lock)); 517 lockdep_assert_held(&qp_grp->vf->lock);
518 518
519 transport = qp_grp->filters[DFLT_FILTER_IDX].transport; 519 transport = qp_grp->filters[DFLT_FILTER_IDX].transport;
520 default_port_num = qp_grp->filters[DFLT_FILTER_IDX].port_num; 520 default_port_num = qp_grp->filters[DFLT_FILTER_IDX].port_num;