From: Nick Ewalt <nicholasew...@google.com>

Only call dma_unmap_page if there was an associated dma_map_page call.

Signed-off-by: Nick Ewalt <nicholasew...@google.com>
Signed-off-by: Todd Poynor <toddpoy...@google.com>
---
 drivers/staging/gasket/gasket_page_table.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/gasket/gasket_page_table.c 
b/drivers/staging/gasket/gasket_page_table.c
index 8fe27e7d1b53c..33d98043953a5 100644
--- a/drivers/staging/gasket/gasket_page_table.c
+++ b/drivers/staging/gasket/gasket_page_table.c
@@ -610,7 +610,7 @@ static void gasket_perform_unmapping(struct 
gasket_page_table *pg_tbl,
 
                /* release the address from the driver, */
                if (ptes[i].status == PTE_INUSE) {
-                       if (ptes[i].dma_addr) {
+                       if (ptes[i].page && ptes[i].dma_addr) {
                                dma_unmap_page(pg_tbl->device, ptes[i].dma_addr,
                                               PAGE_SIZE, DMA_BIDIRECTIONAL);
                        }
-- 
2.19.0.397.gdd90340f6a-goog

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to