amdgpu_gem_metadata_ioctl() handles AMDGPU_GEM_METADATA_OP_GET_METADATA
and AMDGPU_GEM_METADATA_OP_SET_METADATA and returns r otherwise, which
is 0 from the successful amdgpu_bo_reserve(). Any other op therefore
succeeds without doing anything.
Return -EINVAL for unknown ops.
Fixes: d38ceaf99ed0 ("drm/amdgpu: add core driver (v4)")
Signed-off-by: Jesse Zhang <[email protected]>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
index 0552b17d9aa8..012daaefa315 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
@@ -780,6 +780,8 @@ int amdgpu_gem_metadata_ioctl(struct drm_device *dev, void
*data,
r = amdgpu_bo_set_metadata(robj, args->data.data,
args->data.data_size_bytes,
args->data.flags);
+ } else {
+ r = -EINVAL;
}
unreserve:
--
2.50.1