diff options
Diffstat (limited to 'drivers/gpu/nvgpu/os')
-rw-r--r-- | drivers/gpu/nvgpu/os/linux/linux-dma.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/os/linux/linux-dma.c b/drivers/gpu/nvgpu/os/linux/linux-dma.c index 52987a87..d704b2a4 100644 --- a/drivers/gpu/nvgpu/os/linux/linux-dma.c +++ b/drivers/gpu/nvgpu/os/linux/linux-dma.c | |||
@@ -392,8 +392,10 @@ void nvgpu_dma_free_sys(struct gk20a *g, struct nvgpu_mem *mem) | |||
392 | if (mem->mem_flags & __NVGPU_MEM_FLAG_NO_DMA) | 392 | if (mem->mem_flags & __NVGPU_MEM_FLAG_NO_DMA) |
393 | nvgpu_kfree(g, mem->priv.pages); | 393 | nvgpu_kfree(g, mem->priv.pages); |
394 | 394 | ||
395 | if (mem->priv.sgt) | 395 | if ((mem->mem_flags & NVGPU_MEM_FLAG_FOREIGN_SGT) == 0 && |
396 | mem->priv.sgt != NULL) { | ||
396 | nvgpu_free_sgtable(g, &mem->priv.sgt); | 397 | nvgpu_free_sgtable(g, &mem->priv.sgt); |
398 | } | ||
397 | 399 | ||
398 | dma_dbg_free_done(g, mem->size, "sysmem"); | 400 | dma_dbg_free_done(g, mem->size, "sysmem"); |
399 | 401 | ||