gpu: nvgpu: add BVEC test for nvgpu_rc_mmu_fault

Update nvgpu_rc_mmu_fault to return error on invalid params and
add BVEC test for it.

JIRA NVGPU-6772

Change-Id: If44d80888c665ca3b528c9937de8a66ccce29f57
Signed-off-by: Sagar Kamble <skamble@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2551618
(cherry picked from commit 229727512a1facc33ef9f16cc1831405e960ab2a)
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2623626
Reviewed-by: Vaibhav Kachore <vkachore@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Sagar Kamble
2021-06-30 01:53:11 +05:30
committed by mobile promotions
parent 80efe558b1
commit bcbccbe083
5 changed files with 165 additions and 8 deletions

View File

@@ -255,6 +255,8 @@ void nvgpu_rc_tsg_and_related_engines(struct gk20a *g, struct nvgpu_tsg *tsg,
* @param rc_type [in] Recovery type.
* @param mmufault [in] Mmu fault info
*
* Validate the id. Valid range is [0, g->fifo.num_channels).
* Validate the id type parameter. Valid range is [ID_TYPE_CHANNEL, ID_TYPE_TSG].
* Do mmu fault recovery dependending on the \a rc_type, \a act_eng_bitmask,
* \a hw_id and \a id_type.
* For safety,
@@ -262,8 +264,11 @@ void nvgpu_rc_tsg_and_related_engines(struct gk20a *g, struct nvgpu_tsg *tsg,
* when \a id_type is TSG.
* - Mark the channels of that TSG as unserviceable when \a id_type is TSG
* - print warning if quiesce is not triggered already.
*
* @return 0 in case of success, < 0 in case of failure.
* @retval -EINVAL in case ID and ID type are invalid.
*/
void nvgpu_rc_mmu_fault(struct gk20a *g, u32 act_eng_bitmask,
int nvgpu_rc_mmu_fault(struct gk20a *g, u32 act_eng_bitmask,
u32 id, unsigned int id_type, unsigned int rc_type,
struct mmu_fault_info *mmufault);