aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw
diff options
context:
space:
mode:
authorRoland Dreier <roland@topspin.com>2005-04-16 18:26:21 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:26:21 -0400
commitb635fa215192a02e58e8e30d5d927435aa108192 (patch)
tree5f116d661f6dfa54f20c1d8ea1b9c88204d7bb2d /drivers/infiniband/hw
parent4ad81174edfc22528b845a27620db7542c1ce9a6 (diff)
[PATCH] IB/mthca: only free doorbell records in mem-free mode
On error path, only free doorbell records if we're in mem-free mode. Signed-off-by: Roland Dreier <roland@topspin.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/infiniband/hw')
-rw-r--r--drivers/infiniband/hw/mthca/mthca_cq.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/mthca/mthca_cq.c b/drivers/infiniband/hw/mthca/mthca_cq.c
index 5dead2df7eb0..8b3ffd23e505 100644
--- a/drivers/infiniband/hw/mthca/mthca_cq.c
+++ b/drivers/infiniband/hw/mthca/mthca_cq.c
@@ -817,10 +817,12 @@ err_out_free_mr:
817err_out_mailbox: 817err_out_mailbox:
818 kfree(mailbox); 818 kfree(mailbox);
819 819
820 mthca_free_db(dev, MTHCA_DB_TYPE_CQ_ARM, cq->arm_db_index); 820 if (dev->hca_type == ARBEL_NATIVE)
821 mthca_free_db(dev, MTHCA_DB_TYPE_CQ_ARM, cq->arm_db_index);
821 822
822err_out_ci: 823err_out_ci:
823 mthca_free_db(dev, MTHCA_DB_TYPE_CQ_SET_CI, cq->set_ci_db_index); 824 if (dev->hca_type == ARBEL_NATIVE)
825 mthca_free_db(dev, MTHCA_DB_TYPE_CQ_SET_CI, cq->set_ci_db_index);
824 826
825err_out_icm: 827err_out_icm:
826 mthca_table_put(dev, dev->cq_table.table, cq->cqn); 828 mthca_table_put(dev, dev->cq_table.table, cq->cqn);