Quoting Matthew Auld (2021-01-18 14:17:32)
> From: CQ Tang <[email protected]>
>
> io_mapping_map_wc() expects the offset to be relative to the iomapping
> base address. Currently we just pass in the physical address for the
> page which only works if the region.start starts at zero.
>
> Signed-off-by: CQ Tang <[email protected]>
> Signed-off-by: Matthew Auld <[email protected]>
> ---
> drivers/gpu/drm/i915/i915_gpu_error.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c
> b/drivers/gpu/drm/i915/i915_gpu_error.c
> index 8b163ee1b86d..f962693404b7 100644
> --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> @@ -1051,7 +1051,9 @@ i915_vma_coredump_create(const struct intel_gt *gt,
> for_each_sgt_daddr(dma, iter, vma->pages) {
> void __iomem *s;
>
> - s = io_mapping_map_wc(&mem->iomap, dma, PAGE_SIZE);
> + s = io_mapping_map_wc(&mem->iomap,
> + dma - mem->region.start,
> + PAGE_SIZE);
>From i915_gem_object_get_pages_buddy:
sg_dma_address(sg) = mem->region.start + offset;
Reviewed-by: Chris Wilson <[email protected]>
-Chris
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx