RE: [PATCH] drm/amdgpu: define macros for retire page reservation

2019-10-22 Thread Deucher, Alexander
> -Original Message-
> From: amd-gfx  On Behalf Of
> Chen, Guchun
> Sent: Monday, October 21, 2019 11:43 PM
> To: amd-gfx@lists.freedesktop.org; Zhang, Hawking
> ; Li, Dennis ;
> Grodzovsky, Andrey ; Zhou1, Tao
> 
> Cc: Chen, Guchun 
> Subject: [PATCH] drm/amdgpu: define macros for retire page reservation
> 
> Easy for maintainance.
> 
> Signed-off-by: Guchun Chen 

Reviewed-by: Alex Deucher 

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 17 +++--
>  1 file changed, 11 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> index 2d9e13d2a71a..796326b36e00 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
> @@ -68,6 +68,11 @@ const char *ras_block_string[] = {
>  /* inject address is 52 bits */
>  #define  RAS_UMC_INJECT_ADDR_LIMIT   (0x1ULL << 52)
> 
> +enum amdgpu_ras_retire_page_reservation {
> + AMDGPU_RAS_RETIRE_PAGE_RESERVED,
> + AMDGPU_RAS_RETIRE_PAGE_PENDING,
> + AMDGPU_RAS_RETIRE_PAGE_FAULT,
> +};
> 
>  atomic_t amdgpu_ras_in_intr = ATOMIC_INIT(0);
> 
> @@ -809,11 +814,11 @@ static int amdgpu_ras_badpages_read(struct
> amdgpu_device *adev,  static char
> *amdgpu_ras_badpage_flags_str(unsigned int flags)  {
>   switch (flags) {
> - case 0:
> + case AMDGPU_RAS_RETIRE_PAGE_RESERVED:
>   return "R";
> - case 1:
> + case AMDGPU_RAS_RETIRE_PAGE_PENDING:
>   return "P";
> - case 2:
> + case AMDGPU_RAS_RETIRE_PAGE_FAULT:
>   default:
>   return "F";
>   };
> @@ -1294,13 +1299,13 @@ static int amdgpu_ras_badpages_read(struct
> amdgpu_device *adev,
>   (*bps)[i] = (struct ras_badpage){
>   .bp = data->bps[i].retired_page,
>   .size = AMDGPU_GPU_PAGE_SIZE,
> - .flags = 0,
> + .flags = AMDGPU_RAS_RETIRE_PAGE_RESERVED,
>   };
> 
>   if (data->last_reserved <= i)
> - (*bps)[i].flags = 1;
> + (*bps)[i].flags =
> AMDGPU_RAS_RETIRE_PAGE_PENDING;
>   else if (data->bps_bo[i] == NULL)
> - (*bps)[i].flags = 2;
> + (*bps)[i].flags =
> AMDGPU_RAS_RETIRE_PAGE_FAULT;
>   }
> 
>   *count = data->count;
> --
> 2.17.1
> 
> ___
> 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: define macros for retire page reservation

2019-10-22 Thread Christian König

Am 22.10.19 um 05:43 schrieb Chen, Guchun:

Easy for maintainance.

Signed-off-by: Guchun Chen 


Acked-by: Christian König 


---
  drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 17 +++--
  1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
index 2d9e13d2a71a..796326b36e00 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
@@ -68,6 +68,11 @@ const char *ras_block_string[] = {
  /* inject address is 52 bits */
  #define   RAS_UMC_INJECT_ADDR_LIMIT   (0x1ULL << 52)
  
+enum amdgpu_ras_retire_page_reservation {

+   AMDGPU_RAS_RETIRE_PAGE_RESERVED,
+   AMDGPU_RAS_RETIRE_PAGE_PENDING,
+   AMDGPU_RAS_RETIRE_PAGE_FAULT,
+};
  
  atomic_t amdgpu_ras_in_intr = ATOMIC_INIT(0);
  
@@ -809,11 +814,11 @@ static int amdgpu_ras_badpages_read(struct amdgpu_device *adev,

  static char *amdgpu_ras_badpage_flags_str(unsigned int flags)
  {
switch (flags) {
-   case 0:
+   case AMDGPU_RAS_RETIRE_PAGE_RESERVED:
return "R";
-   case 1:
+   case AMDGPU_RAS_RETIRE_PAGE_PENDING:
return "P";
-   case 2:
+   case AMDGPU_RAS_RETIRE_PAGE_FAULT:
default:
return "F";
};
@@ -1294,13 +1299,13 @@ static int amdgpu_ras_badpages_read(struct 
amdgpu_device *adev,
(*bps)[i] = (struct ras_badpage){
.bp = data->bps[i].retired_page,
.size = AMDGPU_GPU_PAGE_SIZE,
-   .flags = 0,
+   .flags = AMDGPU_RAS_RETIRE_PAGE_RESERVED,
};
  
  		if (data->last_reserved <= i)

-   (*bps)[i].flags = 1;
+   (*bps)[i].flags = AMDGPU_RAS_RETIRE_PAGE_PENDING;
else if (data->bps_bo[i] == NULL)
-   (*bps)[i].flags = 2;
+   (*bps)[i].flags = AMDGPU_RAS_RETIRE_PAGE_FAULT;
}
  
  	*count = data->count;


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

[PATCH] drm/amdgpu: define macros for retire page reservation

2019-10-21 Thread Chen, Guchun
Easy for maintainance.

Signed-off-by: Guchun Chen 
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 17 +++--
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
index 2d9e13d2a71a..796326b36e00 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
@@ -68,6 +68,11 @@ const char *ras_block_string[] = {
 /* inject address is 52 bits */
 #defineRAS_UMC_INJECT_ADDR_LIMIT   (0x1ULL << 52)
 
+enum amdgpu_ras_retire_page_reservation {
+   AMDGPU_RAS_RETIRE_PAGE_RESERVED,
+   AMDGPU_RAS_RETIRE_PAGE_PENDING,
+   AMDGPU_RAS_RETIRE_PAGE_FAULT,
+};
 
 atomic_t amdgpu_ras_in_intr = ATOMIC_INIT(0);
 
@@ -809,11 +814,11 @@ static int amdgpu_ras_badpages_read(struct amdgpu_device 
*adev,
 static char *amdgpu_ras_badpage_flags_str(unsigned int flags)
 {
switch (flags) {
-   case 0:
+   case AMDGPU_RAS_RETIRE_PAGE_RESERVED:
return "R";
-   case 1:
+   case AMDGPU_RAS_RETIRE_PAGE_PENDING:
return "P";
-   case 2:
+   case AMDGPU_RAS_RETIRE_PAGE_FAULT:
default:
return "F";
};
@@ -1294,13 +1299,13 @@ static int amdgpu_ras_badpages_read(struct 
amdgpu_device *adev,
(*bps)[i] = (struct ras_badpage){
.bp = data->bps[i].retired_page,
.size = AMDGPU_GPU_PAGE_SIZE,
-   .flags = 0,
+   .flags = AMDGPU_RAS_RETIRE_PAGE_RESERVED,
};
 
if (data->last_reserved <= i)
-   (*bps)[i].flags = 1;
+   (*bps)[i].flags = AMDGPU_RAS_RETIRE_PAGE_PENDING;
else if (data->bps_bo[i] == NULL)
-   (*bps)[i].flags = 2;
+   (*bps)[i].flags = AMDGPU_RAS_RETIRE_PAGE_FAULT;
}
 
*count = data->count;
-- 
2.17.1

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