From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 52EE91A2FB1; Tue, 18 Jun 2024 12:40:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718714445; cv=none; b=hoNSAYWRG6C+5OCX+LfuHbEELjrZAEjYmiufvj6Waqhkp8rzuBJI4yrg0RA/kzCXQWJItzYGzeBLLJC4atJ3GIzWo81QzQ6kZO2KZ2xZ+cMTopR0HRhwFFUb3r7x6467MwmtU/oN8L1xGfN/ZU9jUwjn2c04485C1p+tF3DEemA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718714445; c=relaxed/simple; bh=/9B/4RC90xg+fmmI7AAEtXdZWdD/7x0Is7XUxQpGrOI=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=iam/+CcLy+NSH2OaHIcMwYOfInUhX8DzhOLI6d1ainChOvbBHmrecB+9urqJIgtA+oiiyxMWcm2hCABVaF9ZWfR3BpaznOaDh+9qgUMAJZz9bHg3FkIpWHtJ0iE32KXiHXy7q9l4h+y6IjeSiOm7NT8XUWEmcu1FL0NnqKNwfYE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=tqJ/PbNn; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="tqJ/PbNn" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 189E9C3277B; Tue, 18 Jun 2024 12:40:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1718714445; bh=/9B/4RC90xg+fmmI7AAEtXdZWdD/7x0Is7XUxQpGrOI=; h=From:To:Cc:Subject:Date:From; b=tqJ/PbNn2kLWAkGqqRJDTaHQLuTkYtR/I/r8kvXP1T9XTQn0jOmHXJKPL32PNFqrt RGWB7IZeXa7F5jeAEUDT/6d5ltWEMYHWBp43jRsmMjnnNbMl3vQB2sJ/fJ/4/Rx20N oyJCD0bEyNsX91AlzkydNCIyY6iSGY98a5dCGY8c= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, linux-kernel@vger.kernel.org, torvalds@linux-foundation.org, akpm@linux-foundation.org, linux@roeck-us.net, shuah@kernel.org, patches@kernelci.org, lkft-triage@lists.linaro.org, pavel@denx.de, jonathanh@nvidia.com, f.fainelli@gmail.com, sudipm.mukherjee@gmail.com, srw@sladewatkins.net, rwarsow@gmx.de, conor@kernel.org, allen.lkml@gmail.com, broonie@kernel.org Subject: [PATCH 5.10 000/770] 5.10.220-rc1 review Date: Tue, 18 Jun 2024 14:27:33 +0200 Message-ID: <20240618123407.280171066@linuxfoundation.org> X-Mailer: git-send-email 2.45.2 Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: quilt/0.67 X-stable: review X-Patchwork-Hint: ignore X-KernelTest-Patch: http://kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.10.220-rc1.gz X-KernelTest-Tree: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git X-KernelTest-Branch: linux-5.10.y X-KernelTest-Patches: git://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git X-KernelTest-Version: 5.10.220-rc1 X-KernelTest-Deadline: 2024-06-20T12:34+00:00 Content-Transfer-Encoding: 8bit This is the start of the stable review cycle for the 5.10.220 release. There are 770 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know. Responses should be made by Thu, 20 Jun 2024 12:32:00 +0000. Anything received after that time might be too late. The whole patch series can be found in one patch at: https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.10.220-rc1.gz or in the git tree and branch at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.y and the diffstat can be found below. thanks, greg k-h ------------- Pseudo-Shortlog of commits: Greg Kroah-Hartman Linux 5.10.220-rc1 Trond Myklebust nfsd: Fix a regression in nfsd_setattr() NeilBrown nfsd: don't call locks_release_private() twice concurrently NeilBrown nfsd: don't take fi_lock in nfsd_break_deleg_cb() NeilBrown nfsd: fix RELEASE_LOCKOWNER Jeff Layton nfsd: drop the nfsd_put helper NeilBrown nfsd: call nfsd_last_thread() before final nfsd_put() NeilBrown NFSD: fix possible oops when nfsd/pool_stats is closed. Chuck Lever Documentation: Add missing documentation for EXPORT_OP flags NeilBrown nfsd: separate nfsd_last_thread() from nfsd_put() NeilBrown nfsd: Simplify code around svc_exit_thread() call in nfsd() Chuck Lever nfsd: don't allow nfsd threads to be signalled. Tavian Barnes nfsd: Fix creation time serialization order Chuck Lever NFSD: Add an nfsd4_encode_nfstime4() helper NeilBrown lockd: drop inappropriate svc_get() from locked_get() Dan Carpenter nfsd: fix double fget() bug in __write_ports_addfd() Jeff Layton nfsd: make a copy of struct iattr before calling notify_change Dai Ngo NFSD: Fix problem of COMMIT and NFS4ERR_DELAY in infinite loop Jeff Layton nfsd: simplify the delayed disposal list code Chuck Lever NFSD: Convert filecache to rhltable Jeff Layton nfsd: allow reaping files still under writeback Jeff Layton nfsd: update comment over __nfsd_file_cache_purge Jeff Layton nfsd: don't take/put an extra reference when putting a file Jeff Layton nfsd: add some comments to nfsd_file_do_acquire Jeff Layton nfsd: don't kill nfsd_files because of lease break error Jeff Layton nfsd: simplify test_bit return in NFSD_FILE_KEY_FULL comparator Jeff Layton nfsd: NFSD_FILE_KEY_INODE only needs to find GC'ed entries Jeff Layton nfsd: don't open-code clear_and_wake_up_bit Jeff Layton nfsd: call op_release, even when op_func returns an error Chuck Lever NFSD: Avoid calling OPDESC() with ops->opnum == OP_ILLEGAL Jeff Layton nfsd: don't replace page in rq_pages if it's a continuation of last page Jeff Layton lockd: set file_lock start and end when decoding nlm4 testargs Chuck Lever NFSD: Protect against filesystem freezing Chuck Lever NFSD: copy the whole verifier in nfsd_copy_write_verifier Jeff Layton nfsd: don't fsync nfsd_files on last close Jeff Layton nfsd: fix courtesy client with deny mode handling in nfs4_upgrade_open Dai Ngo NFSD: fix problems with cleanup on errors in nfsd4_copy Jeff Layton nfsd: don't hand out delegation on setuid files being opened for write Dai Ngo NFSD: fix leaked reference count of nfsd4_ssc_umount_item Jeff Layton nfsd: clean up potential nfsd_file refcount leaks in COPY codepath Jeff Layton nfsd: allow nfsd_file_get to sanely handle a NULL pointer Dai Ngo NFSD: enhance inter-server copy cleanup Jeff Layton nfsd: don't destroy global nfs4_file table in per-net shutdown Jeff Layton nfsd: don't free files unconditionally in __nfsd_file_cache_purge Dai Ngo NFSD: replace delayed_work with work_struct for nfsd_client_shrinker Dai Ngo NFSD: register/unregister of nfsd-client shrinker at nfsd startup/shutdown time Xingyuan Mo NFSD: fix use-after-free in nfsd4_ssc_setup_dul() Chuck Lever NFSD: Use set_bit(RQ_DROPME) Chuck Lever Revert "SUNRPC: Use RMW bitops in single-threaded hot paths" Jeff Layton nfsd: fix handling of cached open files in nfsd4_open codepath Jeff Layton nfsd: rework refcounting in filecache Kees Cook NFSD: Avoid clashing function prototypes Chuck Lever NFSD: Use only RQ_DROPME to signal the need to drop a reply Dai Ngo NFSD: add delegation reaper to react to low memory condition Dai Ngo NFSD: add support for sending CB_RECALL_ANY Dai Ngo NFSD: refactoring courtesy_client_reaper to a generic low memory shrinker Brian Foster NFSD: pass range end to vfs_fsync_range() instead of count Jeff Layton lockd: fix file selection in nlmsvc_cancel_blocked Jeff Layton lockd: ensure we use the correct file descriptor when unlocking Jeff Layton lockd: set missing fl_flags field when retrieving args Xiu Jianfeng NFSD: Use struct_size() helper in alloc_session() Jeff Layton nfsd: return error if nfs4_setacl fails Trond Myklebust lockd: set other missing fields when unlocking files Chuck Lever NFSD: Add an nfsd_file_fsync tracepoint Jeff Layton nfsd: fix up the filecache laundrette scheduling Jeff Layton nfsd: reorganize filecache.c Jeff Layton nfsd: remove the pages_flushed statistic from filecache Chuck Lever NFSD: Fix licensing header in filecache.c Chuck Lever NFSD: Use rhashtable for managing nfs4_file objects Chuck Lever NFSD: Refactor find_file() Chuck Lever NFSD: Clean up find_or_add_file() Chuck Lever NFSD: Add a nfsd4_file_hash_remove() helper Chuck Lever NFSD: Clean up nfsd4_init_file() Chuck Lever NFSD: Update file_hashtbl() helpers Chuck Lever NFSD: Use const pointers as parameters to fh_ helpers Chuck Lever NFSD: Trace delegation revocations Chuck Lever NFSD: Trace stateids returned via DELEGRETURN Chuck Lever NFSD: Clean up nfs4_preprocess_stateid_op() call sites Chuck Lever NFSD: Flesh out a documenting comment for filecache.c Chuck Lever NFSD: Add an NFSD_FILE_GC flag to enable nfsd_file garbage collection Chuck Lever NFSD: Revert "NFSD: NFSv4 CLOSE should release an nfsd_file immediately" Chuck Lever NFSD: Pass the target nfsd_file to nfsd_commit() David Disseldorp exportfs: use pr_debug for unreachable debug statements Jeff Layton nfsd: allow disabling NFSv2 at compile time Jeff Layton nfsd: move nfserrno() to vfs.c Jeff Layton nfsd: ignore requests to disable unsupported versions Chuck Lever NFSD: Finish converting the NFSv3 GETACL result encoder Chuck Lever NFSD: Finish converting the NFSv2 GETACL result encoder Colin Ian King NFSD: Remove redundant assignment to variable host_err Anna Schumaker NFSD: Simplify READ_PLUS Jeff Layton nfsd: use locks_inode_context helper Jeff Layton lockd: use locks_inode_context helper Jeff Layton filelock: add a new locks_inode_context accessor function Chuck Lever NFSD: Fix reads with a non-zero offset that don't end on a page boundary Jeff Layton nfsd: put the export reference in nfsd4_verify_deleg_dentry Jeff Layton nfsd: fix use-after-free in nfsd_file_do_acquire tracepoint Jeff Layton nfsd: fix net-namespace logic in __nfsd_file_cache_purge Tetsuo Handa NFSD: unregister shrinker when nfsd_init_net() fails Jeff Layton nfsd: rework hashtable handling in nfsd_do_file_acquire Jeff Layton nfsd: fix nfsd_file_unhash_and_dispose Gaosheng Cui fanotify: Remove obsoleted fanotify_event_has_path() Gaosheng Cui fsnotify: remove unused declaration Al Viro fs/notify: constify path Jeff Layton nfsd: extra checks when freeing delegation stateids Jeff Layton nfsd: make nfsd4_run_cb a bool return function Jeff Layton nfsd: fix comments about spinlock handling with delegations Jeff Layton nfsd: only fill out return pointer on success in nfsd4_lookup_stateid Chuck Lever NFSD: Cap rsize_bop result based on send buffer size Chuck Lever NFSD: Rename the fields in copy_stateid_t ChenXiaoSong nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_file_cache_stats_fops ChenXiaoSong nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_reply_cache_stats_fops ChenXiaoSong nfsd: use DEFINE_SHOW_ATTRIBUTE to define client_info_fops ChenXiaoSong nfsd: use DEFINE_SHOW_ATTRIBUTE to define export_features_fops and supported_enctypes_fops ChenXiaoSong nfsd: use DEFINE_PROC_SHOW_ATTRIBUTE to define nfsd_proc_ops Chuck Lever NFSD: Pack struct nfsd4_compoundres Chuck Lever NFSD: Remove unused nfsd4_compoundargs::cachetype field Chuck Lever NFSD: Remove "inline" directives on op_rsize_bop helpers Chuck Lever NFSD: Clean up nfs4svc_encode_compoundres() Chuck Lever NFSD: Clean up WRITE arg decoders Chuck Lever NFSD: Use xdr_inline_decode() to decode NFSv3 symlinks Chuck Lever NFSD: Refactor common code out of dirlist helpers Chuck Lever NFSD: Reduce amount of struct nfsd4_compoundargs that needs clearing Chuck Lever SUNRPC: Parametrize how much of argsize should be zeroed Dai Ngo NFSD: add shrinker to reap courtesy clients on low memory condition Dai Ngo NFSD: keep track of the number of courtesy clients in the system Chuck Lever NFSD: Make nfsd4_remove() wait before returning NFS4ERR_DELAY Chuck Lever NFSD: Make nfsd4_rename() wait before returning NFS4ERR_DELAY Chuck Lever NFSD: Make nfsd4_setattr() wait before returning NFS4ERR_DELAY Chuck Lever NFSD: Refactor nfsd_setattr() Chuck Lever NFSD: Add a mechanism to wait for a DELEGRETURN Chuck Lever NFSD: Add tracepoints to report NFSv4 callback completions Gaosheng Cui nfsd: remove nfsd4_prepare_cb_recall() declaration Jeff Layton nfsd: clean up mounted_on_fileid handling Chuck Lever NFSD: Fix handling of oversized NFSv4 COMPOUND requests NeilBrown NFSD: drop fname and flen args from nfsd_create_locked() Chuck Lever NFSD: Protect against send buffer overflow in NFSv3 READ Chuck Lever NFSD: Protect against send buffer overflow in NFSv2 READ Chuck Lever NFSD: Protect against send buffer overflow in NFSv3 READDIR Chuck Lever NFSD: Protect against send buffer overflow in NFSv2 READDIR Chuck Lever NFSD: Increase NFSD_MAX_OPS_PER_COMPOUND Christophe JAILLET nfsd: Propagate some error code returned by memdup_user() Christophe JAILLET nfsd: Avoid some useless tests Jinpeng Cui NFSD: remove redundant variable status Olga Kornievskaia NFSD enforce filehandle check for source file in COPY Wolfram Sang lockd: move from strlcpy with unused retval to strscpy Wolfram Sang NFSD: move from strlcpy with unused retval to strscpy Al Viro nfsd_splice_actor(): handle compound pages NeilBrown NFSD: fix regression with setting ACLs. Jeff Layton lockd: detect and reject lock arguments that overflow NeilBrown NFSD: discard fh_locked flag and fh_lock/fh_unlock NeilBrown NFSD: use (un)lock_inode instead of fh_(un)lock for file operations NeilBrown NFSD: use explicit lock/unlock for directory ops NeilBrown NFSD: reduce locking in nfsd_lookup() NeilBrown NFSD: only call fh_unlock() once in nfsd_link() NeilBrown NFSD: always drop directory lock in nfsd_unlink() NeilBrown NFSD: change nfsd_create()/nfsd_symlink() to unlock directory before returning. NeilBrown NFSD: add posix ACLs to struct nfsd_attrs NeilBrown NFSD: add security label to struct nfsd_attrs NeilBrown NFSD: set attributes when creating symlinks NeilBrown NFSD: introduce struct nfsd_attrs Jeff Layton NFSD: verify the opened dentry after setting a delegation Jeff Layton NFSD: drop fh argument from alloc_init_deleg Chuck Lever NFSD: Move copy offload callback arguments into a separate structure Chuck Lever NFSD: Add nfsd4_send_cb_offload() Chuck Lever NFSD: Remove kmalloc from nfsd4_do_async_copy() Chuck Lever NFSD: Refactor nfsd4_do_copy() Chuck Lever NFSD: Refactor nfsd4_cleanup_inter_ssc() (2/2) Chuck Lever NFSD: Refactor nfsd4_cleanup_inter_ssc() (1/2) Chuck Lever NFSD: Replace boolean fields in struct nfsd4_copy Chuck Lever NFSD: Make nfs4_put_copy() static Chuck Lever NFSD: Reorder the fields in struct nfsd4_op Chuck Lever NFSD: Shrink size of struct nfsd4_copy Chuck Lever NFSD: Shrink size of struct nfsd4_copy_notify Chuck Lever NFSD: nfserrno(-ENOMEM) is nfserr_jukebox Chuck Lever NFSD: Fix strncpy() fortify warning Chuck Lever NFSD: Clean up nfsd4_encode_readlink() Chuck Lever NFSD: Use xdr_pad_size() Chuck Lever NFSD: Simplify starting_len Chuck Lever NFSD: Optimize nfsd4_encode_readv() Chuck Lever NFSD: Add an nfsd4_read::rd_eof field Chuck Lever NFSD: Clean up SPLICE_OK in nfsd4_encode_read() Chuck Lever NFSD: Optimize nfsd4_encode_fattr() Chuck Lever NFSD: Optimize nfsd4_encode_operation() Jeff Layton nfsd: silence extraneous printk on nfsd.ko insertion Dai Ngo NFSD: limit the number of v4 clients to 1024 per 1GB of system memory Dai Ngo NFSD: keep track of the number of v4 clients in the system Dai Ngo NFSD: refactoring v4 specific code to a helper in nfs4state.c Chuck Lever NFSD: Ensure nf_inode is never dereferenced Chuck Lever NFSD: NFSv4 CLOSE should release an nfsd_file immediately Chuck Lever NFSD: Move nfsd_file_trace_alloc() tracepoint Chuck Lever NFSD: Separate tracepoints for acquire and create Chuck Lever NFSD: Clean up unused code after rhashtable conversion Chuck Lever NFSD: Convert the filecache to use rhashtable Chuck Lever NFSD: Set up an rhashtable for the filecache Chuck Lever NFSD: Replace the "init once" mechanism Chuck Lever NFSD: Remove nfsd_file::nf_hashval Chuck Lever NFSD: nfsd_file_hash_remove can compute hashval Chuck Lever NFSD: Refactor __nfsd_file_close_inode() Chuck Lever NFSD: nfsd_file_unhash can compute hashval from nf->nf_inode Chuck Lever NFSD: Remove lockdep assertion from unhash_and_release_locked() Chuck Lever NFSD: No longer record nf_hashval in the trace log Chuck Lever NFSD: Never call nfsd_file_gc() in foreground paths Chuck Lever NFSD: Fix the filecache LRU shrinker Chuck Lever NFSD: Leave open files out of the filecache LRU Chuck Lever NFSD: Trace filecache LRU activity Chuck Lever NFSD: WARN when freeing an item still linked via nf_lru Chuck Lever NFSD: Hook up the filecache stat file Chuck Lever NFSD: Zero counters when the filecache is re-initialized Chuck Lever NFSD: Record number of flush calls Chuck Lever NFSD: Report the number of items evicted by the LRU walk Chuck Lever NFSD: Refactor nfsd_file_lru_scan() Chuck Lever NFSD: Refactor nfsd_file_gc() Chuck Lever NFSD: Add nfsd_file_lru_dispose_list() helper Chuck Lever NFSD: Report average age of filecache items Chuck Lever NFSD: Report count of freed filecache items Chuck Lever NFSD: Report count of calls to nfsd_file_acquire() Chuck Lever NFSD: Report filecache LRU size Chuck Lever NFSD: Demote a WARN to a pr_warn() Colin Ian King nfsd: remove redundant assignment to variable len Zhang Jiaming NFSD: Fix space and spelling mistake Benjamin Coddington NLM: Defend against file_lock changes after vfs_test_lock() Chuck Lever SUNRPC: Fix xdr_encode_bool() Jeff Layton nfsd: eliminate the NFSD_FILE_BREAK_* flags Xin Gao fsnotify: Fix comment typo Amir Goldstein fanotify: introduce FAN_MARK_IGNORE Amir Goldstein fanotify: cleanups for fanotify_mark() input validations Amir Goldstein fanotify: prepare for setting event flags in ignore mask Oliver Ford fs: inotify: Fix typo in inotify comment Jeff Layton lockd: fix nlm_close_files Jeff Layton lockd: set fl_owner when unlocking files Chuck Lever NFSD: Decode NFSv4 birth time attribute NeilBrown NFS: restore module put when manager exits. Amir Goldstein fanotify: refine the validation checks on non-dir inode mask Chuck Lever SUNRPC: Optimize xdr_reserve_space() Chuck Lever NFSD: Fix potential use-after-free in nfsd_file_put() Chuck Lever NFSD: nfsd_file_put() can sleep Chuck Lever NFSD: Add documenting comment for nfsd4_release_lockowner() Chuck Lever NFSD: Modernize nfsd4_release_lockowner() Julian Schroeder nfsd: destroy percpu stats counters after reply cache shutdown Zhang Xiaoxu nfsd: Fix null-ptr-deref in nfsd_fill_super() Zhang Xiaoxu nfsd: Unregister the cld notifier when laundry_wq create failed Chuck Lever SUNRPC: Use RMW bitops in single-threaded hot paths Chuck Lever NFSD: Clean up the show_nf_flags() macro Chuck Lever NFSD: Trace filecache opens Chuck Lever NFSD: Move documenting comment for nfsd4_process_open2() Chuck Lever NFSD: Fix whitespace Chuck Lever NFSD: Remove dprintk call sites from tail of nfsd4_open() Chuck Lever NFSD: Instantiate a struct file when creating a regular NFSv4 file Chuck Lever NFSD: Clean up nfsd_open_verified() Chuck Lever NFSD: Remove do_nfsd_create() Chuck Lever NFSD: Refactor NFSv4 OPEN(CREATE) Chuck Lever NFSD: Refactor NFSv3 CREATE Chuck Lever NFSD: Refactor nfsd_create_setattr() Chuck Lever NFSD: Avoid calling fh_drop_write() twice in do_nfsd_create() Chuck Lever NFSD: Clean up nfsd3_proc_create() Dai Ngo NFSD: Show state of courtesy client in client info Dai Ngo NFSD: add support for lock conflict to courteous server Dai Ngo fs/lock: add 2 callbacks to lock_manager_operations to resolve conflict Dai Ngo fs/lock: add helper locks_owner_has_blockers to check for blockers Dai Ngo NFSD: move create/destroy of laundry_wq to init_nfsd and exit_nfsd Dai Ngo NFSD: add support for share reservation conflict to courteous server Dai Ngo NFSD: add courteous server support for thread with only delegation Chuck Lever NFSD: Clean up nfsd_splice_actor() Vasily Averin fanotify: fix incorrect fmode_t casts Amir Goldstein fsnotify: consistent behavior for parent not watching children Amir Goldstein fsnotify: introduce mark type iterator Amir Goldstein fanotify: enable "evictable" inode marks Amir Goldstein fanotify: use fsnotify group lock helpers Amir Goldstein fanotify: implement "evictable" inode marks Amir Goldstein fanotify: factor out helper fanotify_mark_update_flags() Amir Goldstein fanotify: create helper fanotify_mark_user_flags() Amir Goldstein fsnotify: allow adding an inode mark without pinning inode Amir Goldstein dnotify: use fsnotify group lock helpers Amir Goldstein nfsd: use fsnotify group lock helpers Amir Goldstein inotify: use fsnotify group lock helpers Amir Goldstein fsnotify: create helpers for group mark_mutex lock Amir Goldstein fsnotify: make allow_dups a property of the group Amir Goldstein fsnotify: pass flags argument to fsnotify_alloc_group() Amir Goldstein inotify: move control flags from mask to mark flags Dai Ngo fs/lock: documentation cleanup. Replace inode->i_lock with flc_lock. Amir Goldstein fanotify: do not allow setting dirent events in mask of non-dir Trond Myklebust nfsd: Clean up nfsd_file_put() Trond Myklebust nfsd: Fix a write performance regression Haowen Bai SUNRPC: Return true/false (not 1/0) from bool functions Bang Li fsnotify: remove redundant parameter judgment Amir Goldstein fsnotify: optimize FS_MODIFY events with no ignored masks Amir Goldstein fsnotify: fix merge with parent's ignored mask Jakob Koschel nfsd: fix using the correct variable for sizeof() Chuck Lever NFSD: Clean up _lm_ operation names Chuck Lever NFSD: Remove CONFIG_NFSD_V3 Chuck Lever NFSD: Move svc_serv_ops::svo_function into struct svc_serv Chuck Lever NFSD: Remove svc_serv_ops::svo_module Chuck Lever SUNRPC: Remove svc_shutdown_net() Chuck Lever SUNRPC: Rename svc_close_xprt() Chuck Lever SUNRPC: Rename svc_create_xprt() Chuck Lever SUNRPC: Remove svo_shutdown method Chuck Lever SUNRPC: Merge svc_do_enqueue_xprt() into svc_enqueue_xprt() Chuck Lever SUNRPC: Remove the .svo_enqueue_xprt method Chuck Lever NFSD: Streamline the rare "found" case Chuck Lever NFSD: Skip extra computation for RC_NOCACHE case Chuck Lever NFSD: De-duplicate hash bucket indexing Ondrej Valousek nfsd: Add support for the birth time attribute Chuck Lever NFSD: Deprecate NFS_OFFSET_MAX Chuck Lever NFSD: COMMIT operations must not return NFS?ERR_INVAL Chuck Lever NFSD: Fix NFSv3 SETATTR/CREATE's handling of large file sizes Chuck Lever NFSD: Fix ia_size underflow Chuck Lever NFSD: Fix the behavior of READ near OFFSET_MAX J. Bruce Fields lockd: fix failure to cleanup client locks J. Bruce Fields lockd: fix server crash on reboot of client holding lock Yang Li fanotify: remove variable set but not used J. Bruce Fields nfsd: fix crash on COPY_NOTIFY with special stateid Chuck Lever NFSD: Move fill_pre_wcc() and fill_post_wcc() Chuck Lever Revert "nfsd: skip some unnecessary stats in the v4 case" Chuck Lever NFSD: Trace boot verifier resets Chuck Lever NFSD: Rename boot verifier functions Chuck Lever NFSD: Clean up the nfsd_net::nfssvc_boot field Chuck Lever NFSD: Write verifier might go backwards Trond Myklebust nfsd: Add a tracepoint for errors in nfsd4_clone_file_range() Chuck Lever NFSD: De-duplicate net_generic(nf->nf_net, nfsd_net_id) Chuck Lever NFSD: De-duplicate net_generic(SVC_NET(rqstp), nfsd_net_id) Chuck Lever NFSD: Clean up nfsd_vfs_write() Jeff Layton nfsd: Retry once in nfsd_open on an -EOPENSTALE return Jeff Layton nfsd: Add errno mapping for EREMOTEIO Peng Tao nfsd: map EBADF Chuck Lever NFSD: Fix zero-length NFSv3 WRITEs Vasily Averin nfsd4: add refcount for nfsd4_blocked_lock J. Bruce Fields nfs: block notification on fs with its own ->lock Chuck Lever NFSD: De-duplicate nfsd4_decode_bitmap4() J. Bruce Fields nfsd: improve stateid access bitmask documentation Chuck Lever NFSD: Combine XDR error tracepoints NeilBrown NFSD: simplify per-net file cache management Jiapeng Chong NFSD: Fix inconsistent indenting Chuck Lever NFSD: Remove be32_to_cpu() from DRC hash function NeilBrown NFS: switch the callback service back to non-pooled. NeilBrown lockd: use svc_set_num_threads() for thread start and stop NeilBrown SUNRPC: always treat sv_nrpools==1 as "not pooled" NeilBrown SUNRPC: move the pool_map definitions (back) into svc.c NeilBrown lockd: rename lockd_create_svc() to lockd_get() NeilBrown lockd: introduce lockd_put() NeilBrown lockd: move svc_exit_thread() into the thread NeilBrown lockd: move lockd_start_svc() call into lockd_create_svc() NeilBrown lockd: simplify management of network status notifiers NeilBrown lockd: introduce nlmsvc_serv NeilBrown NFSD: simplify locking for network notifier. NeilBrown SUNRPC: discard svo_setup and rename svc_set_num_threads_sync() NeilBrown NFSD: Make it possible to use svc_set_num_threads_sync NeilBrown NFSD: narrow nfsd_mutex protection in nfsd thread NeilBrown SUNRPC: use sv_lock to protect updates to sv_nrthreads. NeilBrown nfsd: make nfsd_stats.th_cnt atomic_t NeilBrown SUNRPC: stop using ->sv_nrthreads as a refcount NeilBrown SUNRPC/NFSD: clean up get/put functions. NeilBrown SUNRPC: change svc_get() to return the svc. NeilBrown NFSD: handle errors better in write_ports_addfd() Chuck Lever NFSD: Fix sparse warning Eric W. Biederman exit: Rename module_put_and_exit to module_put_and_kthread_exit Eric W. Biederman exit: Implement kthread_exit Amir Goldstein fanotify: wire up FAN_RENAME event Amir Goldstein fanotify: report old and/or new parent+name in FAN_RENAME event Amir Goldstein fanotify: record either old name new name or both for FAN_RENAME Amir Goldstein fanotify: record old and new parent and name in FAN_RENAME event Amir Goldstein fanotify: support secondary dir fh and name in fanotify_info Amir Goldstein fanotify: use helpers to parcel fanotify_info buffer Amir Goldstein fanotify: use macros to get the offset to fanotify_info buffer Amir Goldstein fsnotify: generate FS_RENAME event with rich information Amir Goldstein fanotify: introduce group flag FAN_REPORT_TARGET_FID Amir Goldstein fsnotify: separate mark iterator type from object type enum Amir Goldstein fsnotify: clarify object type argument Chuck Lever NFSD: Fix READDIR buffer overflow Chuck Lever NFSD: Fix exposure in nfsd4_decode_bitmap() J. Bruce Fields nfsd4: remove obselete comment Changcheng Deng NFSD:fix boolreturn.cocci warning J. Bruce Fields nfsd: update create verifier comment Chuck Lever SUNRPC: Change return value type of .pc_encode Chuck Lever SUNRPC: Replace the "__be32 *p" parameter to .pc_encode Chuck Lever NFSD: Save location of NFSv4 COMPOUND status Chuck Lever SUNRPC: Change return value type of .pc_decode Chuck Lever SUNRPC: Replace the "__be32 *p" parameter to .pc_decode Chuck Lever NFSD: Have legacy NFSD WRITE decoders use xdr_stream_subsegment() Colin Ian King NFSD: Initialize pointer ni with NULL and not plain integer 0 NeilBrown NFSD: simplify struct nfsfh NeilBrown NFSD: drop support for ancient filehandles NeilBrown NFSD: move filehandle format declarations out of "uapi". Chuck Lever NFSD: Optimize DRC bucket pruning Chuck Lever SUNRPC: Trace calls to .rpc_call_done Gabriel Krisman Bertazi fanotify: Allow users to request FAN_FS_ERROR events Gabriel Krisman Bertazi fanotify: Emit generic error info for error event Gabriel Krisman Bertazi fanotify: Report fid info for file related file system errors Gabriel Krisman Bertazi fanotify: WARN_ON against too large file handles Gabriel Krisman Bertazi fanotify: Add helpers to decide whether to report FID/DFID Gabriel Krisman Bertazi fanotify: Wrap object_fh inline space in a creator macro Gabriel Krisman Bertazi fanotify: Support merging of error events Gabriel Krisman Bertazi fanotify: Support enqueueing of error events Gabriel Krisman Bertazi fanotify: Pre-allocate pool of error events Gabriel Krisman Bertazi fanotify: Reserve UAPI bits for FAN_FS_ERROR Gabriel Krisman Bertazi fsnotify: Support FS_ERROR event type Gabriel Krisman Bertazi fanotify: Require fid_mode for any non-fd event Gabriel Krisman Bertazi fanotify: Encode empty file handle when no inode is provided Gabriel Krisman Bertazi fanotify: Allow file handle encoding for unhashed events Gabriel Krisman Bertazi fanotify: Support null inode event in fanotify_dfid_inode Gabriel Krisman Bertazi fsnotify: Pass group argument to free_event Gabriel Krisman Bertazi fsnotify: Protect fsnotify_handle_inode_event from no-inode events Gabriel Krisman Bertazi fsnotify: Retrieve super block from the data field Gabriel Krisman Bertazi fsnotify: Add wrapper around fsnotify_add_event Gabriel Krisman Bertazi fsnotify: Add helper to detect overflow_event Gabriel Krisman Bertazi inotify: Don't force FS_IN_IGNORED Gabriel Krisman Bertazi fanotify: Split fsid check from other fid mode checks Gabriel Krisman Bertazi fanotify: Fold event size calculation to its own function Gabriel Krisman Bertazi fsnotify: Don't insert unmergeable events in hashtable Amir Goldstein fsnotify: clarify contract for create event hooks Amir Goldstein fsnotify: pass dentry instead of inode data Amir Goldstein fsnotify: pass data_type to fsnotify_name() Trond Myklebust nfsd: Fix a warning for nfsd_file_close_inode Chuck Lever NLM: Fix svcxdr_encode_owner() Amir Goldstein fsnotify: fix sb_connectors leak Chuck Lever NFS: Remove unused callback void decoder Chuck Lever NFS: Add a private local dispatcher for NFSv4 callback operations Chuck Lever SUNRPC: Eliminate the RQ_AUTHERR flag Chuck Lever SUNRPC: Set rq_auth_stat in the pg_authenticate() callout Chuck Lever SUNRPC: Add svc_rqst::rq_auth_stat J. Bruce Fields nfs: don't allow reexport reclaims J. Bruce Fields lockd: don't attempt blocking locks on nfs reexports J. Bruce Fields nfs: don't atempt blocking locks on nfs reexports J. Bruce Fields Keep read and write fds with each nlm_file J. Bruce Fields lockd: update nlm_lookup_file reexport comment J. Bruce Fields nlm: minor refactoring J. Bruce Fields nlm: minor nlm_lookup_file argument change Jia He lockd: change the proc_handler for nsm_use_hostnames Jia He sysctl: introduce new proc handler proc_dobool NeilBrown NFSD: remove vanity comments Chuck Lever NFSD: Batch release pages during splice read Chuck Lever SUNRPC: Add svc_rqst_replace_page() API Chuck Lever NFSD: Clean up splice actor Amir Goldstein fsnotify: optimize the case of no marks of any type Amir Goldstein fsnotify: count all objects with attached connectors Amir Goldstein fsnotify: count s_fsnotify_inode_refs for attached connectors Amir Goldstein fsnotify: replace igrab() with ihold() on attach connector Matthew Bobrowski fanotify: add pidfd support to the fanotify API Matthew Bobrowski fanotify: introduce a generic info record copying helper Matthew Bobrowski fanotify: minor cosmetic adjustments to fid labels Matthew Bobrowski kernel/pid.c: implement additional checks upon pidfd_create() parameters Matthew Bobrowski kernel/pid.c: remove static qualifier from pidfd_create() J. Bruce Fields nfsd: fix NULL dereference in nfs3svc_encode_getaclres Chuck Lever NFSD: Prevent a possible oops in the nfs_dirent() tracepoint Colin Ian King nfsd: remove redundant assignment to pointer 'this' Chuck Lever lockd: Update the NLMv4 SHARE results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 nlm_res results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 TEST results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 void results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 FREE_ALL arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 SHARE arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 SM_NOTIFY arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 nlm_res arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 UNLOCK arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 CANCEL arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 LOCK arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 TEST arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv4 void arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 SHARE results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 nlm_res results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 TEST results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 void results encoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 FREE_ALL arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 SHARE arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 SM_NOTIFY arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 nlm_res arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 UNLOCK arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 CANCEL arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 LOCK arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 TEST arguments decoder to use struct xdr_stream Chuck Lever lockd: Update the NLMv1 void argument decoder to use struct xdr_stream Chuck Lever lockd: Common NLM XDR helpers Chuck Lever lockd: Create a simplified .vs_dispatch method for NLM requests Chuck Lever lockd: Remove stale comments J. Bruce Fields nfsd: rpc_peeraddr2str needs rcu lock Wei Yongjun NFSD: Fix error return code in nfsd4_interssc_connect() Dai Ngo nfsd: fix kernel test robot warning in SSC code Dave Wysochanski nfsd4: Expose the callback address and state of each NFS4 client J. Bruce Fields nfsd: move fsnotify on client creation outside spinlock Dai Ngo NFSD: delay unmount source's export after inter-server copy completed. Olga Kornievskaia NFSD add vfs_fsync after async copy is done J. Bruce Fields nfsd: move some commit_metadata()s outside the inode lock Yu Hsiang Huang nfsd: Prevent truncation of an unlinked inode from blocking access to its directory Chuck Lever NFSD: Update nfsd_cb_args tracepoint Chuck Lever NFSD: Remove the nfsd_cb_work and nfsd_cb_done tracepoints Chuck Lever NFSD: Add an nfsd_cb_probe tracepoint Chuck Lever NFSD: Replace the nfsd_deleg_break tracepoint Chuck Lever NFSD: Add an nfsd_cb_offload tracepoint Chuck Lever NFSD: Add an nfsd_cb_lm_notify tracepoint Chuck Lever NFSD: Enhance the nfsd_cb_setup tracepoint Chuck Lever NFSD: Adjust cb_shutdown tracepoint Chuck Lever NFSD: Add cb_lost tracepoint Chuck Lever NFSD: Drop TRACE_DEFINE_ENUM for NFSD4_CB_ macros Chuck Lever NFSD: Capture every CB state transition Chuck Lever NFSD: Constify @fh argument of knfsd_fh_hash() Chuck Lever NFSD: Add tracepoints for EXCHANGEID edge cases Chuck Lever NFSD: Add tracepoints for SETCLIENTID edge cases Chuck Lever NFSD: Add a couple more nfsd_clid_expired call sites Chuck Lever NFSD: Add nfsd_clid_destroyed tracepoint Chuck Lever NFSD: Add nfsd_clid_reclaim_complete tracepoint Chuck Lever NFSD: Add nfsd_clid_confirmed tracepoint Chuck Lever NFSD: Remove trace_nfsd_clid_inuse_err Chuck Lever NFSD: Add nfsd_clid_verf_mismatch tracepoint Chuck Lever NFSD: Add nfsd_clid_cred_mismatch tracepoint Chuck Lever NFSD: Add an RPC authflavor tracepoint display helper Amir Goldstein fanotify: fix permission model of unprivileged group Trond Myklebust NFS: fix nfs_fetch_iversion() Dai Ngo NFSv4.2: Remove ifdef CONFIG_NFSD from NFSv4.2 client SSC code. Gustavo A. R. Silva nfsd: Fix fall-through warnings for Clang J. Bruce Fields nfsd: grant read delegations to clients holding writes J. Bruce Fields nfsd: reshuffle some code J. Bruce Fields nfsd: track filehandle aliasing in nfs4_files J. Bruce Fields nfsd: hash nfs4_files by inode number Vasily Averin nfsd: removed unused argument in nfsd_startup_generic() Jiapeng Chong nfsd: remove unused function Christian Brauner fanotify_user: use upper_32_bits() to verify mask Amir Goldstein fanotify: support limited functionality for unprivileged users Amir Goldstein fanotify: configurable limits via sysfs Amir Goldstein fanotify: limit number of event merge attempts Amir Goldstein fsnotify: use hash table for faster events merge Amir Goldstein fanotify: mix event info and pid into merge key hash Amir Goldstein fanotify: reduce event objectid to 29-bit hash Chuck Lever Revert "fanotify: limit number of event merge attempts" Amir Goldstein fsnotify: allow fsnotify_{peek,remove}_first_event with empty queue Guobin Huang NFSD: Use DEFINE_SPINLOCK() for spinlock Gustavo A. R. Silva UAPI: nfsfh.h: Replace one-element array with flexible-array member Chuck Lever SUNRPC: Export svc_xprt_received() NeilBrown nfsd: report client confirmation status in "info" file J. Bruce Fields nfsd: don't ignore high bits of copy count J. Bruce Fields nfsd: COPY with length 0 should copy to end of file Ricardo Ribalda nfsd: Fix typo "accesible" Paul Menzel nfsd: Log client tracking type log message as info instead of warning J. Bruce Fields nfsd: helper for laundromat expiry calculations Chuck Lever NFSD: Clean up NFSDDBG_FACILITY macro Chuck Lever NFSD: Add a tracepoint to record directory entry encoding Chuck Lever NFSD: Clean up after updating NFSv3 ACL encoders Chuck Lever NFSD: Update the NFSv3 SETACL result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 GETACL result encoder to use struct xdr_stream Chuck Lever NFSD: Clean up after updating NFSv2 ACL encoders Chuck Lever NFSD: Update the NFSv2 ACL ACCESS result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 ACL GETATTR result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 SETACL result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 GETACL result encoder to use struct xdr_stream Chuck Lever NFSD: Add an xdr_stream-based encoder for NFSv2/3 ACLs Chuck Lever NFSD: Remove unused NFSv2 directory entry encoders Chuck Lever NFSD: Update the NFSv2 READDIR entry encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 READDIR result encoder to use struct xdr_stream Chuck Lever NFSD: Count bytes instead of pages in the NFSv2 READDIR encoder Chuck Lever NFSD: Add a helper that encodes NFSv3 directory offset cookies, again Chuck Lever NFSD: Update the NFSv2 STATFS result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 READ result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 READLINK result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 diropres encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 attrstat encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 stat encoder to use struct xdr_stream Chuck Lever NFSD: Reduce svc_rqst::rq_pages churn during READDIR operations Chuck Lever NFSD: Remove unused NFSv3 directory entry encoders Chuck Lever NFSD: Update NFSv3 READDIR entry encoders to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 READDIR3res encoder to use struct xdr_stream Chuck Lever NFSD: Count bytes instead of pages in the NFSv3 READDIR encoder Chuck Lever NFSD: Add a helper that encodes NFSv3 directory offset cookies Chuck Lever NFSD: Update the NFSv3 COMMIT3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 PATHCONF3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 FSINFO3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 FSSTAT3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 LINK3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 RENAMEv3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 CREATE family of encoders to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 WRITE3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 READ3res encode to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 READLINK3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 wccstat result encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 LOOKUP3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 ACCESS3res encoder to use struct xdr_stream Chuck Lever NFSD: Update the GETATTR3res encoder to use struct xdr_stream Chuck Lever NFSD: Extract the svcxdr_init_encode() helper Christian Brauner namei: introduce struct renamedata Christian Brauner fs: add file and path permissions helpers Christoph Hellwig kallsyms: only build {,module_}kallsyms_on_each_symbol when required Christoph Hellwig kallsyms: refactor {,module_}kallsyms_on_each_symbol Christoph Hellwig module: use RCU to synchronize find_module Christoph Hellwig module: unexport find_module and module_mutex Shakeel Butt inotify, memcg: account inotify instances to kmemcg J. Bruce Fields nfsd: skip some unnecessary stats in the v4 case J. Bruce Fields nfs: use change attribute for NFS re-exports Dai Ngo NFSv4_2: SSC helper should use its own config. J. Bruce Fields nfsd: cstate->session->se_client -> cstate->clp J. Bruce Fields nfsd: simplify nfsd4_check_open_reclaim J. Bruce Fields nfsd: remove unused set_client argument J. Bruce Fields nfsd: find_cpntf_state cleanup J. Bruce Fields nfsd: refactor set_client J. Bruce Fields nfsd: rename lookup_clientid->set_client J. Bruce Fields nfsd: simplify nfsd_renew J. Bruce Fields nfsd: simplify process_lock J. Bruce Fields nfsd4: simplify process_lookup1 Amir Goldstein nfsd: report per-export stats Amir Goldstein nfsd: protect concurrent access to nfsd stats counters Amir Goldstein nfsd: remove unused stats counters Chuck Lever NFSD: Clean up after updating NFSv3 ACL decoders Chuck Lever NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream, again Chuck Lever NFSD: Update the NFSv3 GETACL argument decoder to use struct xdr_stream Chuck Lever NFSD: Clean up after updating NFSv2 ACL decoders Chuck Lever NFSD: Update the NFSv2 ACL ACCESS argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 ACL GETATTR argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream Chuck Lever NFSD: Add an xdr_stream-based decoder for NFSv2/3 ACLs Chuck Lever NFSD: Update the NFSv2 GETACL argument decoder to use struct xdr_stream Chuck Lever NFSD: Remove argument length checking in nfsd_dispatch() Chuck Lever NFSD: Update the NFSv2 SYMLINK argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 CREATE argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 SETATTR argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 LINK argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 RENAME argument decoder to use struct xdr_stream Chuck Lever NFSD: Update NFSv2 diropargs decoding to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 READDIR argument decoder to use struct xdr_stream Chuck Lever NFSD: Add helper to set up the pages where the dirlist is encoded, again Chuck Lever NFSD: Update the NFSv2 READLINK argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 WRITE argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 READ argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv2 GETATTR argument decoder to use struct xdr_stream Chuck Lever NFSD: Update the MKNOD3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the SYMLINK3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the MKDIR3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the CREATE3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the SETATTR3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the LINK3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the RENAME3args decoder to use struct xdr_stream Chuck Lever NFSD: Update the NFSv3 DIROPargs decoder to use struct xdr_stream Chuck Lever NFSD: Update COMMIT3arg decoder to use struct xdr_stream Chuck Lever NFSD: Update READDIR3args decoders to use struct xdr_stream Chuck Lever NFSD: Add helper to set up the pages where the dirlist is encoded Chuck Lever NFSD: Fix returned READDIR offset cookie Chuck Lever NFSD: Update READLINK3arg decoder to use struct xdr_stream Chuck Lever NFSD: Update WRITE3arg decoder to use struct xdr_stream Chuck Lever NFSD: Update READ3arg decoder to use struct xdr_stream Chuck Lever NFSD: Update ACCESS3arg decoder to use struct xdr_stream Chuck Lever NFSD: Update GETATTR3args decoder to use struct xdr_stream Chuck Lever SUNRPC: Move definition of XDR_UNIT Chuck Lever SUNRPC: Display RPC procedure names instead of proc numbers Chuck Lever SUNRPC: Make trace_svc_process() display the RPC procedure symbolically Chuck Lever NFSD: Restore NFSv4 decoding's SAVEMEM functionality Chuck Lever NFSD: Fix sparse warning in nfssvc.c Zheng Yongjun fs/lockd: convert comma to semicolon Waiman Long inotify: Increase default inotify.max_user_watches limit to 1048576 Eric W. Biederman file: Replace ksys_close with close_fd Eric W. Biederman file: Rename __close_fd to close_fd and remove the files parameter Eric W. Biederman file: Merge __alloc_fd into alloc_fd Eric W. Biederman file: In f_dupfd read RLIMIT_NOFILE once. Eric W. Biederman file: Merge __fd_install into fd_install Eric W. Biederman proc/fd: In fdinfo seq_show don't use get_files_struct Eric W. Biederman proc/fd: In proc_readfd_common use task_lookup_next_fd_rcu Eric W. Biederman file: Implement task_lookup_next_fd_rcu Eric W. Biederman kcmp: In get_file_raw_ptr use task_lookup_fd_rcu Eric W. Biederman proc/fd: In tid_fd_mode use task_lookup_fd_rcu Eric W. Biederman file: Implement task_lookup_fd_rcu Eric W. Biederman file: Rename fcheck lookup_fd_rcu Eric W. Biederman file: Replace fcheck_files with files_lookup_fd_rcu Eric W. Biederman file: Factor files_lookup_fd_locked out of fcheck_files Eric W. Biederman file: Rename __fcheck_files to files_lookup_fd_raw Chuck Lever Revert "fget: clarify and improve __fget_files() implementation" Eric W. Biederman proc/fd: In proc_fd_link use fget_task Eric W. Biederman bpf: In bpf_task_fd_query use fget_task Eric W. Biederman kcmp: In kcmp_epoll_target use fget_task Eric W. Biederman exec: Remove reset_files_struct Eric W. Biederman exec: Simplify unshare_files Eric W. Biederman exec: Move unshare_files to fix posix file locking during exec Eric W. Biederman exec: Don't open code get_close_on_exec Trond Myklebust nfsd: Record NFSv4 pre/post-op attributes as non-atomic Trond Myklebust nfsd: Set PF_LOCAL_THROTTLE on local filesystems only Trond Myklebust nfsd: Fix up nfsd to ensure that timeout errors don't result in ESTALE Trond Myklebust exportfs: Add a function to return the raw output from fh_to_dentry() Jeff Layton nfsd: close cached files prior to a REMOVE or RENAME that would replace target Jeff Layton nfsd: allow filesystems to opt out of subtree checking Jeff Layton nfsd: add a new EXPORT_OP_NOWCC flag to struct export_operations J. Bruce Fields Revert "nfsd4: support change_attr_type attribute" J. Bruce Fields nfsd4: don't query change attribute in v2/v3 case J. Bruce Fields nfsd: minor nfsd4_change_attribute cleanup J. Bruce Fields nfsd: simplify nfsd4_change_info J. Bruce Fields nfsd: only call inode_query_iversion in the I_VERSION case Chuck Lever NFSD: Remove macros that are no longer used Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_compound() Chuck Lever NFSD: Make nfsd4_ops::opnum a u32 Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_listxattrs() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_setxattr() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_xattr_name() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_clone() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_seek() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_offload_status() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_copy_notify() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_copy() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_nl4_server() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_fallocate() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_reclaim_complete() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_destroy_clientid() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_test_stateid() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_sequence() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_secinfo_no_name() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_layoutreturn() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_layoutget() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_layoutcommit() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_getdeviceinfo() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_free_stateid() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_destroy_session() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_create_session() Chuck Lever NFSD: Add a helper to decode channel_attrs4 Chuck Lever NFSD: Add a helper to decode nfs_impl_id4 Chuck Lever NFSD: Add a helper to decode state_protect4_a Chuck Lever NFSD: Add a separate decoder for ssv_sp_parms Chuck Lever NFSD: Add a separate decoder to handle state_protect_ops Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_bind_conn_to_session() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_backchannel_ctl() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_cb_sec() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_release_lockowner() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_write() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_verify() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_setclientid_confirm() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_setclientid() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_setattr() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_secinfo() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_renew() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_rename() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_remove() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_readdir() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_read() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_putfh() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_open_downgrade() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_open_confirm() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_open() Chuck Lever NFSD: Add helper to decode OPEN's open_claim4 argument Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_share_deny() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_share_access() Chuck Lever NFSD: Add helper to decode OPEN's openflag4 argument Chuck Lever NFSD: Add helper to decode OPEN's createhow4 argument Chuck Lever NFSD: Add helper to decode NFSv4 verifiers Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_lookup() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_locku() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_lockt() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_lock() Chuck Lever NFSD: Add helper for decoding locker4 Chuck Lever NFSD: Add helpers to decode a clientid4 and an NFSv4 state owner Chuck Lever NFSD: Relocate nfsd4_decode_opaque() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_link() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_getattr() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_delegreturn() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_create() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_fattr() Chuck Lever NFSD: Replace READ* macros that decode the fattr4 umask attribute Chuck Lever NFSD: Replace READ* macros that decode the fattr4 security label attribute Chuck Lever NFSD: Replace READ* macros that decode the fattr4 time_set attributes Chuck Lever NFSD: Replace READ* macros that decode the fattr4 owner_group attribute Chuck Lever NFSD: Replace READ* macros that decode the fattr4 owner attribute Chuck Lever NFSD: Replace READ* macros that decode the fattr4 mode attribute Chuck Lever NFSD: Replace READ* macros that decode the fattr4 acl attribute Chuck Lever NFSD: Replace READ* macros that decode the fattr4 size attribute Chuck Lever NFSD: Change the way the expected length of a fattr4 is checked Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_commit() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_close() Chuck Lever NFSD: Replace READ* macros in nfsd4_decode_access() Chuck Lever NFSD: Replace the internals of the READ_BUF() macro Chuck Lever NFSD: Add tracepoints in nfsd4_decode/encode_compound() Chuck Lever NFSD: Add tracepoints in nfsd_dispatch() Chuck Lever NFSD: Add common helpers to decode void args and encode void results Chuck Lever SUNRPC: Prepare for xdr_stream-style decoding on the server-side Chuck Lever SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() Huang Guobin nfsd: Fix error return code in nfsd_file_cache_init() Chuck Lever NFSD: Add SPDX header for fs/nfsd/trace.c Chuck Lever NFSD: Remove extra "0x" in tracepoint format specifier Chuck Lever NFSD: Clean up the show_nf_may macro Alex Shi nfsd/nfs3: remove unused macro nfsd3_fhandleres Tom Rix NFSD: A semicolon is not needed after a switch statement. Chuck Lever NFSD: Invoke svc_encode_result_payload() in "read" NFSD encoders Chuck Lever SUNRPC: Rename svc_encode_read_payload() ------------- Diffstat: Documentation/filesystems/files.rst | 8 +- Documentation/filesystems/locking.rst | 10 +- Documentation/filesystems/nfs/exporting.rst | 78 + Makefile | 4 +- arch/powerpc/platforms/cell/spufs/coredump.c | 2 +- crypto/algboss.c | 4 +- fs/Kconfig | 6 +- fs/autofs/dev-ioctl.c | 5 +- fs/cachefiles/namei.c | 9 +- fs/cifs/connect.c | 2 +- fs/coredump.c | 5 +- fs/ecryptfs/inode.c | 10 +- fs/exec.c | 29 +- fs/exportfs/expfs.c | 40 +- fs/file.c | 177 +- fs/init.c | 6 +- fs/lockd/clnt4xdr.c | 9 +- fs/lockd/clntproc.c | 3 - fs/lockd/host.c | 4 +- fs/lockd/svc.c | 262 +- fs/lockd/svc4proc.c | 70 +- fs/lockd/svclock.c | 67 +- fs/lockd/svcproc.c | 62 +- fs/lockd/svcsubs.c | 123 +- fs/lockd/svcxdr.h | 142 + fs/lockd/xdr.c | 448 +-- fs/lockd/xdr4.c | 472 ++-- fs/locks.c | 102 +- fs/namei.c | 21 +- fs/nfs/blocklayout/blocklayout.c | 2 +- fs/nfs/blocklayout/dev.c | 2 +- fs/nfs/callback.c | 111 +- fs/nfs/callback_xdr.c | 33 +- fs/nfs/dir.c | 2 +- fs/nfs/export.c | 17 + fs/nfs/file.c | 3 + fs/nfs/filelayout/filelayout.c | 4 +- fs/nfs/filelayout/filelayoutdev.c | 2 +- fs/nfs/flexfilelayout/flexfilelayout.c | 4 +- fs/nfs/flexfilelayout/flexfilelayoutdev.c | 2 +- fs/nfs/nfs42xdr.c | 2 +- fs/nfs/nfs4state.c | 2 +- fs/nfs/nfs4xdr.c | 6 +- fs/nfs/pagelist.c | 3 - fs/nfs/super.c | 8 + fs/nfs/write.c | 3 - fs/nfs_common/Makefile | 2 +- fs/nfs_common/nfs_ssc.c | 2 - fs/nfs_common/nfsacl.c | 123 + fs/nfsd/Kconfig | 36 +- fs/nfsd/Makefile | 8 +- fs/nfsd/acl.h | 6 +- fs/nfsd/blocklayout.c | 1 + fs/nfsd/blocklayoutxdr.c | 1 + fs/nfsd/cache.h | 2 +- fs/nfsd/export.c | 74 +- fs/nfsd/export.h | 16 +- fs/nfsd/filecache.c | 1229 +++++---- fs/nfsd/filecache.h | 23 +- fs/nfsd/flexfilelayout.c | 3 +- fs/nfsd/lockd.c | 10 +- fs/nfsd/netns.h | 63 +- fs/nfsd/nfs2acl.c | 214 +- fs/nfsd/nfs3acl.c | 140 +- fs/nfsd/nfs3proc.c | 396 ++- fs/nfsd/nfs3xdr.c | 1763 ++++++------ fs/nfsd/nfs4acl.c | 45 +- fs/nfsd/nfs4callback.c | 168 +- fs/nfsd/nfs4idmap.c | 9 +- fs/nfsd/nfs4layouts.c | 4 +- fs/nfsd/nfs4proc.c | 1111 +++++--- fs/nfsd/nfs4recover.c | 20 +- fs/nfsd/nfs4state.c | 1725 ++++++++---- fs/nfsd/nfs4xdr.c | 3763 ++++++++++++++------------ fs/nfsd/nfscache.c | 115 +- fs/nfsd/nfsctl.c | 169 +- fs/nfsd/nfsd.h | 50 +- fs/nfsd/nfsfh.c | 291 +- fs/nfsd/nfsfh.h | 179 +- fs/nfsd/nfsproc.c | 262 +- fs/nfsd/nfssvc.c | 356 ++- fs/nfsd/nfsxdr.c | 834 +++--- fs/nfsd/state.h | 69 +- fs/nfsd/stats.c | 126 +- fs/nfsd/stats.h | 96 +- fs/nfsd/trace.c | 1 + fs/nfsd/trace.h | 894 +++++- fs/nfsd/vfs.c | 931 +++---- fs/nfsd/vfs.h | 60 +- fs/nfsd/xdr.h | 68 +- fs/nfsd/xdr3.h | 116 +- fs/nfsd/xdr4.h | 127 +- fs/nfsd/xdr4cb.h | 6 + fs/notify/dnotify/dnotify.c | 17 +- fs/notify/fanotify/fanotify.c | 487 +++- fs/notify/fanotify/fanotify.h | 252 +- fs/notify/fanotify/fanotify_user.c | 882 ++++-- fs/notify/fdinfo.c | 19 +- fs/notify/fsnotify.c | 183 +- fs/notify/fsnotify.h | 19 +- fs/notify/group.c | 38 +- fs/notify/inotify/inotify.h | 11 +- fs/notify/inotify/inotify_fsnotify.c | 12 +- fs/notify/inotify/inotify_user.c | 87 +- fs/notify/mark.c | 172 +- fs/notify/notification.c | 78 +- fs/open.c | 49 +- fs/overlayfs/overlayfs.h | 9 +- fs/proc/fd.c | 48 +- fs/udf/file.c | 2 +- fs/verity/enable.c | 2 +- include/linux/dnotify.h | 2 +- include/linux/errno.h | 1 + include/linux/exportfs.h | 15 + include/linux/fanotify.h | 74 +- include/linux/fdtable.h | 37 +- include/linux/fs.h | 54 +- include/linux/fsnotify.h | 77 +- include/linux/fsnotify_backend.h | 372 ++- include/linux/iversion.h | 13 + include/linux/kallsyms.h | 17 +- include/linux/kthread.h | 1 + include/linux/lockd/bind.h | 3 +- include/linux/lockd/lockd.h | 17 +- include/linux/lockd/xdr.h | 35 +- include/linux/lockd/xdr4.h | 33 +- include/linux/module.h | 24 +- include/linux/nfs.h | 8 - include/linux/nfs4.h | 21 +- include/linux/nfs_ssc.h | 14 + include/linux/nfsacl.h | 6 + include/linux/pid.h | 1 + include/linux/sched/user.h | 3 - include/linux/sunrpc/msg_prot.h | 3 - include/linux/sunrpc/svc.h | 151 +- include/linux/sunrpc/svc_rdma.h | 4 +- include/linux/sunrpc/svc_xprt.h | 16 +- include/linux/sunrpc/svcauth.h | 4 +- include/linux/sunrpc/svcsock.h | 7 +- include/linux/sunrpc/xdr.h | 153 +- include/linux/syscalls.h | 12 - include/linux/sysctl.h | 2 + include/linux/user_namespace.h | 4 + include/trace/events/sunrpc.h | 26 +- include/uapi/linux/fanotify.h | 42 + include/uapi/linux/nfs3.h | 6 + include/uapi/linux/nfsd/nfsfh.h | 105 - kernel/audit_fsnotify.c | 8 +- kernel/audit_tree.c | 2 +- kernel/audit_watch.c | 5 +- kernel/bpf/inode.c | 2 +- kernel/bpf/syscall.c | 20 +- kernel/bpf/task_iter.c | 2 +- kernel/fork.c | 12 +- kernel/kallsyms.c | 8 +- kernel/kcmp.c | 29 +- kernel/kthread.c | 23 +- kernel/livepatch/core.c | 7 +- kernel/module.c | 26 +- kernel/pid.c | 15 +- kernel/sys.c | 2 +- kernel/sysctl.c | 54 +- kernel/trace/trace_kprobe.c | 4 +- kernel/ucount.c | 4 + mm/madvise.c | 2 +- mm/memcontrol.c | 2 +- mm/mincore.c | 2 +- net/bluetooth/bnep/core.c | 2 +- net/bluetooth/cmtp/core.c | 2 +- net/bluetooth/hidp/core.c | 2 +- net/sunrpc/auth_gss/gss_rpc_xdr.c | 2 +- net/sunrpc/auth_gss/svcauth_gss.c | 47 +- net/sunrpc/sched.c | 1 + net/sunrpc/svc.c | 314 ++- net/sunrpc/svc_xprt.c | 104 +- net/sunrpc/svcauth.c | 8 +- net/sunrpc/svcauth_unix.c | 18 +- net/sunrpc/svcsock.c | 32 +- net/sunrpc/xdr.c | 112 +- net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 2 +- net/sunrpc/xprtrdma/svc_rdma_sendto.c | 32 +- net/sunrpc/xprtrdma/svc_rdma_transport.c | 2 +- net/unix/af_unix.c | 2 +- tools/objtool/check.c | 3 +- 184 files changed, 13912 insertions(+), 8825 deletions(-)