Andrew, could you pls drop the following in -mm and on to Linus?

---

 From: Vu Pham <[EMAIL PROTECTED]>

srp_unmap_data assumes req->fmr is NULL if the request is not mapped,
so we must clean it out in case of an error.

Signed-off-by: Vu Pham <[EMAIL PROTECTED]>
Signed-off-by: Michael S. Tsirkin <[EMAIL PROTECTED]>
Acked-by: Roland Dreier <[EMAIL PROTECTED]>

diff --git a/drivers/infiniband/ulp/srp/ib_srp.c 
b/drivers/infiniband/ulp/srp/ib_srp.c
index 4e22afe..8f472e7 100644
--- a/drivers/infiniband/ulp/srp/ib_srp.c
+++ b/drivers/infiniband/ulp/srp/ib_srp.c
@@ -615,9 +615,10 @@ static int srp_map_fmr(struct srp_device
                                (sg_dma_address(&scat[i]) & dev->fmr_page_mask) 
+ j;
 
        req->fmr = ib_fmr_pool_map_phys(dev->fmr_pool,
                                        dma_pages, page_cnt, &io_addr);
        if (IS_ERR(req->fmr)) {
                ret = PTR_ERR(req->fmr);
+               req->fmr = NULL;
                goto out;
        }
 

-- 
MST

----- End forwarded message -----

-- 
MST
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to