[bug report] dma-buf: heaps: Add heap helpers

Dan Carpenter dan.carpenter at oracle.com
Sat Nov 2 08:45:28 UTC 2019


On Fri, Nov 01, 2019 at 12:31:53PM -0700, John Stultz wrote:
> On Thu, Oct 31, 2019 at 4:07 AM Dan Carpenter <dan.carpenter at oracle.com> wrote:
> > The patch 7b87ea704fd9: "dma-buf: heaps: Add heap helpers" from Oct
> > 21, 2019, leads to the following static checker warning:
> >
> >         drivers/dma-buf/heaps/heap-helpers.c:165 dma_heap_vm_fault()
> >         warn: uncapped user index 'buffer->pages[vmf->pgoff]'
> >
> > drivers/dma-buf/heaps/heap-helpers.c
> >    160  static vm_fault_t dma_heap_vm_fault(struct vm_fault *vmf)
> >    161  {
> >    162          struct vm_area_struct *vma = vmf->vma;
> >    163          struct heap_helper_buffer *buffer = vma->vm_private_data;
> >    164
> >    165          vmf->page = buffer->pages[vmf->pgoff];
> >                                           ^^^^^^^^^^
> > Smatch for some reason thinks this needs to be checked.  Smatch also
> > gets confused by these fault handlers and thinks there is some recursion
> > involved...
> 
> Hrm, I'm not totally sure I grok what it's looking for, but I'm
> guessing it's suggesting we check that pgoff isn't larger then the
> pagecount?
> I'll add that check in, but let me know if I've misunderstood.

Yeah, that's right.  Or maybe pgoff is checked somewhere else?

regards,
dan carpenter



More information about the dri-devel mailing list