[PATCH v2] drm/vkms: Use new return type vm_fault_t

Souptick Joarder jrdr.linux at gmail.com
Tue Aug 28 16:53:32 UTC 2018


On Tue, Jul 31, 2018 at 12:05 AM Gustavo Padovan <gustavo at padovan.org> wrote:
>
> Hi Souptick,
>
> On Thu, Jul 26, 2018 at 08:15:49PM +0530, Souptick Joarder wrote:
> > Use new return type vm_fault_t for fault handler.
> >
> > Signed-off-by: Souptick Joarder <jrdr.linux at gmail.com>
> > ---
> > v2: Updated patch title
> >
> >  drivers/gpu/drm/vkms/vkms_drv.h | 2 +-
> >  drivers/gpu/drm/vkms/vkms_gem.c | 5 ++---
> >  2 files changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/vkms/vkms_drv.h b/drivers/gpu/drm/vkms/vkms_drv.h
> > index 07be29f..d5d04a8 100644
> > --- a/drivers/gpu/drm/vkms/vkms_drv.h
> > +++ b/drivers/gpu/drm/vkms/vkms_drv.h
> > @@ -65,7 +65,7 @@ struct drm_gem_object *vkms_gem_create(struct drm_device *dev,
> >                                      u32 *handle,
> >                                      u64 size);
> >
> > -int vkms_gem_fault(struct vm_fault *vmf);
> > +vm_fault_t vkms_gem_fault(struct vm_fault *vmf);
> >
> >  int vkms_dumb_create(struct drm_file *file, struct drm_device *dev,
> >                    struct drm_mode_create_dumb *args);
> > diff --git a/drivers/gpu/drm/vkms/vkms_gem.c b/drivers/gpu/drm/vkms/vkms_gem.c
> > index c7e3836..62e05dc 100644
> > --- a/drivers/gpu/drm/vkms/vkms_gem.c
> > +++ b/drivers/gpu/drm/vkms/vkms_gem.c
> > @@ -43,14 +43,14 @@ void vkms_gem_free_object(struct drm_gem_object *obj)
> >       kfree(gem);
> >  }
> >
> > -int vkms_gem_fault(struct vm_fault *vmf)
> > +vm_fault_t vkms_gem_fault(struct vm_fault *vmf)
> >  {
> >       struct vm_area_struct *vma = vmf->vma;
> >       struct vkms_gem_object *obj = vma->vm_private_data;
> >       unsigned long vaddr = vmf->address;
> >       pgoff_t page_offset;
> >       loff_t num_pages;
> > -     int ret;
> > +     vm_fault_t ret = VM_FAULT_SIGBUS;
> >
> >       page_offset = (vaddr - vma->vm_start) >> PAGE_SHIFT;
> >       num_pages = DIV_ROUND_UP(obj->gem.size, PAGE_SIZE);
> > @@ -58,7 +58,6 @@ int vkms_gem_fault(struct vm_fault *vmf)
> >       if (page_offset > num_pages)
> >               return VM_FAULT_SIGBUS;
> >
> > -     ret = -ENOENT;
> >       mutex_lock(&obj->pages_lock);
> >       if (obj->pages) {
> >               get_page(obj->pages[page_offset]);
> > --
> > 1.9.1
>
> Patch pushed to drm-misc-next. vkms is still experimental so I'm not
> queueing this for 4.19. Thanks.
>
> Gustavo

Gustavo, can we get this patch into 4.19-rc-x ?


More information about the dri-devel mailing list