All of lore.kernel.org
 help / color / mirror / Atom feed
* [bug report] dma-buf: heaps: Add heap helpers
@ 2019-10-31 11:07 Dan Carpenter
  2019-11-01 19:31 ` John Stultz
  0 siblings, 1 reply; 3+ messages in thread
From: Dan Carpenter @ 2019-10-31 11:07 UTC (permalink / raw)
  To: john.stultz; +Cc: linaro-mm-sig, dri-devel

Hello John Stultz,

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...

   166          get_page(vmf->page);
   167  
   168          return 0;
   169  }
   170  
   171  static const struct vm_operations_struct dma_heap_vm_ops = {
   172          .fault = dma_heap_vm_fault,
   173  };
   174  

regards,
dan carpenter
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [bug report] dma-buf: heaps: Add heap helpers
  2019-10-31 11:07 [bug report] dma-buf: heaps: Add heap helpers Dan Carpenter
@ 2019-11-01 19:31 ` John Stultz
  2019-11-02  8:45   ` Dan Carpenter
  0 siblings, 1 reply; 3+ messages in thread
From: John Stultz @ 2019-11-01 19:31 UTC (permalink / raw)
  To: Dan Carpenter; +Cc: moderated list:DMA BUFFER SHARING FRAMEWORK, dri-devel

On Thu, Oct 31, 2019 at 4:07 AM Dan Carpenter <dan.carpenter@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.

Thanks for the report!
-john
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [bug report] dma-buf: heaps: Add heap helpers
  2019-11-01 19:31 ` John Stultz
@ 2019-11-02  8:45   ` Dan Carpenter
  0 siblings, 0 replies; 3+ messages in thread
From: Dan Carpenter @ 2019-11-02  8:45 UTC (permalink / raw)
  To: John Stultz; +Cc: moderated list:DMA BUFFER SHARING FRAMEWORK, dri-devel

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@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

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-11-02  8:45 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-31 11:07 [bug report] dma-buf: heaps: Add heap helpers Dan Carpenter
2019-11-01 19:31 ` John Stultz
2019-11-02  8:45   ` Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.