linux-next: manual merge of the vfs tree with Linus' tree
From: Stephen Rothwell
Date: Mon Apr 21 2014 - 20:44:46 EST
Hi Al,
Today's linux-next merge of the vfs tree got a conflict in
fs/cifs/cifsfs.c between commit c11f1df5003d ("cifs: Wait for writebacks
to complete before attempting write") from Linus' tree and commit
30b11990262e ("cifs: switch to ->write_iter()") from the vfs tree.
I fixed it up (maybe - see below) and can carry the fix as necessary (no
action is required).
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx
diff --cc fs/cifs/cifsfs.c
index 5be1f997ecde,d101af8889fd..000000000000
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
@@@ -733,30 -728,22 +733,29 @@@ out_nls
goto out;
}
- static ssize_t cifs_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
- unsigned long nr_segs, loff_t pos)
+ static ssize_t cifs_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
{
struct inode *inode = file_inode(iocb->ki_filp);
+ struct cifsInodeInfo *cinode = CIFS_I(inode);
ssize_t written;
int rc;
+ written = cifs_get_writer(cinode);
+ if (written)
+ return written;
+
- written = generic_file_aio_write(iocb, iov, nr_segs, pos);
+ written = generic_file_write_iter(iocb, from);
if (CIFS_CACHE_WRITE(CIFS_I(inode)))
- return written;
+ goto out;
rc = filemap_fdatawrite(inode->i_mapping);
if (rc)
- cifs_dbg(FYI, "cifs_file_aio_write: %d rc on %p inode\n",
+ cifs_dbg(FYI, "cifs_file_write_iter: %d rc on %p inode\n",
rc, inode);
+out:
+ cifs_put_writer(cinode);
return written;
}
Attachment:
pgprLUM9Ccp4s.pgp
Description: PGP signature