[PATCH] drm/amdgpu: Fix a bug that vm size is wrong on Raven

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Felix,


we ended up with this fix. http://git.amd.com:8080/#/c/122202/


I explored the option to override the VM size only for KFD VMs, but it was not easy as amdgpu_check_vm_size() and amdgpu_vm_adjust_size() come in during loading amdgpu, i. e. before KFD VMs are created. So to fix the problem quickly, we ended up to not overwrite the VM size for all Raven VMs.


Regards,

Yong

________________________________
From: Christian König <ckoenig.leichtzumerken@xxxxxxxxx>
Sent: Monday, December 18, 2017 4:22:43 AM
To: Felix Kühling; Zhao, Yong; amd-gfx at lists.freedesktop.org
Subject: Re: [PATCH] drm/amdgpu: Fix a bug that vm size is wrong on Raven

The problem was a merge conflict.

No idea what exactly went wrong, but Yong ended up with a branch where the vm_size was always overwritten with the value 64.

So we can completely drop this patch and yes when an user overrides the vm_size value he/she should know what the consequences are.

Regards,
Christian.

Am 17.12.2017 um 00:21 schrieb Felix Kühling:

Is there a way to override the VM size for KFD VMs only? Only they
depend on ATS, so only they need to be forced to be 48-bits.

On the other hand, it could be argued that a user who manually sets the
VM size with a module parameter knows what they're doing. So let them
break ATS.

Regards,
  Felix


Am 14.12.2017 um 17:45 schrieb Yong Zhao:


Change-Id: Id522c1cbadb8c069720f4e64a31cff42cd014733
Signed-off-by: Yong Zhao <yong.zhao at amd.com><mailto:yong.zhao at amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index 709587d..93500e6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -2534,7 +2534,7 @@ void amdgpu_vm_adjust_size(struct amdgpu_device *adev, uint32_t vm_size,
        uint64_t tmp;

        /* adjust vm size first */
-       if (amdgpu_vm_size != -1) {
+       if (amdgpu_vm_size != -1 && adev->asic_type != CHIP_RAVEN) {
                unsigned max_size = 1 << (max_bits - 30);

                vm_size = amdgpu_vm_size;








_______________________________________________
amd-gfx mailing list
amd-gfx at lists.freedesktop.org<mailto:amd-gfx at lists.freedesktop.org>
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/amd-gfx/attachments/20171218/045f0d24/attachment.html>


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux