From: Trond Myklebust Date: Sun, 13 Jul 2014 19:22:02 +0000 (-0400) Subject: Merge branch 'bugfixes' into linux-next X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=e655f945cd7ba2a8360ddd5462ca535a3b41e07e;p=linux-beck.git Merge branch 'bugfixes' into linux-next * bugfixes: NFS: Don't reset pg_moreio in __nfs_pageio_add_request NFS: Remove 2 unused variables nfs: handle multiple reqs in nfs_wb_page_cancel nfs: handle multiple reqs in nfs_page_async_flush nfs: change find_request to find_head_request nfs: nfs_page should take a ref on the head req nfs: mark nfs_page reqs with flag for extra ref nfs: only show Posix ACLs in listxattr if actually present Conflicts: fs/nfs/write.c --- e655f945cd7ba2a8360ddd5462ca535a3b41e07e diff --cc fs/nfs/direct.c index 2a3293a5dda0,f11b9eed0de1..65ef6e00deee --- a/fs/nfs/direct.c +++ b/fs/nfs/direct.c @@@ -752,11 -759,11 +752,9 @@@ static void nfs_direct_write_completion req = nfs_list_entry(hdr->pages.next); nfs_list_remove_request(req); - switch (bit) { - case NFS_IOHDR_NEED_RESCHED: - case NFS_IOHDR_NEED_COMMIT: + if (request_commit) { kref_get(&req->wb_kref); nfs_mark_request_commit(req, hdr->lseg, &cinfo); - do_destroy = false; } nfs_unlock_and_release_request(req); } diff --cc fs/nfs/internal.h index da36257628c5,f415cbf9f6c3..2f19e8392eb3 --- a/fs/nfs/internal.h +++ b/fs/nfs/internal.h @@@ -238,12 -238,13 +238,13 @@@ void nfs_set_pgio_error(struct nfs_pgio int nfs_iocounter_wait(struct nfs_io_counter *c); extern const struct nfs_pageio_ops nfs_pgio_rw_ops; -struct nfs_rw_header *nfs_rw_header_alloc(const struct nfs_rw_ops *); -void nfs_rw_header_free(struct nfs_pgio_header *); -void nfs_pgio_data_release(struct nfs_pgio_data *); +struct nfs_pgio_header *nfs_pgio_header_alloc(const struct nfs_rw_ops *); +void nfs_pgio_header_free(struct nfs_pgio_header *); +void nfs_pgio_data_destroy(struct nfs_pgio_header *); int nfs_generic_pgio(struct nfs_pageio_descriptor *, struct nfs_pgio_header *); -int nfs_initiate_pgio(struct rpc_clnt *, struct nfs_pgio_data *, +int nfs_initiate_pgio(struct rpc_clnt *, struct nfs_pgio_header *, const struct rpc_call_ops *, int, int); + void nfs_free_request(struct nfs_page *req); static inline void nfs_iocounter_init(struct nfs_io_counter *c) {