Module Name: src Committed By: riastradh Date: Mon Jul 1 13:27:55 UTC 2024
Modified Files: src/sys/external/bsd/drm2/dist/drm/amd/amdgpu: amdgpu_gart.c Log Message: amdgpu: Map consecutive pages, not the same one over and over again. PR kern/58385 To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 \ src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c diff -u src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c:1.11 src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c:1.12 --- src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c:1.11 Wed Mar 1 08:14:13 2023 +++ src/sys/external/bsd/drm2/dist/drm/amd/amdgpu/amdgpu_gart.c Mon Jul 1 13:27:55 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: amdgpu_gart.c,v 1.11 2023/03/01 08:14:13 riastradh Exp $ */ +/* $NetBSD: amdgpu_gart.c,v 1.12 2024/07/01 13:27:55 riastradh Exp $ */ /* * Copyright 2008 Advanced Micro Devices, Inc. @@ -29,7 +29,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: amdgpu_gart.c,v 1.11 2023/03/01 08:14:13 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: amdgpu_gart.c,v 1.12 2024/07/01 13:27:55 riastradh Exp $"); #include <linux/pci.h> #include <linux/vmalloc.h> @@ -440,7 +440,7 @@ int amdgpu_gart_map(struct amdgpu_device t = gpu_start / AMDGPU_GPU_PAGE_SIZE; for (i = 0; npages --> 0;) { - for (j = 0; j < AMDGPU_GPU_PAGES_IN_CPU_PAGE; j++) { + for (j = 0; j < AMDGPU_GPU_PAGES_IN_CPU_PAGE; j++, t++) { KASSERT(i < dmamap->dm_nsegs); KASSERT(seg_off < dmamap->dm_segs[i].ds_len); amdgpu_gmc_set_pte_pde(adev, dst, t,