On Fri, Jun 29, 2018 at 12:12 AM, Souptick Joarder <[email protected]> wrote:
> Use new return type vm_fault_t for fault handler. For now,
> this is just documenting that the function returns a VM_FAULT
> value rather than an errno. Once all instances are converted,
> vm_fault_t will become a distinct type.
>
> See the following
> commit 1c8f422059ae ("mm: change return type to vm_fault_t")
>
> Fixed checkpatch.pl warning.
>
> Signed-off-by: Souptick Joarder <[email protected]>
> ---
>  fs/orangefs/file.c | 19 ++++++++++---------
>  1 file changed, 10 insertions(+), 9 deletions(-)
>
> diff --git a/fs/orangefs/file.c b/fs/orangefs/file.c
> index db0b521..a5a2fe7 100644
> --- a/fs/orangefs/file.c
> +++ b/fs/orangefs/file.c
> @@ -528,18 +528,19 @@ static long orangefs_ioctl(struct file *file, unsigned 
> int cmd, unsigned long ar
>         return ret;
>  }
>
> -static int orangefs_fault(struct vm_fault *vmf)
> +static vm_fault_t orangefs_fault(struct vm_fault *vmf)
>  {
>         struct file *file = vmf->vma->vm_file;
> -       int rc;
> -       rc = orangefs_inode_getattr(file->f_mapping->host, 0, 1,
> +       int ret;
> +
> +       ret = orangefs_inode_getattr(file->f_mapping->host, 0, 1,
>             STATX_SIZE);
> -       if (rc == -ESTALE)
> -               rc = -EIO;
> -       if (rc) {
> -               gossip_err("%s: orangefs_inode_getattr failed, "
> -                   "rc:%d:.\n", __func__, rc);
> -               return rc;
> +       if (ret == -ESTALE)
> +               ret = -EIO;
> +       if (ret) {
> +               gossip_err("%s: orangefs_inode_getattr failed, ret:%d:.\n",
> +                               __func__, ret);
> +               return VM_FAULT_SIGBUS;
>         }
>         return filemap_fault(vmf);
>  }
> --
> 1.9.1
>

Any comment for this patch ?

Reply via email to