Messages in this thread | | | From | Mike Marshall <> | Date | Tue, 10 Jul 2018 15:43:26 -0400 | Subject | Re: [PATCH] orangefs: Adding new return type vm_fault_t |
| |
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 ?
| |