linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] orangefs: Adding new return type vm_fault_t
@ 2018-06-28 18:42 Souptick Joarder
  2018-07-06  6:44 ` Souptick Joarder
  0 siblings, 1 reply; 6+ messages in thread
From: Souptick Joarder @ 2018-06-28 18:42 UTC (permalink / raw)
  To: willy, hubcap, martin; +Cc: devel, linux-kernel

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 <jrdr.linux@gmail.com>
---
 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


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

* Re: [PATCH] orangefs: Adding new return type vm_fault_t
  2018-06-28 18:42 [PATCH] orangefs: Adding new return type vm_fault_t Souptick Joarder
@ 2018-07-06  6:44 ` Souptick Joarder
  2018-07-06 14:05   ` Mike Marshall
  0 siblings, 1 reply; 6+ messages in thread
From: Souptick Joarder @ 2018-07-06  6:44 UTC (permalink / raw)
  To: Matthew Wilcox, hubcap, martin; +Cc: devel, linux-kernel

On Fri, Jun 29, 2018 at 12:12 AM, Souptick Joarder <jrdr.linux@gmail.com> 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 <jrdr.linux@gmail.com>
> ---
>  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 ?

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

* Re: [PATCH] orangefs: Adding new return type vm_fault_t
  2018-07-06  6:44 ` Souptick Joarder
@ 2018-07-06 14:05   ` Mike Marshall
  2018-07-10 19:43     ` Mike Marshall
  0 siblings, 1 reply; 6+ messages in thread
From: Mike Marshall @ 2018-07-06 14:05 UTC (permalink / raw)
  To: Souptick Joarder; +Cc: Matthew Wilcox, Martin Brandenburg, devel, LKML

Souptick Joarder: Any comment for this patch?

Thanks for sending it <g>...

I have it in my stack, but I haven't studied it, or xfstested it yet, so
no useful comments yet...

-Mike



On Fri, Jul 6, 2018 at 2:44 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote:
> On Fri, Jun 29, 2018 at 12:12 AM, Souptick Joarder <jrdr.linux@gmail.com> 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 <jrdr.linux@gmail.com>
>> ---
>>  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 ?

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

* Re: [PATCH] orangefs: Adding new return type vm_fault_t
  2018-07-06 14:05   ` Mike Marshall
@ 2018-07-10 19:43     ` Mike Marshall
  2018-07-11  5:56       ` Souptick Joarder
  0 siblings, 1 reply; 6+ messages in thread
From: Mike Marshall @ 2018-07-10 19:43 UTC (permalink / raw)
  To: Souptick Joarder; +Cc: Matthew Wilcox, Martin Brandenburg, devel, LKML

Hi...

I applied this patch to 4.18.0-rc4. It applied cleanly and there's no xfstests
regressions. Sorry if I held you up any...

You can add: Tested-By: Mike Marshall <hubcap@omnibond.com>



-Mike

On Fri, Jul 6, 2018 at 10:05 AM, Mike Marshall <hubcap@omnibond.com> wrote:
> Souptick Joarder: Any comment for this patch?
>
> Thanks for sending it <g>...
>
> I have it in my stack, but I haven't studied it, or xfstested it yet, so
> no useful comments yet...
>
> -Mike
>
>
>
> On Fri, Jul 6, 2018 at 2:44 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote:
>> On Fri, Jun 29, 2018 at 12:12 AM, Souptick Joarder <jrdr.linux@gmail.com> 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 <jrdr.linux@gmail.com>
>>> ---
>>>  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 ?

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

* Re: [PATCH] orangefs: Adding new return type vm_fault_t
  2018-07-10 19:43     ` Mike Marshall
@ 2018-07-11  5:56       ` Souptick Joarder
  2018-07-11 12:31         ` Mike Marshall
  0 siblings, 1 reply; 6+ messages in thread
From: Souptick Joarder @ 2018-07-11  5:56 UTC (permalink / raw)
  To: Mike Marshall; +Cc: Matthew Wilcox, Martin Brandenburg, devel, LKML

On Wed, Jul 11, 2018 at 1:13 AM, Mike Marshall <hubcap@omnibond.com> wrote:
> Hi...
>
> I applied this patch to 4.18.0-rc4. It applied cleanly and there's no xfstests
> regressions. Sorry if I held you up any...
>
> You can add: Tested-By: Mike Marshall <hubcap@omnibond.com>
>

Thanks Mike. Can we get this patch in queue for 4.19 merge window ?

> -Mike
>
> On Fri, Jul 6, 2018 at 10:05 AM, Mike Marshall <hubcap@omnibond.com> wrote:
>> Souptick Joarder: Any comment for this patch?
>>
>> Thanks for sending it <g>...
>>
>> I have it in my stack, but I haven't studied it, or xfstested it yet, so
>> no useful comments yet...
>>
>> -Mike
>>
>>
>>
>> On Fri, Jul 6, 2018 at 2:44 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote:
>>> On Fri, Jun 29, 2018 at 12:12 AM, Souptick Joarder <jrdr.linux@gmail.com> 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 <jrdr.linux@gmail.com>
>>>> ---
>>>>  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 ?

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

* Re: [PATCH] orangefs: Adding new return type vm_fault_t
  2018-07-11  5:56       ` Souptick Joarder
@ 2018-07-11 12:31         ` Mike Marshall
  0 siblings, 0 replies; 6+ messages in thread
From: Mike Marshall @ 2018-07-11 12:31 UTC (permalink / raw)
  To: Souptick Joarder; +Cc: Matthew Wilcox, Martin Brandenburg, devel, LKML

Yes, I'd be happy to send it in at the 4.19 merge window...

-Mike

On Wed, Jul 11, 2018 at 1:56 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote:
> On Wed, Jul 11, 2018 at 1:13 AM, Mike Marshall <hubcap@omnibond.com> wrote:
>> Hi...
>>
>> I applied this patch to 4.18.0-rc4. It applied cleanly and there's no xfstests
>> regressions. Sorry if I held you up any...
>>
>> You can add: Tested-By: Mike Marshall <hubcap@omnibond.com>
>>
>
> Thanks Mike. Can we get this patch in queue for 4.19 merge window ?
>
>> -Mike
>>
>> On Fri, Jul 6, 2018 at 10:05 AM, Mike Marshall <hubcap@omnibond.com> wrote:
>>> Souptick Joarder: Any comment for this patch?
>>>
>>> Thanks for sending it <g>...
>>>
>>> I have it in my stack, but I haven't studied it, or xfstested it yet, so
>>> no useful comments yet...
>>>
>>> -Mike
>>>
>>>
>>>
>>> On Fri, Jul 6, 2018 at 2:44 AM, Souptick Joarder <jrdr.linux@gmail.com> wrote:
>>>> On Fri, Jun 29, 2018 at 12:12 AM, Souptick Joarder <jrdr.linux@gmail.com> 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 <jrdr.linux@gmail.com>
>>>>> ---
>>>>>  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 ?

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

end of thread, other threads:[~2018-07-11 12:32 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-28 18:42 [PATCH] orangefs: Adding new return type vm_fault_t Souptick Joarder
2018-07-06  6:44 ` Souptick Joarder
2018-07-06 14:05   ` Mike Marshall
2018-07-10 19:43     ` Mike Marshall
2018-07-11  5:56       ` Souptick Joarder
2018-07-11 12:31         ` Mike Marshall

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).