From 6119acc14f0db4d3564dbe0510e3c89eadac451e Mon Sep 17 00:00:00 2001 From: Bartlomiej Zolnierkiewicz Date: Fri, 7 Mar 2008 21:53:49 +0100 Subject: [PATCH] --- yaml --- r: 87043 b: refs/heads/master c: b348487f0dc06f09a4c0d9e353eaa66e70230c7d h: refs/heads/master i: 87041: 401b986f51b5cfc0f74c6bf9805870155c44ea2c 87039: 0da71f2c2630dfb8d3c1a6fdcb775113c1de9301 v: v3 --- [refs] | 2 +- trunk/drivers/ide/ide-cd_ioctl.c | 4 ++++ trunk/fs/nfs/dir.c | 2 -- trunk/fs/nfs/inode.c | 6 ++---- trunk/fs/nfs/write.c | 2 +- trunk/include/linux/nfs_fs.h | 1 - trunk/net/sunrpc/xprtrdma/transport.c | 6 +----- 7 files changed, 9 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index 6e40b5bebdef..a4da0b5b4660 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4c1aa6f8b9686ddc7221f0f3b63f9b7dd1467543 +refs/heads/master: b348487f0dc06f09a4c0d9e353eaa66e70230c7d diff --git a/trunk/drivers/ide/ide-cd_ioctl.c b/trunk/drivers/ide/ide-cd_ioctl.c index b68284de4e85..6d147ce6782f 100644 --- a/trunk/drivers/ide/ide-cd_ioctl.c +++ b/trunk/drivers/ide/ide-cd_ioctl.c @@ -457,6 +457,10 @@ int ide_cdrom_packet(struct cdrom_device_info *cdi, layer. the packet must be complete, as we do not touch it at all. */ ide_cd_init_rq(drive, &req); + + if (cgc->data_direction == CGC_DATA_WRITE) + req.cmd_flags |= REQ_RW; + memcpy(req.cmd, cgc->cmd, CDROM_PACKET_SIZE); if (cgc->sense) memset(cgc->sense, 0, sizeof(struct request_sense)); diff --git a/trunk/fs/nfs/dir.c b/trunk/fs/nfs/dir.c index 6cea7479c5b4..ae04892a5e5d 100644 --- a/trunk/fs/nfs/dir.c +++ b/trunk/fs/nfs/dir.c @@ -710,8 +710,6 @@ int nfs_lookup_verify_inode(struct inode *inode, struct nameidata *nd) { struct nfs_server *server = NFS_SERVER(inode); - if (test_bit(NFS_INO_MOUNTPOINT, &NFS_I(inode)->flags)) - return 0; if (nd != NULL) { /* VFS wants an on-the-wire revalidation */ if (nd->flags & LOOKUP_REVAL) diff --git a/trunk/fs/nfs/inode.c b/trunk/fs/nfs/inode.c index a4c7cf2bff3a..966a8850aa30 100644 --- a/trunk/fs/nfs/inode.c +++ b/trunk/fs/nfs/inode.c @@ -299,7 +299,6 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr) else inode->i_op = &nfs_mountpoint_inode_operations; inode->i_fop = NULL; - set_bit(NFS_INO_MOUNTPOINT, &nfsi->flags); } } else if (S_ISLNK(inode->i_mode)) inode->i_op = &nfs_symlink_inode_operations; @@ -1004,9 +1003,8 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr) server = NFS_SERVER(inode); /* Update the fsid? */ - if (S_ISDIR(inode->i_mode) && - !nfs_fsid_equal(&server->fsid, &fattr->fsid) && - !test_bit(NFS_INO_MOUNTPOINT, &nfsi->flags)) + if (S_ISDIR(inode->i_mode) + && !nfs_fsid_equal(&server->fsid, &fattr->fsid)) server->fsid = fattr->fsid; /* diff --git a/trunk/fs/nfs/write.c b/trunk/fs/nfs/write.c index 80c61fdb2720..f55c437124a2 100644 --- a/trunk/fs/nfs/write.c +++ b/trunk/fs/nfs/write.c @@ -734,7 +734,7 @@ int nfs_updatepage(struct file *file, struct page *page, */ if (nfs_write_pageuptodate(page, inode) && inode->i_flock == NULL && - !(file->f_flags & O_SYNC)) { + !(file->f_mode & O_SYNC)) { count = max(count + offset, nfs_page_length(page)); offset = 0; } diff --git a/trunk/include/linux/nfs_fs.h b/trunk/include/linux/nfs_fs.h index f4a0e4c218df..a69ba80f2dfe 100644 --- a/trunk/include/linux/nfs_fs.h +++ b/trunk/include/linux/nfs_fs.h @@ -195,7 +195,6 @@ struct nfs_inode { #define NFS_INO_ADVISE_RDPLUS (1) /* advise readdirplus */ #define NFS_INO_STALE (2) /* possible stale inode */ #define NFS_INO_ACL_LRU_SET (3) /* Inode is on the LRU list */ -#define NFS_INO_MOUNTPOINT (4) /* inode is remote mountpoint */ static inline struct nfs_inode *NFS_I(const struct inode *inode) { diff --git a/trunk/net/sunrpc/xprtrdma/transport.c b/trunk/net/sunrpc/xprtrdma/transport.c index a564c1a39ec5..02c522c17de5 100644 --- a/trunk/net/sunrpc/xprtrdma/transport.c +++ b/trunk/net/sunrpc/xprtrdma/transport.c @@ -614,11 +614,7 @@ xprt_rdma_free(void *buffer) return; req = container_of(buffer, struct rpcrdma_req, rl_xdr_buf[0]); - if (req->rl_iov.length == 0) { /* see allocate above */ - r_xprt = container_of(((struct rpcrdma_req *) req->rl_buffer)->rl_buffer, - struct rpcrdma_xprt, rx_buf); - } else - r_xprt = container_of(req->rl_buffer, struct rpcrdma_xprt, rx_buf); + r_xprt = container_of(req->rl_buffer, struct rpcrdma_xprt, rx_buf); rep = req->rl_reply; dprintk("RPC: %s: called on 0x%p%s\n",