Message ID | 20200213120203.29368-1-nirmoy.das@amd.com (mailing list archive) |
---|---|
Headers | show |
Series | do not store GPU address in TTM | expand |
Hi Am 13.02.20 um 13:01 schrieb Nirmoy Das: > With this patch series I am trying to remove GPU address dependency in > TTM and moving GPU address calculation to individual drm drivers. > This is required[1] to continue the work started by Brian Welty to create > struct drm_mem_region which can be leverage by DRM cgroup controller to manage memory > limits. > > > I have only manage to test amdgpu driver as I only have GPU for that. > I might be doing something really stupid while calculeting gpu offset for > some of the drivers so please be patient and let me know how can I improve > that. > > [1] https://www.mail-archive.com/dri-devel@lists.freedesktop.org/msg272238.html > > Nirmoy Das (6): > drm/amdgpu: move ttm bo->offset to amdgpu_bo > drm/radeon: don't use ttm bo->offset > drm/vmwgfx: don't use ttm bo->offset > drm/nouveau: don't use ttm bo->offset > drm/qxl: don't use ttm bo->offset > drm/ttm: do not keep GPU dependent addresses I think VRAM helpers are missing from this patchset. [1] You can use bochs in qemu to test them. Best regards Thomas [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/drm_gem_vram_helper.c?h=v5.6-rc1#n217 > > drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 22 ++++++++++++++-- > drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 1 + > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 29 ++++++++++++++++----- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 1 + > drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 4 +-- > drivers/gpu/drm/nouveau/dispnv04/crtc.c | 6 ++--- > drivers/gpu/drm/nouveau/dispnv04/disp.c | 2 +- > drivers/gpu/drm/nouveau/dispnv04/overlay.c | 6 ++--- > drivers/gpu/drm/nouveau/dispnv50/base507c.c | 2 +- > drivers/gpu/drm/nouveau/dispnv50/core507d.c | 2 +- > drivers/gpu/drm/nouveau/dispnv50/ovly507e.c | 2 +- > drivers/gpu/drm/nouveau/dispnv50/wndw.c | 2 +- > drivers/gpu/drm/nouveau/dispnv50/wndwc37e.c | 2 +- > drivers/gpu/drm/nouveau/nouveau_abi16.c | 8 +++--- > drivers/gpu/drm/nouveau/nouveau_bo.c | 1 + > drivers/gpu/drm/nouveau/nouveau_bo.h | 3 +++ > drivers/gpu/drm/nouveau/nouveau_chan.c | 2 +- > drivers/gpu/drm/nouveau/nouveau_fbcon.c | 2 +- > drivers/gpu/drm/nouveau/nouveau_gem.c | 10 +++---- > drivers/gpu/drm/qxl/qxl_drv.h | 6 ++--- > drivers/gpu/drm/qxl/qxl_kms.c | 3 +++ > drivers/gpu/drm/qxl/qxl_object.h | 5 ---- > drivers/gpu/drm/qxl/qxl_ttm.c | 9 ------- > drivers/gpu/drm/radeon/radeon.h | 1 + > drivers/gpu/drm/radeon/radeon_object.h | 16 +++++++++++- > drivers/gpu/drm/radeon/radeon_ttm.c | 4 +-- > drivers/gpu/drm/ttm/ttm_bo.c | 7 ----- > drivers/gpu/drm/vmwgfx/vmwgfx_bo.c | 4 +-- > drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 2 -- > include/drm/ttm/ttm_bo_api.h | 2 -- > include/drm/ttm/ttm_bo_driver.h | 1 - > 33 files changed, 99 insertions(+), 72 deletions(-) > > -- > 2.25.0 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel >
On 2/14/20 10:19 AM, Thomas Zimmermann wrote: > Hi > > Am 13.02.20 um 13:01 schrieb Nirmoy Das: >> With this patch series I am trying to remove GPU address dependency in >> TTM and moving GPU address calculation to individual drm drivers. >> This is required[1] to continue the work started by Brian Welty to create >> struct drm_mem_region which can be leverage by DRM cgroup controller to manage memory >> limits. >> >> >> I have only manage to test amdgpu driver as I only have GPU for that. >> I might be doing something really stupid while calculeting gpu offset for >> some of the drivers so please be patient and let me know how can I improve >> that. >> >> [1] https://www.mail-archive.com/dri-devel@lists.freedesktop.org/msg272238.html >> >> Nirmoy Das (6): >> drm/amdgpu: move ttm bo->offset to amdgpu_bo >> drm/radeon: don't use ttm bo->offset >> drm/vmwgfx: don't use ttm bo->offset >> drm/nouveau: don't use ttm bo->offset >> drm/qxl: don't use ttm bo->offset >> drm/ttm: do not keep GPU dependent addresses > I think VRAM helpers are missing from this patchset. [1] You can use > bochs in qemu to test them. Thanks Thomas. I missed that, I will add that into next revision. > > Best regards > Thomas > > [1] > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/drm_gem_vram_helper.c?h=v5.6-rc1#n217 > >> drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 22 ++++++++++++++-- >> drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 1 + >> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 29 ++++++++++++++++----- >> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 1 + >> drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 4 +-- >> drivers/gpu/drm/nouveau/dispnv04/crtc.c | 6 ++--- >> drivers/gpu/drm/nouveau/dispnv04/disp.c | 2 +- >> drivers/gpu/drm/nouveau/dispnv04/overlay.c | 6 ++--- >> drivers/gpu/drm/nouveau/dispnv50/base507c.c | 2 +- >> drivers/gpu/drm/nouveau/dispnv50/core507d.c | 2 +- >> drivers/gpu/drm/nouveau/dispnv50/ovly507e.c | 2 +- >> drivers/gpu/drm/nouveau/dispnv50/wndw.c | 2 +- >> drivers/gpu/drm/nouveau/dispnv50/wndwc37e.c | 2 +- >> drivers/gpu/drm/nouveau/nouveau_abi16.c | 8 +++--- >> drivers/gpu/drm/nouveau/nouveau_bo.c | 1 + >> drivers/gpu/drm/nouveau/nouveau_bo.h | 3 +++ >> drivers/gpu/drm/nouveau/nouveau_chan.c | 2 +- >> drivers/gpu/drm/nouveau/nouveau_fbcon.c | 2 +- >> drivers/gpu/drm/nouveau/nouveau_gem.c | 10 +++---- >> drivers/gpu/drm/qxl/qxl_drv.h | 6 ++--- >> drivers/gpu/drm/qxl/qxl_kms.c | 3 +++ >> drivers/gpu/drm/qxl/qxl_object.h | 5 ---- >> drivers/gpu/drm/qxl/qxl_ttm.c | 9 ------- >> drivers/gpu/drm/radeon/radeon.h | 1 + >> drivers/gpu/drm/radeon/radeon_object.h | 16 +++++++++++- >> drivers/gpu/drm/radeon/radeon_ttm.c | 4 +-- >> drivers/gpu/drm/ttm/ttm_bo.c | 7 ----- >> drivers/gpu/drm/vmwgfx/vmwgfx_bo.c | 4 +-- >> drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 2 +- >> drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c | 2 +- >> drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 2 -- >> include/drm/ttm/ttm_bo_api.h | 2 -- >> include/drm/ttm/ttm_bo_driver.h | 1 - >> 33 files changed, 99 insertions(+), 72 deletions(-) >> >> -- >> 2.25.0 >> >> _______________________________________________ >> dri-devel mailing list >> dri-devel@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/dri-devel >>