On Thu, Nov 5, 2020 at 12:21 PM Deepak R Varma <mh12gx2825@xxxxxxxxx> wrote: > > idr_init() uses base 0 which is an invalid identifier for this driver. > The idr_alloc for this driver uses VC4_PERFMONID_MIN as start value for > ID range and it is #defined to 1. 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 / available. > > References: commit 6ce711f27500 ("idr: Make 1-based IDRs more efficient") > > Signed-off-by: Deepak R Varma <mh12gx2825@xxxxxxxxx> > --- > Changes since v1: > - Change suggested by Eric Anholt > 1. Use VC4_PERFMONID_MIN instead of magic number 1 > > drivers/gpu/drm/vc4/vc4_perfmon.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/vc4/vc4_perfmon.c b/drivers/gpu/drm/vc4/vc4_perfmon.c > index f4aa75efd16b..18abc06335c1 100644 > --- a/drivers/gpu/drm/vc4/vc4_perfmon.c > +++ b/drivers/gpu/drm/vc4/vc4_perfmon.c > @@ -77,7 +77,7 @@ struct vc4_perfmon *vc4_perfmon_find(struct vc4_file *vc4file, int id) > void vc4_perfmon_open_file(struct vc4_file *vc4file) > { > mutex_init(&vc4file->perfmon.lock); > - idr_init(&vc4file->perfmon.idr); > + idr_init_base(&vc4file->perfmon.idr, VC4_PERFMONID_MIN); > } > > static int vc4_perfmon_idr_del(int id, void *elem, void *data) > -- > 2.25.1 Reviewed-by: Eric Anholt <eric@xxxxxxxxxx> hopefully Maxime can apply it. _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel