All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/amdgpu: create a func to check vm size
@ 2017-03-29  8:08 Junwei Zhang
       [not found] ` <1490774912-583-1-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
  0 siblings, 1 reply; 8+ messages in thread
From: Junwei Zhang @ 2017-03-29  8:08 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, christian.koenig-5C7GfCeVMHo
  Cc: Junwei Zhang

Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 51 ++++++++++++++++++------------
 1 file changed, 31 insertions(+), 20 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 3500da3..1ad1113 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -1078,6 +1078,36 @@ static void amdgpu_get_block_size(struct amdgpu_device *adev)
 	}
 }
 
+static void amdgpu_check_vm_size(struct amdgpu_device *adev)
+{
+	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
+		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
+			 amdgpu_vm_size);
+		goto def_value;
+	}
+
+	if (amdgpu_vm_size < 1) {
+		dev_warn(adev->dev, "VM size (%d) too small, min is 1GB\n",
+			 amdgpu_vm_size);
+		goto def_value;
+	}
+
+	/*
+	 * Max GPUVM size for Cayman, SI, CI VI are 40 bits.
+	 */
+	if (amdgpu_vm_size > 1024) {
+		dev_warn(adev->dev, "VM size (%d) too large, max is 1TB\n",
+			 amdgpu_vm_size);
+		goto def_value;
+	}
+
+	return;
+
+def_value:
+	amdgpu_vm_size = 8;
+	dev_info(adev->dev, "set default VM size %dGB\n", amdgpu_vm_size);
+}
+
 /**
  * amdgpu_check_arguments - validate module params
  *
@@ -1107,26 +1137,7 @@ static void amdgpu_check_arguments(struct amdgpu_device *adev)
 		}
 	}
 
-	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
-		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
-			 amdgpu_vm_size);
-		amdgpu_vm_size = 8;
-	}
-
-	if (amdgpu_vm_size < 1) {
-		dev_warn(adev->dev, "VM size (%d) too small, min is 1GB\n",
-			 amdgpu_vm_size);
-		amdgpu_vm_size = 8;
-	}
-
-	/*
-	 * Max GPUVM size for Cayman, SI and CI are 40 bits.
-	 */
-	if (amdgpu_vm_size > 1024) {
-		dev_warn(adev->dev, "VM size (%d) too large, max is 1TB\n",
-			 amdgpu_vm_size);
-		amdgpu_vm_size = 8;
-	}
+	amdgpu_check_vm_size(adev);
 
 	amdgpu_get_block_size(adev);
 
-- 
1.9.1

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

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10
       [not found] ` <1490774912-583-1-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
@ 2017-03-29  8:08   ` Junwei Zhang
       [not found]     ` <1490774912-583-2-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
  2017-03-29  8:17   ` [PATCH 1/2] drm/amdgpu: create a func to check vm size zhoucm1
  2017-03-29  8:44   ` Christian König
  2 siblings, 1 reply; 8+ messages in thread
From: Junwei Zhang @ 2017-03-29  8:08 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, christian.koenig-5C7GfCeVMHo
  Cc: Junwei Zhang

Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 1ad1113..4af4ea0 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -1080,6 +1080,11 @@ static void amdgpu_get_block_size(struct amdgpu_device *adev)
 
 static void amdgpu_check_vm_size(struct amdgpu_device *adev)
 {
+	if (adev->asic_type >= CHIP_VEGA10) {
+		amdgpu_vm_size = 1U << 18; /* 256TB */
+		return;
+	}
+
 	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
 		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
 			 amdgpu_vm_size);
-- 
1.9.1

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

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] drm/amdgpu: create a func to check vm size
       [not found] ` <1490774912-583-1-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
  2017-03-29  8:08   ` [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10 Junwei Zhang
@ 2017-03-29  8:17   ` zhoucm1
  2017-03-29  8:44   ` Christian König
  2 siblings, 0 replies; 8+ messages in thread
From: zhoucm1 @ 2017-03-29  8:17 UTC (permalink / raw)
  To: Junwei Zhang, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	christian.koenig-5C7GfCeVMHo

Reviewed-by: Chunming Zhou <david1.zhou@amd.com> for both.

On 2017年03月29日 16:08, Junwei Zhang wrote:
> Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 51 ++++++++++++++++++------------
>   1 file changed, 31 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 3500da3..1ad1113 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -1078,6 +1078,36 @@ static void amdgpu_get_block_size(struct amdgpu_device *adev)
>   	}
>   }
>   
> +static void amdgpu_check_vm_size(struct amdgpu_device *adev)
> +{
> +	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
> +		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
> +			 amdgpu_vm_size);
> +		goto def_value;
> +	}
> +
> +	if (amdgpu_vm_size < 1) {
> +		dev_warn(adev->dev, "VM size (%d) too small, min is 1GB\n",
> +			 amdgpu_vm_size);
> +		goto def_value;
> +	}
> +
> +	/*
> +	 * Max GPUVM size for Cayman, SI, CI VI are 40 bits.
> +	 */
> +	if (amdgpu_vm_size > 1024) {
> +		dev_warn(adev->dev, "VM size (%d) too large, max is 1TB\n",
> +			 amdgpu_vm_size);
> +		goto def_value;
> +	}
> +
> +	return;
> +
> +def_value:
> +	amdgpu_vm_size = 8;
> +	dev_info(adev->dev, "set default VM size %dGB\n", amdgpu_vm_size);
> +}
> +
>   /**
>    * amdgpu_check_arguments - validate module params
>    *
> @@ -1107,26 +1137,7 @@ static void amdgpu_check_arguments(struct amdgpu_device *adev)
>   		}
>   	}
>   
> -	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
> -		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
> -			 amdgpu_vm_size);
> -		amdgpu_vm_size = 8;
> -	}
> -
> -	if (amdgpu_vm_size < 1) {
> -		dev_warn(adev->dev, "VM size (%d) too small, min is 1GB\n",
> -			 amdgpu_vm_size);
> -		amdgpu_vm_size = 8;
> -	}
> -
> -	/*
> -	 * Max GPUVM size for Cayman, SI and CI are 40 bits.
> -	 */
> -	if (amdgpu_vm_size > 1024) {
> -		dev_warn(adev->dev, "VM size (%d) too large, max is 1TB\n",
> -			 amdgpu_vm_size);
> -		amdgpu_vm_size = 8;
> -	}
> +	amdgpu_check_vm_size(adev);
>   
>   	amdgpu_get_block_size(adev);
>   

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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 1/2] drm/amdgpu: create a func to check vm size
       [not found] ` <1490774912-583-1-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
  2017-03-29  8:08   ` [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10 Junwei Zhang
  2017-03-29  8:17   ` [PATCH 1/2] drm/amdgpu: create a func to check vm size zhoucm1
@ 2017-03-29  8:44   ` Christian König
  2 siblings, 0 replies; 8+ messages in thread
From: Christian König @ 2017-03-29  8:44 UTC (permalink / raw)
  To: Junwei Zhang, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

Am 29.03.2017 um 10:08 schrieb Junwei Zhang:
> Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>

Reviewed-by: Christian König <christian.koenig@amd.com> for only this patch.

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 51 ++++++++++++++++++------------
>   1 file changed, 31 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 3500da3..1ad1113 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -1078,6 +1078,36 @@ static void amdgpu_get_block_size(struct amdgpu_device *adev)
>   	}
>   }
>   
> +static void amdgpu_check_vm_size(struct amdgpu_device *adev)
> +{
> +	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
> +		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
> +			 amdgpu_vm_size);
> +		goto def_value;
> +	}
> +
> +	if (amdgpu_vm_size < 1) {
> +		dev_warn(adev->dev, "VM size (%d) too small, min is 1GB\n",
> +			 amdgpu_vm_size);
> +		goto def_value;
> +	}
> +
> +	/*
> +	 * Max GPUVM size for Cayman, SI, CI VI are 40 bits.
> +	 */
> +	if (amdgpu_vm_size > 1024) {
> +		dev_warn(adev->dev, "VM size (%d) too large, max is 1TB\n",
> +			 amdgpu_vm_size);
> +		goto def_value;
> +	}
> +
> +	return;
> +
> +def_value:
> +	amdgpu_vm_size = 8;
> +	dev_info(adev->dev, "set default VM size %dGB\n", amdgpu_vm_size);
> +}
> +
>   /**
>    * amdgpu_check_arguments - validate module params
>    *
> @@ -1107,26 +1137,7 @@ static void amdgpu_check_arguments(struct amdgpu_device *adev)
>   		}
>   	}
>   
> -	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
> -		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
> -			 amdgpu_vm_size);
> -		amdgpu_vm_size = 8;
> -	}
> -
> -	if (amdgpu_vm_size < 1) {
> -		dev_warn(adev->dev, "VM size (%d) too small, min is 1GB\n",
> -			 amdgpu_vm_size);
> -		amdgpu_vm_size = 8;
> -	}
> -
> -	/*
> -	 * Max GPUVM size for Cayman, SI and CI are 40 bits.
> -	 */
> -	if (amdgpu_vm_size > 1024) {
> -		dev_warn(adev->dev, "VM size (%d) too large, max is 1TB\n",
> -			 amdgpu_vm_size);
> -		amdgpu_vm_size = 8;
> -	}
> +	amdgpu_check_vm_size(adev);
>   
>   	amdgpu_get_block_size(adev);
>   


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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10
       [not found]     ` <1490774912-583-2-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
@ 2017-03-29  8:47       ` Christian König
       [not found]         ` <0b86e484-9d24-039d-ec26-ed973b0a7f14-5C7GfCeVMHo@public.gmane.org>
  0 siblings, 1 reply; 8+ messages in thread
From: Christian König @ 2017-03-29  8:47 UTC (permalink / raw)
  To: Junwei Zhang, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

Am 29.03.2017 um 10:08 schrieb Junwei Zhang:
> Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 +++++
>   1 file changed, 5 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 1ad1113..4af4ea0 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -1080,6 +1080,11 @@ static void amdgpu_get_block_size(struct amdgpu_device *adev)
>   
>   static void amdgpu_check_vm_size(struct amdgpu_device *adev)
>   {
> +	if (adev->asic_type >= CHIP_VEGA10) {
> +		amdgpu_vm_size = 1U << 18; /* 256TB */
> +		return;
> +	}
> +

NAK, that would break in a mixed environment with APU+Vega10.

Instead just go into gmc_v9_0_sw_init() and set max_pfn = 1ULL << 36 and 
add a comment there why we hardcode this value for Vega10 and later.

Christian.

>   	if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
>   		dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
>   			 amdgpu_vm_size);


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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10
       [not found]         ` <0b86e484-9d24-039d-ec26-ed973b0a7f14-5C7GfCeVMHo@public.gmane.org>
@ 2017-03-29 14:17           ` Alex Deucher
       [not found]             ` <CADnq5_N+w++4ckC4pJkFBh5ouAH+zvwVwuP=XxDUuF=dsLEuLA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 8+ messages in thread
From: Alex Deucher @ 2017-03-29 14:17 UTC (permalink / raw)
  To: Christian König; +Cc: Junwei Zhang, amd-gfx list

On Wed, Mar 29, 2017 at 4:47 AM, Christian König
<christian.koenig@amd.com> wrote:
> Am 29.03.2017 um 10:08 schrieb Junwei Zhang:
>>
>> Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> index 1ad1113..4af4ea0 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> @@ -1080,6 +1080,11 @@ static void amdgpu_get_block_size(struct
>> amdgpu_device *adev)
>>     static void amdgpu_check_vm_size(struct amdgpu_device *adev)
>>   {
>> +       if (adev->asic_type >= CHIP_VEGA10) {
>> +               amdgpu_vm_size = 1U << 18; /* 256TB */
>> +               return;
>> +       }
>> +
>
>
> NAK, that would break in a mixed environment with APU+Vega10.
>
> Instead just go into gmc_v9_0_sw_init() and set max_pfn = 1ULL << 36 and add
> a comment there why we hardcode this value for Vega10 and later.
>

We should fix this for real and move these variables into the driver
vm structure and then set those based on the global parameter
variables in the various gmc modules.

Alex

> Christian.
>
>>         if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
>>                 dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
>>                          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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10
       [not found]             ` <CADnq5_N+w++4ckC4pJkFBh5ouAH+zvwVwuP=XxDUuF=dsLEuLA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2017-03-29 14:27               ` Christian König
       [not found]                 ` <117a4bc8-debb-76b4-dc2f-6eb4cd247049-5C7GfCeVMHo@public.gmane.org>
  0 siblings, 1 reply; 8+ messages in thread
From: Christian König @ 2017-03-29 14:27 UTC (permalink / raw)
  To: Alex Deucher; +Cc: Junwei Zhang, amd-gfx list

Am 29.03.2017 um 16:17 schrieb Alex Deucher:
> On Wed, Mar 29, 2017 at 4:47 AM, Christian König
> <christian.koenig@amd.com> wrote:
>> Am 29.03.2017 um 10:08 schrieb Junwei Zhang:
>>> Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
>>> ---
>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 +++++
>>>    1 file changed, 5 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>> index 1ad1113..4af4ea0 100644
>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>> @@ -1080,6 +1080,11 @@ static void amdgpu_get_block_size(struct
>>> amdgpu_device *adev)
>>>      static void amdgpu_check_vm_size(struct amdgpu_device *adev)
>>>    {
>>> +       if (adev->asic_type >= CHIP_VEGA10) {
>>> +               amdgpu_vm_size = 1U << 18; /* 256TB */
>>> +               return;
>>> +       }
>>> +
>>
>> NAK, that would break in a mixed environment with APU+Vega10.
>>
>> Instead just go into gmc_v9_0_sw_init() and set max_pfn = 1ULL << 36 and add
>> a comment there why we hardcode this value for Vega10 and later.
>>
> We should fix this for real and move these variables into the driver
> vm structure and then set those based on the global parameter
> variables in the various gmc modules.

Yeah, that's exactly what I've suggested as well.

max_pfn is already part of the vm manager structure, so setting this 
different on Vega10 than on previous generations shouldn't be a problem.

We just need to add the block size there as well and should be done with it.

Christian.

>
> Alex
>
>> Christian.
>>
>>>          if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
>>>                  dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
>>>                           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

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10
       [not found]                 ` <117a4bc8-debb-76b4-dc2f-6eb4cd247049-5C7GfCeVMHo@public.gmane.org>
@ 2017-03-31  2:53                   ` Zhang, Jerry (Junwei)
  0 siblings, 0 replies; 8+ messages in thread
From: Zhang, Jerry (Junwei) @ 2017-03-31  2:53 UTC (permalink / raw)
  To: Christian König, Alex Deucher; +Cc: amd-gfx list

On 03/29/2017 10:27 PM, Christian König wrote:
> Am 29.03.2017 um 16:17 schrieb Alex Deucher:
>> On Wed, Mar 29, 2017 at 4:47 AM, Christian König
>> <christian.koenig@amd.com> wrote:
>>> Am 29.03.2017 um 10:08 schrieb Junwei Zhang:
>>>> Signed-off-by: Junwei Zhang <Jerry.Zhang@amd.com>
>>>> ---
>>>>    drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 +++++
>>>>    1 file changed, 5 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> index 1ad1113..4af4ea0 100644
>>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>>>> @@ -1080,6 +1080,11 @@ static void amdgpu_get_block_size(struct
>>>> amdgpu_device *adev)
>>>>      static void amdgpu_check_vm_size(struct amdgpu_device *adev)
>>>>    {
>>>> +       if (adev->asic_type >= CHIP_VEGA10) {
>>>> +               amdgpu_vm_size = 1U << 18; /* 256TB */
>>>> +               return;
>>>> +       }
>>>> +
>>>
>>> NAK, that would break in a mixed environment with APU+Vega10.
>>>
>>> Instead just go into gmc_v9_0_sw_init() and set max_pfn = 1ULL << 36 and add
>>> a comment there why we hardcode this value for Vega10 and later.
>>>
>> We should fix this for real and move these variables into the driver
>> vm structure and then set those based on the global parameter
>> variables in the various gmc modules.
>
> Yeah, that's exactly what I've suggested as well.
>
> max_pfn is already part of the vm manager structure, so setting this different
> on Vega10 than on previous generations shouldn't be a problem.
>
> We just need to add the block size there as well and should be done with it.

Thanks for all the comments above.
Prepared another patch to fix it.

Jerry.

>
> Christian.
>
>>
>> Alex
>>
>>> Christian.
>>>
>>>>          if (!amdgpu_check_pot_argument(amdgpu_vm_size)) {
>>>>                  dev_warn(adev->dev, "VM size (%d) must be a power of 2\n",
>>>>                           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

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-03-31  2:53 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-29  8:08 [PATCH 1/2] drm/amdgpu: create a func to check vm size Junwei Zhang
     [not found] ` <1490774912-583-1-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
2017-03-29  8:08   ` [PATCH 2/2] drm/amdgpu: set vm size as 256TB for Vega10 Junwei Zhang
     [not found]     ` <1490774912-583-2-git-send-email-Jerry.Zhang-5C7GfCeVMHo@public.gmane.org>
2017-03-29  8:47       ` Christian König
     [not found]         ` <0b86e484-9d24-039d-ec26-ed973b0a7f14-5C7GfCeVMHo@public.gmane.org>
2017-03-29 14:17           ` Alex Deucher
     [not found]             ` <CADnq5_N+w++4ckC4pJkFBh5ouAH+zvwVwuP=XxDUuF=dsLEuLA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-03-29 14:27               ` Christian König
     [not found]                 ` <117a4bc8-debb-76b4-dc2f-6eb4cd247049-5C7GfCeVMHo@public.gmane.org>
2017-03-31  2:53                   ` Zhang, Jerry (Junwei)
2017-03-29  8:17   ` [PATCH 1/2] drm/amdgpu: create a func to check vm size zhoucm1
2017-03-29  8:44   ` Christian König

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.