On 09.10.2017 17:53, Christian König wrote:
From: Christian König <[email protected]>

Allows userspace to figure out if VRAM was lost.

Signed-off-by: Christian König <[email protected]>

Yes, I think we can use this in Mesa. We'll need to actually code this up, but for now this patch is:

Reviewed-by: Nicolai Hähnle <[email protected]>


---
  drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 3 +++
  include/uapi/drm/amdgpu_drm.h           | 1 +
  2 files changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index 0fc36b2..49cc496 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@ -762,6 +762,9 @@ static int amdgpu_info_ioctl(struct drm_device *dev, void 
*data, struct drm_file
                }
                return copy_to_user(out, &ui32, min(size, 4u)) ? -EFAULT : 0;
        }
+       case AMDGPU_INFO_VRAM_LOST_COUNTER:
+               ui32 = atomic_read(&adev->vram_lost_counter);
+               return copy_to_user(out, &ui32, min(size, 4u)) ? -EFAULT : 0;
        default:
                DRM_DEBUG_KMS("Invalid request %d\n", info->query);
                return -EINVAL;
diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h
index 3bf41a6..de0a2ac 100644
--- a/include/uapi/drm/amdgpu_drm.h
+++ b/include/uapi/drm/amdgpu_drm.h
@@ -632,6 +632,7 @@ struct drm_amdgpu_cs_chunk_data {
        #define AMDGPU_INFO_SENSOR_VDDGFX               0x7
  /* Number of VRAM page faults on CPU access. */
  #define AMDGPU_INFO_NUM_VRAM_CPU_PAGE_FAULTS  0x1E
+#define AMDGPU_INFO_VRAM_LOST_COUNTER          0x1F
#define AMDGPU_INFO_MMR_SE_INDEX_SHIFT 0
  #define AMDGPU_INFO_MMR_SE_INDEX_MASK 0xff



--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to