aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ecryptfs/inode.c
diff options
context:
space:
mode:
authorMichael Halcrow <mhalcrow@us.ibm.com>2007-02-12 03:53:48 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-12 12:48:37 -0500
commit70456600f42f85cfcbdd9d7a6029c03b6f9c5d1e (patch)
tree1b47957d59bfe3b4e5e5244106678f5542f8f295 /fs/ecryptfs/inode.c
parente77a56ddceeec87575a13a60fc1a394af6a1f4bc (diff)
[PATCH] eCryptfs: convert f_op->write() to vfs_write()
sys_write() takes a local copy of f_pos and writes that back into the struct file. It does this so that two concurrent write() callers don't make a mess of f_pos, and of the file contents. ecryptfs should be calling vfs_write(). That way we also get the fsnotify notifications, which ecryptfs presently appears to have subverted. Convert direct calls to f_op->write() into calls to vfs_write(). Signed-off-by: Michael Halcrow <mhalcrow@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/ecryptfs/inode.c')
-rw-r--r--fs/ecryptfs/inode.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c
index bbc1b4f666fe..7d3391712027 100644
--- a/fs/ecryptfs/inode.c
+++ b/fs/ecryptfs/inode.c
@@ -201,7 +201,7 @@ static int ecryptfs_initialize_file(struct dentry *ecryptfs_dentry)
201 lower_dentry->d_name.name); 201 lower_dentry->d_name.name);
202 inode = ecryptfs_dentry->d_inode; 202 inode = ecryptfs_dentry->d_inode;
203 crypt_stat = &ecryptfs_inode_to_private(inode)->crypt_stat; 203 crypt_stat = &ecryptfs_inode_to_private(inode)->crypt_stat;
204 lower_flags = ((O_CREAT | O_WRONLY | O_TRUNC) & O_ACCMODE) | O_RDWR; 204 lower_flags = ((O_CREAT | O_TRUNC) & O_ACCMODE) | O_RDWR;
205#if BITS_PER_LONG != 32 205#if BITS_PER_LONG != 32
206 lower_flags |= O_LARGEFILE; 206 lower_flags |= O_LARGEFILE;
207#endif 207#endif