4.9-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Wei Yongjun <[email protected]>

commit 15f7e3c21b76598bc6e5816d2577ce843b2b963f upstream.

Fix to return error code -ENOMEM from the __get_free_page() error
handling case instead of 0, as done elsewhere in this function.

Fixes: 05eb23893c2c ("cxgb4/iw_cxgb4: Doorbell Drop Avoidance Bug Fixes")
Signed-off-by: Wei Yongjun <[email protected]>
Acked-by: Steve Wise <[email protected]>
Signed-off-by: Doug Ledford <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/infiniband/hw/cxgb4/device.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

--- a/drivers/infiniband/hw/cxgb4/device.c
+++ b/drivers/infiniband/hw/cxgb4/device.c
@@ -828,8 +828,10 @@ static int c4iw_rdev_open(struct c4iw_rd
        }
        rdev->status_page = (struct t4_dev_status_page *)
                            __get_free_page(GFP_KERNEL);
-       if (!rdev->status_page)
+       if (!rdev->status_page) {
+               err = -ENOMEM;
                goto destroy_ocqp_pool;
+       }
        rdev->status_page->qp_start = rdev->lldi.vr->qp.start;
        rdev->status_page->qp_size = rdev->lldi.vr->qp.size;
        rdev->status_page->cq_start = rdev->lldi.vr->cq.start;


Reply via email to