Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/amd/ras: Handle address check in SR-IOV guest

Handle address check validity command in SR-IOV guest

Signed-off-by: Jinzhou Su <jinzhou.su@amd.com>
Reviewed-by: YiPeng Chai <YiPeng.Chai@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Jinzhou Su and committed by
Alex Deucher
a1fafed0 186eb92a

+22
+20
drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_virt_ras_cmd.c
··· 381 381 return RAS_CMD__SUCCESS; 382 382 } 383 383 384 + int amdgpu_virt_ras_check_address_validity(struct amdgpu_device *adev, 385 + uint64_t address, bool *hit) 386 + { 387 + struct ras_cmd_address_check_req req = {0}; 388 + struct ras_cmd_address_check_rsp rsp = {0}; 389 + int ret = 0; 390 + 391 + req.address = address; 392 + 393 + ret = amdgpu_ras_mgr_handle_ras_cmd(adev, RAS_CMD__CHECK_ADDRESS_VALIDITY, 394 + &req, sizeof(req), &rsp, sizeof(rsp)); 395 + 396 + if (ret) 397 + return RAS_CMD__ERROR_GENERIC; 398 + 399 + *hit = rsp.result ? true : false; 400 + 401 + return RAS_CMD__SUCCESS; 402 + } 403 + 384 404 static struct ras_cmd_func_map amdgpu_virt_ras_cmd_maps[] = { 385 405 {RAS_CMD__GET_CPER_SNAPSHOT, amdgpu_virt_ras_get_cper_snapshot}, 386 406 {RAS_CMD__GET_CPER_RECORD, amdgpu_virt_ras_get_cper_records},
+2
drivers/gpu/drm/amd/ras/ras_mgr/amdgpu_virt_ras_cmd.h
··· 58 58 int amdgpu_virt_ras_post_reset(struct amdgpu_device *adev); 59 59 void amdgpu_virt_ras_set_remote_uniras(struct amdgpu_device *adev, bool en); 60 60 bool amdgpu_virt_ras_remote_uniras_enabled(struct amdgpu_device *adev); 61 + int amdgpu_virt_ras_check_address_validity(struct amdgpu_device *adev, 62 + uint64_t address, bool *hit); 61 63 #endif