drm/nouveau: remove incorrect __user annotations
authorDanilo Krummrich <dakr@redhat.com>
Mon, 7 Aug 2023 16:32:24 +0000 (18:32 +0200)
committerDanilo Krummrich <dakr@redhat.com>
Tue, 8 Aug 2023 02:47:19 +0000 (04:47 +0200)
Fix copy-paste error causing EXEC and VM_BIND syscalls data pointers
to carry incorrect __user annotations.

Fixes: b88baab82871 ("drm/nouveau: implement new VM_BIND uAPI")
Reported-by: kernel test robot <lkp@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Danilo Krummrich <dakr@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230807163238.2091-4-dakr@redhat.com
drivers/gpu/drm/nouveau/nouveau_exec.c
drivers/gpu/drm/nouveau/nouveau_exec.h
drivers/gpu/drm/nouveau/nouveau_uvmm.c
drivers/gpu/drm/nouveau/nouveau_uvmm.h

index 42d9dd4..0f927ad 100644 (file)
@@ -293,7 +293,7 @@ err_job_fini:
 
 static int
 nouveau_exec_ucopy(struct nouveau_exec_job_args *args,
-                  struct drm_nouveau_exec __user *req)
+                  struct drm_nouveau_exec *req)
 {
        struct drm_nouveau_sync **s;
        u32 inc = req->wait_count;
@@ -352,7 +352,7 @@ nouveau_exec_ufree(struct nouveau_exec_job_args *args)
 
 int
 nouveau_exec_ioctl_exec(struct drm_device *dev,
-                       void __user *data,
+                       void *data,
                        struct drm_file *file_priv)
 {
        struct nouveau_abi16 *abi16 = nouveau_abi16_get(file_priv);
@@ -360,7 +360,7 @@ nouveau_exec_ioctl_exec(struct drm_device *dev,
        struct nouveau_abi16_chan *chan16;
        struct nouveau_channel *chan = NULL;
        struct nouveau_exec_job_args args = {};
-       struct drm_nouveau_exec __user *req = data;
+       struct drm_nouveau_exec *req = data;
        int ret = 0;
 
        if (unlikely(!abi16))
index 3032db2..778cacd 100644 (file)
@@ -48,7 +48,7 @@ struct nouveau_exec_job {
 int nouveau_exec_job_init(struct nouveau_exec_job **job,
                          struct nouveau_exec_job_args *args);
 
-int nouveau_exec_ioctl_exec(struct drm_device *dev, void __user *data,
+int nouveau_exec_ioctl_exec(struct drm_device *dev, void *data,
                            struct drm_file *file_priv);
 
 #endif
index b515a21..2acbac7 100644 (file)
@@ -1687,7 +1687,7 @@ err_job_fini:
 
 static int
 nouveau_uvmm_vm_bind_ucopy(struct nouveau_uvmm_bind_job_args *args,
-                          struct drm_nouveau_vm_bind __user *req)
+                          struct drm_nouveau_vm_bind *req)
 {
        struct drm_nouveau_sync **s;
        u32 inc = req->wait_count;
@@ -1749,12 +1749,12 @@ nouveau_uvmm_vm_bind_ufree(struct nouveau_uvmm_bind_job_args *args)
 
 int
 nouveau_uvmm_ioctl_vm_bind(struct drm_device *dev,
-                          void __user *data,
+                          void *data,
                           struct drm_file *file_priv)
 {
        struct nouveau_cli *cli = nouveau_cli(file_priv);
        struct nouveau_uvmm_bind_job_args args = {};
-       struct drm_nouveau_vm_bind __user *req = data;
+       struct drm_nouveau_vm_bind *req = data;
        int ret = 0;
 
        if (unlikely(!nouveau_cli_uvmm_locked(cli)))
index 3923c03..534baad 100644 (file)
@@ -89,10 +89,10 @@ void nouveau_uvmm_fini(struct nouveau_uvmm *uvmm);
 void nouveau_uvmm_bo_map_all(struct nouveau_bo *nvbov, struct nouveau_mem *mem);
 void nouveau_uvmm_bo_unmap_all(struct nouveau_bo *nvbo);
 
-int nouveau_uvmm_ioctl_vm_init(struct drm_device *dev, void __user *data,
+int nouveau_uvmm_ioctl_vm_init(struct drm_device *dev, void *data,
                               struct drm_file *file_priv);
 
-int nouveau_uvmm_ioctl_vm_bind(struct drm_device *dev, void __user *data,
+int nouveau_uvmm_ioctl_vm_bind(struct drm_device *dev, void *data,
                               struct drm_file *file_priv);
 
 static inline void nouveau_uvmm_lock(struct nouveau_uvmm *uvmm)