Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.com>2018-04-27 13:09:41 +1000
committerNeilBrown <neilb@suse.com>2018-04-27 13:09:41 +1000
commita0343f18b99d9c2875c439beb35767c110629651 (patch)
tree9b9774407d4374eb53ab6b8a0723f899ed2c5cb5
parent6fbff6046d9422679e7d439d730e3057fb5c944f (diff)
Revert "NFS: allow flush-on-stat to be disabled (bsc#1065726)."
This reverts commit 1d20ca0f05747d0db769278972dbf5405e74f2c5. I pushed the wrong patch. We had settled on a mount option, not a module parameter.
-rw-r--r--patches.fixes/nfs-getattr-wait.patch44
-rw-r--r--series.conf2
2 files changed, 0 insertions, 46 deletions
diff --git a/patches.fixes/nfs-getattr-wait.patch b/patches.fixes/nfs-getattr-wait.patch
deleted file mode 100644
index 6316c4f4ca..0000000000
--- a/patches.fixes/nfs-getattr-wait.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From: NeilBrown <neilb@suse.com>
-Subject: NFS: allow flush-on-stat to be disabled.
-References: bsc#1065726
-Patch-mainline: never, test only
-
-The fact that nfs forces a flush on stat might be the
-cause of customer performance issues. The customers
-application calls stat much more often than needed.
-Apparently this doesn't cause as much problem on Solaris
-as it seems to on Linux.
-In order to smooth the migration from Solaris for the
-customer, add an nfs module parameter "flush_on_stat"
-which defaults to "Y" but can be set to "N".
-This can cause mtime to be wrong sometimes when a file
-is open for write.
-
-Signed-off-by: NeilBrown <neilb@suse.com>
-Acked-by: NeilBrown <neilb@suse.com>
-
----
- fs/nfs/inode.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
---- a/fs/nfs/inode.c
-+++ b/fs/nfs/inode.c
-@@ -511,6 +511,9 @@ void nfs_setattr_update_inode(struct ino
- }
- }
-
-+static int flush_on_stat = 1;
-+module_param(flush_on_stat, bool, 0644);
-+
- int nfs_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat)
- {
- struct inode *inode = dentry->d_inode;
-@@ -518,7 +521,7 @@ int nfs_getattr(struct vfsmount *mnt, st
- int err;
-
- /* Flush out writes to the server in order to update c/mtime. */
-- if (S_ISREG(inode->i_mode)) {
-+ if (S_ISREG(inode->i_mode) && flush_on_stat) {
- err = filemap_write_and_wait(inode->i_mapping);
- if (err)
- goto out;
diff --git a/series.conf b/series.conf
index 40cdea402d..8c27deaaf6 100644
--- a/series.conf
+++ b/series.conf
@@ -6564,8 +6564,6 @@
patches.fixes/0001-nfs-Fix-ugly-referral-attributes.patch
patches.fixes/0001-NFSv4-fix-getacl-head-length-estimation.patch
- patches.fixes/nfs-getattr-wait.patch
-
########################################################
# Netfilter
########################################################