aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2018-08-16 10:53:45 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2018-08-16 10:53:45 -0700
commit5c60a7389d795e001c8748b458eb76e3a5b6008c (patch)
tree5ac51994e6ddfd438f99aecdf228506e871f3a78
parentb6d6a3076ac4eecb2d9cbcf17730fc160b94cadc (diff)
parente1b437691a624a7e767bbb140c730d2779797f53 (diff)
downloadtip-5c60a7389d795e001c8748b458eb76e3a5b6008c.tar.gz
tip-5c60a7389d795e001c8748b458eb76e3a5b6008c.tar.xz
tip-5c60a7389d795e001c8748b458eb76e3a5b6008c.zip
Merge tag 'for-linus-4.19-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux
Pull orangefs updates from Mike Marshall: "Orangefs: one cleanup and Souptick's vm_fault_t patch: - add new return type vm_fault_t (Souptick Joarder) - remove redundant pointer (Colin Ian King)" * tag 'for-linus-4.19-ofs1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux: orangefs: remove redundant pointer orangefs_inode orangefs: Adding new return type vm_fault_t
-rw-r--r--fs/orangefs/file.c19
-rw-r--r--fs/orangefs/inode.c3
2 files changed, 10 insertions, 12 deletions
diff --git a/fs/orangefs/file.c b/fs/orangefs/file.c
index db0b52187cbc..a5a2fe76568f 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);
}
diff --git a/fs/orangefs/inode.c b/fs/orangefs/inode.c
index 6e4d2af8f5bc..31932879b716 100644
--- a/fs/orangefs/inode.c
+++ b/fs/orangefs/inode.c
@@ -251,7 +251,6 @@ int orangefs_getattr(const struct path *path, struct kstat *stat,
{
int ret = -ENOENT;
struct inode *inode = path->dentry->d_inode;
- struct orangefs_inode_s *orangefs_inode = NULL;
gossip_debug(GOSSIP_INODE_DEBUG,
"orangefs_getattr: called on %pd\n",
@@ -262,8 +261,6 @@ int orangefs_getattr(const struct path *path, struct kstat *stat,
generic_fillattr(inode, stat);
/* override block size reported to stat */
- orangefs_inode = ORANGEFS_I(inode);
-
if (request_mask & STATX_SIZE)
stat->result_mask = STATX_BASIC_STATS;
else