Re: [PATCH 00/12 v5] locks: avoid thundering-herd wake-ups

From: Jeff Layton
Date: Tue Nov 13 2018 - 05:43:24 EST


On Mon, 2018-11-12 at 12:14 +1100, NeilBrown wrote:
> Changes:
> - field names improved as requested by Bruce.
> "fl_blocked_requests" is a list of blocked requests,
> linked through fl_block_member
> - the introductory text has been moved to a commit comment
> as suggested by Bruce
> - documentation added to locks.c as suggested by Bruce - I made
> a few little changes
> - flock_make_lock() now properly initialized a lock - using
> the code from Jeff
> - code actually compiles for ocfs2 and gfs2
>
> Thanks,
> NeilBrown
>
>
> ---
>
> NeilBrown (12):
> fs/locks: rename some lists and pointers.
> fs/locks: split out __locks_wake_up_blocks().
> NFS: use locks_copy_lock() to copy locks.
> gfs2: properly initial file_lock used for unlock.
> ocfs2: properly initial file_lock used for unlock.
> locks: use properly initialized file_lock when unlocking.
> fs/locks: allow a lock request to block other requests.
> fs/locks: always delete_block after waiting.
> fs/locks: change all *_conflict() functions to return bool.
> fs/locks: create a tree of dependent requests.
> locks: merge posix_unblock_lock() and locks_delete_block()
> VFS: locks: remove unnecessary white space.
>
>
> fs/cifs/file.c | 4
> fs/gfs2/file.c | 10 +
> fs/lockd/svclock.c | 2
> fs/locks.c | 319 ++++++++++++++++++++++++---------------
> fs/nfs/nfs4proc.c | 6 -
> fs/nfsd/nfs4state.c | 6 -
> fs/ocfs2/locks.c | 10 +
> include/linux/fs.h | 13 +-
> include/trace/events/filelock.h | 16 +-
> 9 files changed, 230 insertions(+), 156 deletions(-)
>
> --
> Signature
>

Thanks Neil,

I'll pull this into locks-next. I also went ahead and fixed up the
comment that Bruce pointed out.
--
Jeff Layton <jlayton@xxxxxxxxxx>