drm/gpusvm: set has_dma_mapping inside mapping loop
authorDafna Hirschfeld <dafna.hirschfeld@intel.com>
Mon, 28 Apr 2025 02:47:52 +0000 (19:47 -0700)
committerMatthew Brost <matthew.brost@intel.com>
Tue, 29 Apr 2025 18:18:13 +0000 (11:18 -0700)
The 'has_dma_mapping' flag should be set once there is a
mapping so it could be unmapped in case of error.

v2:
- Resend for CI

Fixes: 99624bdff867 ("drm/gpusvm: Add support for GPU Shared Virtual Memory")
Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Link: https://lore.kernel.org/r/20250428024752.881292-1-matthew.brost@intel.com
drivers/gpu/drm/drm_gpusvm.c

index 38431e8..de424e6 100644 (file)
@@ -1469,9 +1469,9 @@ map_pages:
                }
                i += 1 << order;
                num_dma_mapped = i;
+               range->flags.has_dma_mapping = true;
        }
 
-       range->flags.has_dma_mapping = true;
        if (zdd) {
                range->flags.has_devmem_pages = true;
                range->dpagemap = dpagemap;