diff options
| author | Jan-Bernd Themann <ossthema@de.ibm.com> | 2007-08-22 10:21:28 -0400 |
|---|---|---|
| committer | Jeff Garzik <jeff@garzik.org> | 2007-08-25 02:31:20 -0400 |
| commit | 28721c890c9b71cfee45e835bda4639777862e2f (patch) | |
| tree | 0e547480cb712f2ebc994cc24b35ba9b82743550 | |
| parent | 18072a5bf7211d6899a2edc90c291c5c6fbc83d2 (diff) | |
ehea: fix queue destructor
Includes hcp_epas_dtor in eq/cq/qp destructors to unmap
HW register.
Signed-off-by: Jan-Bernd Themann <themann@de.ibm.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
| -rw-r--r-- | drivers/net/ehea/ehea_qmr.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/ehea/ehea_qmr.c b/drivers/net/ehea/ehea_qmr.c index a36fa6c23fdf..c82e24596074 100644 --- a/drivers/net/ehea/ehea_qmr.c +++ b/drivers/net/ehea/ehea_qmr.c | |||
| @@ -235,6 +235,8 @@ int ehea_destroy_cq(struct ehea_cq *cq) | |||
| 235 | if (!cq) | 235 | if (!cq) |
| 236 | return 0; | 236 | return 0; |
| 237 | 237 | ||
| 238 | hcp_epas_dtor(&cq->epas); | ||
| 239 | |||
| 238 | if ((hret = ehea_destroy_cq_res(cq, NORMAL_FREE)) == H_R_STATE) { | 240 | if ((hret = ehea_destroy_cq_res(cq, NORMAL_FREE)) == H_R_STATE) { |
| 239 | ehea_error_data(cq->adapter, cq->fw_handle); | 241 | ehea_error_data(cq->adapter, cq->fw_handle); |
| 240 | hret = ehea_destroy_cq_res(cq, FORCE_FREE); | 242 | hret = ehea_destroy_cq_res(cq, FORCE_FREE); |
| @@ -361,6 +363,8 @@ int ehea_destroy_eq(struct ehea_eq *eq) | |||
| 361 | if (!eq) | 363 | if (!eq) |
| 362 | return 0; | 364 | return 0; |
| 363 | 365 | ||
| 366 | hcp_epas_dtor(&eq->epas); | ||
| 367 | |||
| 364 | if ((hret = ehea_destroy_eq_res(eq, NORMAL_FREE)) == H_R_STATE) { | 368 | if ((hret = ehea_destroy_eq_res(eq, NORMAL_FREE)) == H_R_STATE) { |
| 365 | ehea_error_data(eq->adapter, eq->fw_handle); | 369 | ehea_error_data(eq->adapter, eq->fw_handle); |
| 366 | hret = ehea_destroy_eq_res(eq, FORCE_FREE); | 370 | hret = ehea_destroy_eq_res(eq, FORCE_FREE); |
| @@ -541,6 +545,8 @@ int ehea_destroy_qp(struct ehea_qp *qp) | |||
| 541 | if (!qp) | 545 | if (!qp) |
| 542 | return 0; | 546 | return 0; |
| 543 | 547 | ||
| 548 | hcp_epas_dtor(&qp->epas); | ||
| 549 | |||
| 544 | if ((hret = ehea_destroy_qp_res(qp, NORMAL_FREE)) == H_R_STATE) { | 550 | if ((hret = ehea_destroy_qp_res(qp, NORMAL_FREE)) == H_R_STATE) { |
| 545 | ehea_error_data(qp->adapter, qp->fw_handle); | 551 | ehea_error_data(qp->adapter, qp->fw_handle); |
| 546 | hret = ehea_destroy_qp_res(qp, FORCE_FREE); | 552 | hret = ehea_destroy_qp_res(qp, FORCE_FREE); |
