OSDN Git Service

drm/vgem: replace idr_init() by idr_init_base()
authorDeepak R Varma <mh12gx2825@gmail.com>
Thu, 5 Nov 2020 17:36:46 +0000 (23:06 +0530)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 10 Nov 2020 14:22:28 +0000 (15:22 +0100)
idr_init() uses base 0 which is an invalid identifier. The new function
idr_init_base allows IDR to set the ID lookup from base 1. This avoids
all lookups that otherwise starts from 0 since 0 is always unused.

References: commit 6ce711f27500 ("idr: Make 1-based IDRs more efficient")

Signed-off-by: Deepak R Varma <mh12gx2825@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20201105173646.GA41732@localhost
drivers/gpu/drm/vgem/vgem_fence.c

index 17f32f5..2902dc6 100644 (file)
@@ -233,7 +233,7 @@ int vgem_fence_signal_ioctl(struct drm_device *dev,
 int vgem_fence_open(struct vgem_file *vfile)
 {
        mutex_init(&vfile->fence_mutex);
-       idr_init(&vfile->fence_idr);
+       idr_init_base(&vfile->fence_idr, 1);
 
        return 0;
 }