From: Nick Ewalt Date: Mon, 17 Sep 2018 12:39:01 +0000 (-0700) Subject: staging: gasket: page_table: don't unmap coherent pages X-Git-Tag: Ubuntu-5.10.0-12.13~6710^2~368 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=f8b6a076610f4eb44b0b02c110b7e6f981d7cdc2;p=mirror_ubuntu-hirsute-kernel.git staging: gasket: page_table: don't unmap coherent pages Only call dma_unmap_page if there was an associated dma_map_page call. Signed-off-by: Nick Ewalt Signed-off-by: Todd Poynor Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/gasket/gasket_page_table.c b/drivers/staging/gasket/gasket_page_table.c index 8fe27e7d1b53..33d98043953a 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); }