winsys/amdgpu: report a CS rejection as a reset only if there's no GPU reset

This commit is contained in:
Marek Olšák 2019-05-08 20:13:46 -04:00
parent 78e35df52a
commit 6b3343e5d8
1 changed files with 5 additions and 6 deletions

View File

@ -352,12 +352,6 @@ amdgpu_ctx_query_reset_status(struct radeon_winsys_ctx *rwctx)
uint32_t result, hangs;
int r;
/* Return a failure due to a rejected command submission. */
if (ctx->ws->num_total_rejected_cs > ctx->initial_num_total_rejected_cs) {
return ctx->num_rejected_cs ? PIPE_GUILTY_CONTEXT_RESET :
PIPE_INNOCENT_CONTEXT_RESET;
}
/* Return a failure due to a GPU hang. */
r = amdgpu_cs_query_reset_state(ctx->ctx, &result, &hangs);
if (r) {
@ -374,6 +368,11 @@ amdgpu_ctx_query_reset_status(struct radeon_winsys_ctx *rwctx)
return PIPE_UNKNOWN_CONTEXT_RESET;
case AMDGPU_CTX_NO_RESET:
default:
/* Return a failure due to a rejected command submission. */
if (ctx->ws->num_total_rejected_cs > ctx->initial_num_total_rejected_cs) {
return ctx->num_rejected_cs ? PIPE_GUILTY_CONTEXT_RESET :
PIPE_INNOCENT_CONTEXT_RESET;
}
return PIPE_NO_RESET;
}
}