On 2023-10-20 12:37, Alex Deucher wrote: > On Tue, Oct 17, 2023 at 9:22 PM Luben Tuikov <luben.tuikov@xxxxxxx> wrote: >> >> Remove a redundant call to amdgpu_ctx_priority_is_valid() from >> amdgpu_ctx_priority_permit(), which is called from amdgpu_ctx_init() which is >> called from amdgpu_ctx_alloc() which is called from amdgpu_ctx_ioctl(), where >> we've called amdgpu_ctx_priority_is_valid() already first thing in the >> function. >> >> Cc: Alex Deucher <Alexander.Deucher@xxxxxxx> >> Cc: Christian König <christian.koenig@xxxxxxx> >> Signed-off-by: Luben Tuikov <luben.tuikov@xxxxxxx> > > Please push this to drm-misc since it depends on your previous patches. Done! Pushed to drm-misc-fixes, where the other two landed. Regards, Luben > > Alex > >> --- >> drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 15 ++++++++------- >> 1 file changed, 8 insertions(+), 7 deletions(-) >> >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c >> index 68db924161ef66..4c6ffca97c4512 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c >> @@ -56,6 +56,10 @@ bool amdgpu_ctx_priority_is_valid(int32_t ctx_prio) >> return true; >> default: >> case AMDGPU_CTX_PRIORITY_UNSET: >> + /* UNSET priority is not valid and we don't carry that >> + * around, but set it to NORMAL in the only place this >> + * function is called, amdgpu_ctx_ioctl(). >> + */ >> return false; >> } >> } >> @@ -96,9 +100,6 @@ amdgpu_ctx_to_drm_sched_prio(int32_t ctx_prio) >> static int amdgpu_ctx_priority_permit(struct drm_file *filp, >> int32_t priority) >> { >> - if (!amdgpu_ctx_priority_is_valid(priority)) >> - return -EINVAL; >> - >> /* NORMAL and below are accessible by everyone */ >> if (priority <= AMDGPU_CTX_PRIORITY_NORMAL) >> return 0; >> @@ -625,8 +626,6 @@ static int amdgpu_ctx_query2(struct amdgpu_device *adev, >> return 0; >> } >> >> - >> - >> static int amdgpu_ctx_stable_pstate(struct amdgpu_device *adev, >> struct amdgpu_fpriv *fpriv, uint32_t id, >> bool set, u32 *stable_pstate) >> @@ -669,8 +668,10 @@ int amdgpu_ctx_ioctl(struct drm_device *dev, void *data, >> id = args->in.ctx_id; >> priority = args->in.priority; >> >> - /* For backwards compatibility reasons, we need to accept >> - * ioctls with garbage in the priority field */ >> + /* For backwards compatibility, we need to accept ioctls with garbage >> + * in the priority field. Garbage values in the priority field, result >> + * in the priority being set to NORMAL. >> + */ >> if (!amdgpu_ctx_priority_is_valid(priority)) >> priority = AMDGPU_CTX_PRIORITY_NORMAL; >> >> >> base-commit: 915718484b8fa1eede4499a939e2e4fc0d85caa4 >> prerequisite-patch-id: a36f628997d923f66da5342e760e8b45ff959fb8 >> prerequisite-patch-id: f15148c302329c0c60d86040571c61d367bd05e7 >> -- >> 2.42.0 >>