Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93939f4e authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'for-2.6.33' of git://linux-nfs.org/~bfields/linux

* 'for-2.6.33' of git://linux-nfs.org/~bfields/linux:
  sunrpc: fix peername failed on closed listener
  nfsd: make sure data is on disk before calling ->fsync
  nfsd: fix "insecure" export option
parents b1c0ec89 b292cf9c
Loading
Loading
Loading
Loading
+1 −4
Original line number Original line Diff line number Diff line
@@ -780,12 +780,9 @@ static inline int nfsd_dosync(struct file *filp, struct dentry *dp,
	int (*fsync) (struct file *, struct dentry *, int);
	int (*fsync) (struct file *, struct dentry *, int);
	int err;
	int err;


	err = filemap_fdatawrite(inode->i_mapping);
	err = filemap_write_and_wait(inode->i_mapping);
	if (err == 0 && fop && (fsync = fop->fsync))
	if (err == 0 && fop && (fsync = fop->fsync))
		err = fsync(filp, dp, 0);
		err = fsync(filp, dp, 0);
	if (err == 0)
		err = filemap_fdatawait(inode->i_mapping);

	return err;
	return err;
}
}


+2 −1
Original line number Original line Diff line number Diff line
@@ -699,7 +699,8 @@ int svc_recv(struct svc_rqst *rqstp, long timeout)
	spin_unlock_bh(&pool->sp_lock);
	spin_unlock_bh(&pool->sp_lock);


	len = 0;
	len = 0;
	if (test_bit(XPT_LISTENER, &xprt->xpt_flags)) {
	if (test_bit(XPT_LISTENER, &xprt->xpt_flags) &&
	    !test_bit(XPT_CLOSE, &xprt->xpt_flags)) {
		struct svc_xprt *newxpt;
		struct svc_xprt *newxpt;
		newxpt = xprt->xpt_ops->xpo_accept(xprt);
		newxpt = xprt->xpt_ops->xpo_accept(xprt);
		if (newxpt) {
		if (newxpt) {