On Thu, Nov 05, 2020 at 12:16:34PM +0100, Daniel Vetter wrote: > On Thu, Nov 5, 2020 at 11:31 AM Deepak R Varma <mh12gx2...@gmail.com> wrote: > > > > On Thu, Nov 05, 2020 at 10:42:15AM +0100, Daniel Vetter wrote: > > > On Wed, Nov 04, 2020 at 04:53:38PM +0530, Deepak R Varma wrote: > > > > 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 <mh12gx2...@gmail.com> > > > > > > Tiny typo in the commit message summary: s/vgm/vgem/ > > > > > > Also can you pls resbumit this with intel-gfx mailing list on cc (like for > > > i915)? There's a CI bot there which runs a few vgem tests, would be good > > > to confirm nothing has been broken. > > > > Hi Daniel, > > sure. I will correct the summary typo and also feed it to the CI bot. > > > > Also, according to Felix Kuehling's comment on a similar patch for > > drm/amdkfd driver, an ID can be 0. The change I am proposing is more > > efficient for conditions that do not want to use ID as 0. Otherwise, > > id = 0 is an acceptable possibility. So, my statement that "Id 0 is an > > invalid > > identifier" is not true. > > > > Can you please comment if this is accurate and I should reword my log > > message as well? > > You need to review the vgem code to see whether we're using id 0 as > invalid identifier or not. That's part of the work that needs to be > done here. Best would be to explain the evidence you've found in the > commit message, why id 0 is invalid for this specific code. Since yes > in general that's not true, it depends how the idr is used. > -Daniel > You are correct. For the vgem driver, id 0 is not used. The patch should then apply to this driver.
Thank you very much Daniel. I have just sent v2 of the patch with your suggestions. ./drv > > > > Thank you. > > ./drv > > > > > > > > Otherwise lgtm. > > > > > > Thanks, Daniel > > > > > > > --- > > > > drivers/gpu/drm/vgem/vgem_fence.c | 2 +- > > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > > > diff --git a/drivers/gpu/drm/vgem/vgem_fence.c > > > > b/drivers/gpu/drm/vgem/vgem_fence.c > > > > index 17f32f550dd9..2902dc6e64fa 100644 > > > > --- a/drivers/gpu/drm/vgem/vgem_fence.c > > > > +++ b/drivers/gpu/drm/vgem/vgem_fence.c > > > > @@ -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; > > > > } > > > > -- > > > > 2.25.1 > > > > > > > > > > -- > > > Daniel Vetter > > > Software Engineer, Intel Corporation > > > http://blog.ffwll.ch > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel