Skip to content

Commit 2401331

Browse files
robclarkmartinezjavier
authored andcommitted
drm/shmem-helper: Remove errant put in error path
drm_gem_shmem_mmap() doesn't own this reference, resulting in the GEM object getting prematurely freed leading to a later use-after-free. Link: https://syzkaller.appspot.com/bug?extid=c8ae65286134dd1b800d Reported-by: [email protected] Fixes: 2194a63 ("drm: Add library for shmem backed GEM objects") Cc: [email protected] Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Daniel Vetter <[email protected]> Signed-off-by: Javier Martinez Canillas <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1 parent d3d6b1b commit 2401331

File tree

1 file changed

+1
-3
lines changed

1 file changed

+1
-3
lines changed

drivers/gpu/drm/drm_gem_shmem_helper.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -622,10 +622,8 @@ int drm_gem_shmem_mmap(struct drm_gem_shmem_object *shmem, struct vm_area_struct
622622
}
623623

624624
ret = drm_gem_shmem_get_pages(shmem);
625-
if (ret) {
626-
drm_gem_vm_close(vma);
625+
if (ret)
627626
return ret;
628-
}
629627

630628
vma->vm_flags |= VM_PFNMAP | VM_DONTEXPAND | VM_DONTDUMP;
631629
vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);

0 commit comments

Comments
 (0)