[PATCH] iw_cxgb4: initialize the device status page

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The status page is mapped to user processes and allows sharing the device
state between the kernel and user processes.  This state isn't getting
initialized and thus intermittently causes problems.  Namely, the user
process can mistakenly think the user doorbell writes are disabled which
causes SQ work requests to never get fetched by HW.

This bug was introduced by this commit in 3.15:

	commit 05eb23893c2cf9502a9cec0c32e7f1d1ed2895c8
	Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
	Date:   Fri Mar 14 21:52:08 2014 +0530

	    cxgb4/iw_cxgb4: Doorbell Drop Avoidance Bug Fixes

Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx # v3.15
---

 drivers/infiniband/hw/cxgb4/device.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/infiniband/hw/cxgb4/device.c b/drivers/infiniband/hw/cxgb4/device.c
index cbcb72d..7db82b2 100644
--- a/drivers/infiniband/hw/cxgb4/device.c
+++ b/drivers/infiniband/hw/cxgb4/device.c
@@ -696,6 +696,7 @@ static int c4iw_rdev_open(struct c4iw_rdev *rdev)
 		pr_err(MOD "error allocating status page\n");
 		goto err4;
 	}
+	rdev->status_page->db_off = 0;
 	return 0;
 err4:
 	c4iw_rqtpool_destroy(rdev);

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux