drm/tegra: replace idr_init() by idr_init_base()
authorDeepak R Varma <mh12gx2825@gmail.com>
Thu, 5 Nov 2020 17:59:28 +0000 (23:29 +0530)
committerThierry Reding <treding@nvidia.com>
Tue, 10 Nov 2020 19:49:57 +0000 (20:49 +0100)
idr_init() uses base 0 which is an invalid identifier for this driver.
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: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/drm.c

index ba9d1c3e7cacf1bedeb3e73c4f9752bda1e5b32f..e4baf07992a4da636228638d2db344ea4eb4ff0a 100644 (file)
@@ -90,7 +90,7 @@ static int tegra_drm_open(struct drm_device *drm, struct drm_file *filp)
        if (!fpriv)
                return -ENOMEM;
 
-       idr_init(&fpriv->contexts);
+       idr_init_base(&fpriv->contexts, 1);
        mutex_init(&fpriv->lock);
        filp->driver_priv = fpriv;