diff options
author | H. Peter Anvin <hpa@zytor.com> | 2010-02-22 19:20:34 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2010-02-22 19:20:34 -0500 |
commit | d02e30c31c57683a66ed68a1bcff900ca78f6d56 (patch) | |
tree | c3ce99a00061bcc1199b50fa838147d876c56717 /fs/nfsd/vfs.c | |
parent | 0fdc7a8022c3eaff6b5ee27ffb9e913e5e58d8e9 (diff) | |
parent | aef55d4922e62a0d887e60d87319f3718aec6ced (diff) |
Merge branch 'x86/irq' into x86/apic
Merge reason:
Conflicts in arch/x86/kernel/apic/io_apic.c
Resolved Conflicts:
arch/x86/kernel/apic/io_apic.c
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'fs/nfsd/vfs.c')
-rw-r--r-- | fs/nfsd/vfs.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c index 7c2e337d05af..97d79eff6b7f 100644 --- a/fs/nfsd/vfs.c +++ b/fs/nfsd/vfs.c | |||
@@ -752,6 +752,7 @@ nfsd_open(struct svc_rqst *rqstp, struct svc_fh *fhp, int type, | |||
752 | flags, current_cred()); | 752 | flags, current_cred()); |
753 | if (IS_ERR(*filp)) | 753 | if (IS_ERR(*filp)) |
754 | host_err = PTR_ERR(*filp); | 754 | host_err = PTR_ERR(*filp); |
755 | host_err = ima_file_check(*filp, access); | ||
755 | out_nfserr: | 756 | out_nfserr: |
756 | err = nfserrno(host_err); | 757 | err = nfserrno(host_err); |
757 | out: | 758 | out: |
@@ -780,12 +781,9 @@ static inline int nfsd_dosync(struct file *filp, struct dentry *dp, | |||
780 | int (*fsync) (struct file *, struct dentry *, int); | 781 | int (*fsync) (struct file *, struct dentry *, int); |
781 | int err; | 782 | int err; |
782 | 783 | ||
783 | err = filemap_fdatawrite(inode->i_mapping); | 784 | err = filemap_write_and_wait(inode->i_mapping); |
784 | if (err == 0 && fop && (fsync = fop->fsync)) | 785 | if (err == 0 && fop && (fsync = fop->fsync)) |
785 | err = fsync(filp, dp, 0); | 786 | err = fsync(filp, dp, 0); |
786 | if (err == 0) | ||
787 | err = filemap_fdatawait(inode->i_mapping); | ||
788 | |||
789 | return err; | 787 | return err; |
790 | } | 788 | } |
791 | 789 | ||
@@ -2130,7 +2128,6 @@ nfsd_permission(struct svc_rqst *rqstp, struct svc_export *exp, | |||
2130 | */ | 2128 | */ |
2131 | path.mnt = exp->ex_path.mnt; | 2129 | path.mnt = exp->ex_path.mnt; |
2132 | path.dentry = dentry; | 2130 | path.dentry = dentry; |
2133 | err = ima_path_check(&path, acc & (MAY_READ | MAY_WRITE | MAY_EXEC)); | ||
2134 | nfsd_out: | 2131 | nfsd_out: |
2135 | return err? nfserrno(err) : 0; | 2132 | return err? nfserrno(err) : 0; |
2136 | } | 2133 | } |