mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 23:03:57 -04:00
drm/amdgpu: Introduce VF critical region check for RAS poison injection
The SRIOV guest send requet to host to check whether the poison injection address is in VF critical region or not via mabox. Signed-off-by: Xiang Liu <xiang.liu@amd.com> Reviewed-by: Shravan Kumar Gande <Shravankumar.Gande@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
@@ -98,6 +98,7 @@ struct amdgpu_virt_ops {
|
||||
int (*req_ras_err_count)(struct amdgpu_device *adev);
|
||||
int (*req_ras_cper_dump)(struct amdgpu_device *adev, u64 vf_rptr);
|
||||
int (*req_bad_pages)(struct amdgpu_device *adev);
|
||||
int (*req_ras_chk_criti)(struct amdgpu_device *adev, u64 addr);
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -252,6 +253,7 @@ struct amdgpu_virt_ras_err_handler_data {
|
||||
struct amdgpu_virt_ras {
|
||||
struct ratelimit_state ras_error_cnt_rs;
|
||||
struct ratelimit_state ras_cper_dump_rs;
|
||||
struct ratelimit_state ras_chk_criti_rs;
|
||||
struct mutex ras_telemetry_mutex;
|
||||
uint64_t cper_rptr;
|
||||
};
|
||||
@@ -453,4 +455,5 @@ int amdgpu_virt_ras_telemetry_post_reset(struct amdgpu_device *adev);
|
||||
bool amdgpu_virt_ras_telemetry_block_en(struct amdgpu_device *adev,
|
||||
enum amdgpu_ras_block block);
|
||||
void amdgpu_virt_request_bad_pages(struct amdgpu_device *adev);
|
||||
int amdgpu_virt_check_vf_critical_region(struct amdgpu_device *adev, u64 addr, bool *hit);
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user