Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 28721c89 authored by Jan-Bernd Themann's avatar Jan-Bernd Themann Committed by Jeff Garzik
Browse files

ehea: fix queue destructor



Includes hcp_epas_dtor in eq/cq/qp destructors to unmap
HW register.

Signed-off-by: default avatarJan-Bernd Themann <themann@de.ibm.com>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 18072a5b
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -235,6 +235,8 @@ int ehea_destroy_cq(struct ehea_cq *cq)
	if (!cq)
		return 0;

	hcp_epas_dtor(&cq->epas);

	if ((hret = ehea_destroy_cq_res(cq, NORMAL_FREE)) == H_R_STATE) {
		ehea_error_data(cq->adapter, cq->fw_handle);
		hret = ehea_destroy_cq_res(cq, FORCE_FREE);
@@ -361,6 +363,8 @@ int ehea_destroy_eq(struct ehea_eq *eq)
	if (!eq)
		return 0;

	hcp_epas_dtor(&eq->epas);

	if ((hret = ehea_destroy_eq_res(eq, NORMAL_FREE)) == H_R_STATE) {
		ehea_error_data(eq->adapter, eq->fw_handle);
		hret = ehea_destroy_eq_res(eq, FORCE_FREE);
@@ -541,6 +545,8 @@ int ehea_destroy_qp(struct ehea_qp *qp)
	if (!qp)
		return 0;

	hcp_epas_dtor(&qp->epas);

	if ((hret = ehea_destroy_qp_res(qp, NORMAL_FREE)) == H_R_STATE) {
		ehea_error_data(qp->adapter, qp->fw_handle);
		hret = ehea_destroy_qp_res(qp, FORCE_FREE);