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

From: Souptick Joarder
Date: Thu Jul 26 2018 - 00:27:14 EST


On Wed, Jul 25, 2018 at 6:47 PM, Rodrigo Siqueira
<rodrigosiqueiramelo@xxxxxxxxx> wrote:
> Hi,
>
> Thanks for the patch,
>
> I reviewed and tested it; everything is fine. I only suggest removing
> the "gpu" part from the patch title (i.e., "drm/vkms: Use new return
> type vm_fault_t").

ok. I Will post v2.

>
> On 07/23, Souptick Joarder wrote:
>> Use new return type vm_fault_t for fault handler.
>>
>> Signed-off-by: Souptick Joarder <jrdr.linux@xxxxxxxxx>
>> ---
>> 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
>>