From d2d04dce1e0cd3cdb0161ffd75521982eb950d84 Mon Sep 17 00:00:00 2001 From: Padmanabh Ratnakar Date: Sat, 20 Oct 2012 06:03:25 +0000 Subject: [PATCH] --- yaml --- r: 340419 b: refs/heads/master c: aa790db9a7a3a9591f4d5ba0dead00e99dcd9412 h: refs/heads/master i: 340417: 06b1fa64314520f984a121e47bd7377c317eebfb 340415: a5e7aac9d66906b9318e536617ba29d3674120ce v: v3 --- [refs] | 2 +- trunk/drivers/net/ethernet/emulex/benet/be_cmds.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 16628f6f7574..50b78e821930 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: db15dfa957c6b904e88d70f2f3f1c0b95cafd6b9 +refs/heads/master: aa790db9a7a3a9591f4d5ba0dead00e99dcd9412 diff --git a/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c b/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c index 9d602f4a09d5..15202d07cf8a 100644 --- a/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c +++ b/trunk/drivers/net/ethernet/emulex/benet/be_cmds.c @@ -681,6 +681,9 @@ static struct be_mcc_wrb *wrb_from_mccq(struct be_adapter *adapter) struct be_queue_info *mccq = &adapter->mcc_obj.q; struct be_mcc_wrb *wrb; + if (!mccq->created) + return NULL; + if (atomic_read(&mccq->used) >= mccq->len) { dev_err(&adapter->pdev->dev, "Out of MCCQ wrbs\n"); return NULL; @@ -1235,8 +1238,7 @@ int be_cmd_q_destroy(struct be_adapter *adapter, struct be_queue_info *q, req->id = cpu_to_le16(q->id); status = be_mbox_notify_wait(adapter); - if (!status) - q->created = false; + q->created = false; mutex_unlock(&adapter->mbox_lock); return status; @@ -1263,8 +1265,7 @@ int be_cmd_rxq_destroy(struct be_adapter *adapter, struct be_queue_info *q) req->id = cpu_to_le16(q->id); status = be_mcc_notify_wait(adapter); - if (!status) - q->created = false; + q->created = false; err: spin_unlock_bh(&adapter->mcc_lock);