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

2017-12-13 Thread Yong Zhao
Change-Id: Id522c1cbadb8c069720f4e64a31cff42cd014733
Signed-off-by: Yong Zhao 
---
 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..3b9eb1a 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 && max_level == 1) {
unsigned max_size = 1 << (max_bits - 30);
 
vm_size = amdgpu_vm_size;
-- 
2.7.4

___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-14 Thread Yong Zhao
Change-Id: Id522c1cbadb8c069720f4e64a31cff42cd014733
Signed-off-by: Yong Zhao 
---
 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;
-- 
2.7.4

___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-14 Thread Christian König
NAK, that really circumvents the intention of the patch to adjust the 
number of levels based on the vm_size.


Christian.

Am 14.12.2017 um 03:25 schrieb Yong Zhao:

Change-Id: Id522c1cbadb8c069720f4e64a31cff42cd014733
Signed-off-by: Yong Zhao 
---
  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..3b9eb1a 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 && max_level == 1) {
unsigned max_size = 1 << (max_bits - 30);
  
  		vm_size = amdgpu_vm_size;


___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-14 Thread Yong Zhao

Hi Christian,

I don't know much about the background. But according to my experiments, 
as long as we change the vm size to 64G, ATC memory access on Raven will 
fall apart. How should deal with that or can you come up with a fix?


Regards,

Yong


On 2017-12-14 03:47 AM, Christian König wrote:
NAK, that really circumvents the intention of the patch to adjust the 
number of levels based on the vm_size.


Christian.

Am 14.12.2017 um 03:25 schrieb Yong Zhao:

Change-Id: Id522c1cbadb8c069720f4e64a31cff42cd014733
Signed-off-by: Yong Zhao 
---
  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..3b9eb1a 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 && max_level == 1) {
  unsigned max_size = 1 << (max_bits - 30);
    vm_size = amdgpu_vm_size;




___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-14 Thread Christian König

Hi Yong,

How should deal with that or can you come up with a fix? 

well that is the expected effect. So I don't see much we can do here.

Support for the parameter was added to be able to intentionally break 
support for HMM/SVM for testing the fall back paths.


Didn't thought about ATC while enabling this, but it certainly falls 
into the same category. Could be that we can still keep ATC working 
while reducing the GPUVM size, but that would require further testing.


Regards,
Christian.

Am 14.12.2017 um 16:56 schrieb Yong Zhao:

Hi Christian,

I don't know much about the background. But according to my 
experiments, as long as we change the vm size to 64G, ATC memory 
access on Raven will fall apart. How should deal with that or can you 
come up with a fix?


Regards,

Yong


On 2017-12-14 03:47 AM, Christian König wrote:
NAK, that really circumvents the intention of the patch to adjust the 
number of levels based on the vm_size.


Christian.

Am 14.12.2017 um 03:25 schrieb Yong Zhao:

Change-Id: Id522c1cbadb8c069720f4e64a31cff42cd014733
Signed-off-by: Yong Zhao 
---
  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..3b9eb1a 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 && max_level == 1) {
  unsigned max_size = 1 << (max_bits - 30);
    vm_size = amdgpu_vm_size;






___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-16 Thread 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 
> ---
>  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;




signature.asc
Description: OpenPGP digital signature
___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-18 Thread Christian König

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 
---
  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@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


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

2017-12-18 Thread Zhao, Yong
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 
Sent: Monday, December 18, 2017 4:22:43 AM
To: Felix Kühling; Zhao, Yong; amd-gfx@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 <mailto:yong.z...@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@lists.freedesktop.org<mailto:amd-gfx@lists.freedesktop.org>
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


___
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx