[GIT PULL] file locking changes for v6.2-rc1

From: Jeff Layton
Date: Tue Dec 06 2022 - 08:12:45 EST


The following changes since commit 094226ad94f471a9f19e8f8e7140a09c2625abaa:

Linux 6.1-rc5 (2022-11-13 13:12:55 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux.git tags/locks-v6.2

for you to fetch changes up to f2f2494c8aa3cc317572c4674ef256005ebc092b:

Add process name and pid to locks warning (2022-11-30 05:08:10 -0500)

----------------------------------------------------------------
The main change here is to add the new locks_inode_context helper, and
convert all of the places that dereference inode->i_flctx directly to
use that instead.

There a new helper to indicate whether any locks are held on an inode.
This is mostly for Ceph but may be usable elsewhere too.

Andi Kleen requested that we print the PID when the LOCK_MAND warning
fires, to help track down applications trying to use it.

Finally, we added some new warnings to some of the file locking
functions that fire when the ->fl_file and filp arguments differ. This
helped us find some long-standing bugs in lockd. Patches for those are
in Chuck Lever's tree and should be in his v6.2 PR. After that patch,
people using NFSv2/v3 locking may see some warnings fire until those go
in.

Happy Holidays!
----------------------------------------------------------------
Andi Kleen (1):
Add process name and pid to locks warning

Jeff Layton (9):
filelock: WARN_ON_ONCE when ->fl_file and filp don't match
filelock: new helper: vfs_inode_has_locks
filelock: add a new locks_inode_context accessor function
ceph: use locks_inode_context helper
cifs: use locks_inode_context helper
ksmbd: use locks_inode_context helper
lockd: use locks_inode_context helper
nfs: use locks_inode_context helper
nfsd: use locks_inode_context helper

fs/ceph/locks.c | 4 ++--
fs/cifs/file.c | 2 +-
fs/ksmbd/vfs.c | 2 +-
fs/lockd/svcsubs.c | 4 ++--
fs/locks.c | 50 ++++++++++++++++++++++++++++++++++++++------------
fs/nfs/delegation.c | 2 +-
fs/nfs/nfs4state.c | 2 +-
fs/nfs/pagelist.c | 2 +-
fs/nfs/write.c | 4 ++--
fs/nfsd/nfs4state.c | 6 +++---
include/linux/fs.h | 20 ++++++++++++++++++++
11 files changed, 72 insertions(+), 26 deletions(-)

--
Jeff Layton <jlayton@xxxxxxxxxx>

Attachment: signature.asc
Description: This is a digitally signed message part