From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753897AbdEJQrN (ORCPT ); Wed, 10 May 2017 12:47:13 -0400 Received: from us-smtp-delivery-194.mimecast.com ([216.205.24.194]:60358 "EHLO us-smtp-delivery-194.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753779AbdEJQrL (ORCPT ); Wed, 10 May 2017 12:47:11 -0400 From: Trond Myklebust To: "torvalds@linux-foundation.org" CC: "linux-kernel@vger.kernel.org" , "linux-nfs@vger.kernel.org" Subject: [GIT PULL] Please pull NFS client fixes for 4.12 Thread-Topic: [GIT PULL] Please pull NFS client fixes for 4.12 Thread-Index: AQHSya0NrD4QrM982UyDRv5+dS7+KQ== Date: Wed, 10 May 2017 16:47:04 +0000 Message-ID: <1494434821.4764.1.camel@primarydata.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [68.49.162.121] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;MWHPR11MB1358;7:cFv7bbWcStyv6WHAABgdeLVwhpgOrjXP/77XEs8ctGJmrkKJLYCMbYT2EuBLdFk0gEMVGSmHaonoKdQWJ2CKcl/uFsz80Xf18SRoKKRWIRFhUn9r1ULusKIuThq6rGrwRZ+nSWsRFpNuSTlRIyMtvdt0Lw4/bjoOhpF2Q8iAp0A+k0+LKC6KhWQQuHybbYfyMlH5Ut6pGPZQzUtsAG/oYN3ZMS/pGPcR5U+9F4FSZAUuJnQ3qx002PBPxQanTmUlq8sKwqRZ4/DSoAiNJ1Zvy3L9ZJyGsgbscbwB5oioHAvvGXuaggN4RUXSaVTm80kyMSpfZLTzTYrtyq2xIW42ig==;20:Wb/m+XJzIIhP1BBGsTEt63msSstPcuw8ajv+fjrDkUC4B2d1qE4qQxdGhhPcGPbIJiA7qtoXl3QgcPQMn4S9Vorr+1dTTAY+CRTSzerXFYgY5nXhbgi0cnUcJagrYD85SWUQGWEfhzH59Y+F6YIzT7bViHY3jc0Mo9rOKkNKFyA= x-ms-office365-filtering-correlation-id: e28cbb24-4ac9-42f2-7c72-08d497c43032 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254075)(201703131423075);SRVR:MWHPR11MB1358; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(158342451672863)(5213294742642); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(6041248)(2016111802025)(20161123555025)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(6043046)(6072148);SRVR:MWHPR11MB1358;BCL:0;PCL:0;RULEID:;SRVR:MWHPR11MB1358; x-forefront-prvs: 03030B9493 x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(6009001)(39830400002)(39450400003)(39400400002)(39410400002)(377424004)(6506006)(103116003)(6486002)(77096006)(6436002)(4326008)(6916009)(99286003)(54906002)(189998001)(53936002)(54356999)(2906002)(5660300001)(1730700003)(8676002)(50986999)(5640700003)(81166006)(6512007)(8936002)(25786009)(66066001)(2351001)(36756003)(2900100001)(3660700001)(3280700002)(122556002)(33646002)(2501003)(7736002)(478600001)(575784001)(305945005)(6116002)(110136004)(86362001)(102836003)(3846002)(38730400002);DIR:OUT;SFP:1102;SCL:1;SRVR:MWHPR11MB1358;H:MWHPR11MB1359.namprd11.prod.outlook.com;FPR:;SPF:None;MLV:sfv;LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-ID: MIME-Version: 1.0 X-OriginatorOrg: primarydata.com X-MS-Exchange-CrossTenant-originalarrivaltime: 10 May 2017 16:47:04.1919 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 03193ed6-8726-4bb3-a832-18ab0d28adb7 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1358 X-MC-Unique: im5wat2ONmepOYCvZV_XDA-1 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id v4AGlujo013941 Hi Linus, The following changes since commit 4f7d029b9bf009fbee76bb10c0c4351a1870d2f3: Linux 4.11-rc7 (2017-04-16 13:00:18 -0700) are available in the git repository at: git://git.linux-nfs.org/projects/trondmy/linux-nfs.git tags/nfs-for-4.12-1 for you to fetch changes up to 76b2a303384e1d6299c3a0249f0f0ce2f8f96017: pNFS/flexfiles: Always attempt to call layoutstats when flexfiles is enabled (2017-05-09 16:02:57 -0400) ---------------------------------------------------------------- NFS client updates for Linux 4.12 Highlights include: Stable bugfixes: - Fix use after free in write error path - Use GFP_NOIO for two allocations in writeback - Fix a hang in OPEN related to server reboot - Check the result of nfs4_pnfs_ds_connect - Fix an rcu lock leak Features: - Removal of the unmaintained and unused OSD pNFS layout - Cleanup and removal of lots of unnecessary dprintk()s - Cleanup and removal of some memory failure paths now that GFP_NOFS is guaranteed to never fail. - Remove the v3-only data server limitation on pNFS/flexfiles Bugfixes: - RPC/RDMA connection handling bugfixes - Copy offload: fixes to ensure the copied data is COMMITed to disk. - Readdir: switch back to using the ->iterate VFS interface - File locking fixes from Ben Coddington - Various use-after-free and deadlock issues in pNFS - Write path bugfixes ---------------------------------------------------------------- Anna Schumaker (29): NFS: Clean up do_callback_layoutrecall() NFS: Clean up nfs4_callback_layoutrecall() NFS: Remove extra dprintk()s from callback_proc.c NFS: Clean up decode_getattr_args() NFS: Clean up decode_recall_args() NFS: Clean up decode_layoutrecall_args() NFS: Clean up decode_cb_sequence_args() NFS: Clean up decode_notify_lock_args() NFS: Clean up encode_cb_sequence_res() NFS: Remove extra dprintk()s from callback_xdr.c NFS: Clean up nfs_init_client() NFS: Clean up extra dprintk()s in client.c NFS: Remove nfs_direct_readpage_release() NFS: Clean up nfs_direct_commit_complete() NFS: Remove extra dprintk()s from namespace.c NFS: Clean up nfs42_layoutstat_done() NFS: Clean up nfs4_match_clientids() NFS: Clean up nfs4_check_serverowner_minor_id() NFS: Create a common nfs4_match_client() function NFS: Clean up nfs4_check_serverowner_major_id() NFS: Clean up nfs4_check_server_scope() NFS: Clean up nfs4_set_client() NFS: Clean up nfs4_init_server() NFS: Remove extra dprintk()s from nfs4client.c NFS: Clean up nfs4_get_rootfh() NFS: Remove extra dprintk()s from nfs4namespace.c NFS: Clean up nfs4_proc_bind_one_conn_to_session() NFS: Clean up _nfs4_proc_exchange_id() NFS: Clean up nfs4_proc_get_lease_time() Artem Savkov (1): nfs/filelayout: fix NULL pointer dereference in fl_pnfs_update_layout() Benjamin Coddington (11): NFS: switch back to to ->iterate() NFS: Fix missing pg_cleanup after nfs_pageio_cond_complete() NFS: Use GFP_NOIO for two allocations in writeback NFS: move nfs_pgarray_set() to open code NFS: move rw_mode to nfs_pageio_header NFS4: remove a redundant lock range check NFS: Move the flock open mode check into nfs_flock() locks: Set FL_CLOSE when removing flock locks on close() NFS: Add an iocounter wait function for async RPC tasks lockd: Introduce nlmclnt_operations NFS: Always wait for I/O completion before unlock Christoph Hellwig (1): nfs: remove the objlayout driver Chuck Lever (13): xprtrdma: Cancel refresh worker during buffer shutdown sunrpc: Export xprt_force_disconnect() xprtrdma: Detect unreachable NFS/RDMA servers more reliably xprtrdma: Refactor rpcrdma_ia_open() xprtrdma: Use same device when mapping or syncing DMA buffers xprtrdma: Support unplugging an HCA from under an NFS mount xprtrdma: Refactor rpcrdma_ep_connect xprtrdma: Restore transport after device removal xprtrdma: Revert commit d0f36c46deea xprtrdma: Annotate receive workqueue xprtrdma: Squelch ENOBUFS warnings sunrpc: Fix xdr_init_decode_pages() documenting comment xprtrdma: Remove rpcrdma_buffer::rb_pool Dave Wysochanski (1): Fix nfs_client refcounting if kmalloc fails in nfs4_proc_exchange_id and nfs4_proc_async_renew Fabian Frederick (1): nfs: use kmap/kunmap directly Fred Isaman (2): NFS: Fix use after free in write error path pNFS: Fix NULL dereference in pnfs_generic_alloc_ds_commits Hou Tao (1): NFS: always treat the invocation of nfs_getattr as cache hit when noac is on NeilBrown (2): NFS: fix usage of mempools. sunrpc: don't check for failure from mempool_alloc() Olga Kornievskaia (2): NFS4.1 handle interrupted slot reuse from ERR_DELAY NFS append COMMIT after synchronous COPY Pan Bian (1): NFSv4: check return value of xdr_inline_decode Tigran Mkrtchyan (1): nfs: flexfilelayout: remove v3-only data server limitation Trond Myklebust (24): NFSv4: Fix a hang in OPEN related to server reboot pNFS/flexfiles: Check the result of nfs4_pnfs_ds_connect pNFS: Remove unused layout driver callbacks pNFS: Unexport pnfs_put_lseg_locked and _pnfs_return_layout pNFS: unexport nfs4_pnfs_v3_ds_connect_unload pNFS: Ensure we check layout segment validity in the pg_init() callback pNFS: Fix use after free issues in pnfs_do_read() NFS: Don't write back further requests if there is a pending write error NFSv3: nfs3_nlm_alloc_call should be declared static Merge tag 'nfs-rdma-4.12-1' of git://git.linux-nfs.org/projects/anna/nfs-rdma NFS: Add a few more fatal I/O errors to nfs_error_is_fatal() NFSv4: Don't special case "launder" pNFS: Ensure we check layout validity before marking it for return pNFS/flexfiles: Fix up the ff_layout_write_pagelist failure path pNFS: Don't send COMMITs to the DSes if the server invalidated our layout pNFS: Ensure we commit the layout if it has been invalidated pNFS: Don't clear the layout return info if there are segments to return pNFS: Fix a deadlock when coalescing writes and returning the layout pNFS: Fix a typo in pnfs_generic_alloc_ds_commits NFSv4.1: RECLAIM_COMPLETE must handle NFS4ERR_CONN_NOT_BOUND_TO_SESSION NFSv4: Fix an rcu lock leak NFSv4: Fix exclusive create attributes encoding NFSv4.1: Work around a Linux server bug... pNFS/flexfiles: Always attempt to call layoutstats when flexfiles is enabled Documentation/admin-guide/kernel-parameters.txt | 6 - Documentation/filesystems/nfs/pnfs.txt | 37 -- fs/fuse/file.c | 2 +- fs/lockd/clntlock.c | 1 + fs/lockd/clntproc.c | 26 +- fs/locks.c | 2 +- fs/nfs/Kconfig | 5 - fs/nfs/Makefile | 1 - fs/nfs/callback_proc.c | 47 +- fs/nfs/callback_xdr.c | 109 +--- fs/nfs/client.c | 67 +-- fs/nfs/dir.c | 104 +--- fs/nfs/direct.c | 21 +- fs/nfs/file.c | 30 +- fs/nfs/filelayout/filelayout.c | 8 +- fs/nfs/flexfilelayout/flexfilelayout.c | 24 +- fs/nfs/flexfilelayout/flexfilelayoutdev.c | 10 +- fs/nfs/inode.c | 5 +- fs/nfs/internal.h | 5 +- fs/nfs/namespace.c | 34 +- fs/nfs/nfs3proc.c | 54 +- fs/nfs/nfs42proc.c | 24 +- fs/nfs/nfs42xdr.c | 22 +- fs/nfs/nfs4client.c | 283 +++------- fs/nfs/nfs4getroot.c | 3 - fs/nfs/nfs4namespace.c | 7 +- fs/nfs/nfs4proc.c | 99 ++-- fs/nfs/nfs4state.c | 10 +- fs/nfs/nfs4xdr.c | 94 ++-- fs/nfs/objlayout/Kbuild | 5 - fs/nfs/objlayout/objio_osd.c | 675 ---------------------- fs/nfs/objlayout/objlayout.c | 706 ------------------------ fs/nfs/objlayout/objlayout.h | 183 ------ fs/nfs/objlayout/pnfs_osd_xdr_cli.c | 415 -------------- fs/nfs/pagelist.c | 77 ++- fs/nfs/pnfs.c | 62 ++- fs/nfs/pnfs.h | 6 +- fs/nfs/pnfs_nfs.c | 24 +- fs/nfs/proc.c | 2 +- fs/nfs/read.c | 9 +- fs/nfs/write.c | 121 ++-- include/linux/fs.h | 2 + include/linux/lockd/bind.h | 24 +- include/linux/lockd/lockd.h | 2 + include/linux/nfs_fs.h | 17 +- include/linux/nfs_fs_sb.h | 1 + include/linux/nfs_page.h | 5 +- include/linux/nfs_xdr.h | 3 + net/sunrpc/clnt.c | 8 - net/sunrpc/sched.c | 5 - net/sunrpc/xdr.c | 2 +- net/sunrpc/xprt.c | 1 + net/sunrpc/xprtrdma/rpc_rdma.c | 12 +- net/sunrpc/xprtrdma/transport.c | 57 +- net/sunrpc/xprtrdma/verbs.c | 323 +++++++---- net/sunrpc/xprtrdma/xprt_rdma.h | 22 +- 56 files changed, 949 insertions(+), 2960 deletions(-) delete mode 100644 fs/nfs/objlayout/Kbuild delete mode 100644 fs/nfs/objlayout/objio_osd.c delete mode 100644 fs/nfs/objlayout/objlayout.c delete mode 100644 fs/nfs/objlayout/objlayout.h delete mode 100644 fs/nfs/objlayout/pnfs_osd_xdr_cli.c -- Trond Myklebust Linux NFS client maintainer, PrimaryData trond.myklebust@primarydata.com