[PATCH] drm/amdgpu: Actually check flags for all context ops.
Alex Deucher
alexdeucher at gmail.com
Tue Aug 6 20:54:17 UTC 2024
On Tue, Aug 6, 2024 at 4:35 PM Bas Nieuwenhuizen
<bas at basnieuwenhuizen.nl> wrote:
>
> Missing validation ...
>
> Checked libdrm and it clears all the structs, so we should be
> safe to just check everything.
>
> Signed-off-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Applied. Thanks!
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
> index 5cb33ac99f70..c43d1b6e5d66 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
> @@ -685,16 +685,24 @@ int amdgpu_ctx_ioctl(struct drm_device *dev, void *data,
>
> switch (args->in.op) {
> case AMDGPU_CTX_OP_ALLOC_CTX:
> + if (args->in.flags)
> + return -EINVAL;
> r = amdgpu_ctx_alloc(adev, fpriv, filp, priority, &id);
> args->out.alloc.ctx_id = id;
> break;
> case AMDGPU_CTX_OP_FREE_CTX:
> + if (args->in.flags)
> + return -EINVAL;
> r = amdgpu_ctx_free(fpriv, id);
> break;
> case AMDGPU_CTX_OP_QUERY_STATE:
> + if (args->in.flags)
> + return -EINVAL;
> r = amdgpu_ctx_query(adev, fpriv, id, &args->out);
> break;
> case AMDGPU_CTX_OP_QUERY_STATE2:
> + if (args->in.flags)
> + return -EINVAL;
> r = amdgpu_ctx_query2(adev, fpriv, id, &args->out);
> break;
> case AMDGPU_CTX_OP_GET_STABLE_PSTATE:
> --
> 2.45.2
>
More information about the amd-gfx
mailing list