[GIT PULL] dlm updates for 6.2

From: David Teigland
Date: Mon Dec 12 2022 - 12:44:48 EST


Hi Linus,

Please pull dlm updates from tag:

git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm.git dlm-6.2

These patches include the usual cleanups and minor fixes, removal of code
that is no longer needed due to recent improvements, and improvements to
processing large volumes of messages during heavy locking activity.

- Misc code cleanup.

- Fix a couple socket handling bugs: a double release on an error path
and a data-ready race in an accept loop.

- Remove code for resending dir-remove messages. This code is no longer
needed since the midcomms layer now ensures the messages are resent if
needed.

- Add tracepoints for dlm messages.

- Improve callback queueing by replacing the fixed array with a list.

- Simplify the handling of a remove message followed by a lookup
message by sending both without releasing a spinlock in between.

- Improve the concurrency of sending and receiving messages by holding
locks for a shorter time, and changing how workqueues are used.

- Remove old code for shutting down sockets, which is no longer needed
with the reliable connection handling that was recently added.

Thanks,
Dave

Alexander Aring (36):
fs: dlm: fix sock release if listen fails
fs: dlm: retry accept() until -EAGAIN or error returns
fs: dlm: remove send repeat remove handling
fs: dlm: use packet in dlm_mhandle
fd: dlm: trace send/recv of dlm message and rcom
fs: dlm: let dlm_add_cb queue work after resume only
fs: dlm: use list_first_entry marco
fs: dlm: convert ls_cb_mutex mutex to spinlock
fs: dlm: use spin lock instead of mutex
fs: dlm: move last cast bast time to function call
fs: dlm: use a non-static queue for callbacks
fs: dlm: allow different allocation context per _create_message
fs: dlm: remove ls_remove_wait waitqueue
fs: dlm: relax sending to allow receiving
fs: dlm: catch dlm_add_member() error
fs: dlm: fix log of lowcomms vs midcomms
fs: dlm: use WARN_ON_ONCE() instead of WARN_ON()
fs: dlm: avoid false-positive checker warning
fs: dlm: drop lkb ref in bug case
fs: dlm: ast do WARN_ON_ONCE() on hotpath
fs: dlm: rename DLM_IFL_NEED_SCHED to DLM_IFL_CB_PENDING
fs: dlm: rename seq to h_seq for msg tracing
fs: dlm: add dst nodeid for msg tracing
fs: dlm: add midcomms init/start functions
fs: dlm: remove twice INIT_WORK
fs: dlm: use list_first_entry_or_null
fs: dlm: use listen sock as dlm running indicator
fs: dlm: remove socket shutdown handling
fs: dlm: cleanup listen sock handling
fs: dlm: don't put dlm_local_addrs on heap
fs: dlm: remove dlm_node_addrs lookup list
fs: dlm: use sock2con without checking null
fs: dlm: use saved sk_error_report()
fs: dlm: don't init error value
fs: dlm: parallelize lowcomms socket handling
fs: dlm: fix building without lockdep

Paulo Miguel Almeida (1):
dlm: replace one-element array with fixed size array


fs/dlm/ast.c | 322 ++++------
fs/dlm/ast.h | 17 +-
fs/dlm/config.c | 4 +-
fs/dlm/debug_fs.c | 2 +-
fs/dlm/dlm_internal.h | 25 +-
fs/dlm/lock.c | 190 ++----
fs/dlm/lockspace.c | 14 +-
fs/dlm/lowcomms.c | 1538 +++++++++++++++++++++-----------------------
fs/dlm/lowcomms.h | 6 +-
fs/dlm/main.c | 7 +-
fs/dlm/member.c | 5 +-
fs/dlm/memory.c | 30 +-
fs/dlm/memory.h | 4 +-
fs/dlm/midcomms.c | 141 +++-
fs/dlm/midcomms.h | 7 +-
fs/dlm/rcom.c | 4 +-
fs/dlm/requestqueue.c | 3 +-
fs/dlm/user.c | 74 ++-
fs/dlm/user.h | 2 +-
include/trace/events/dlm.h | 303 +++++++++
20 files changed, 1455 insertions(+), 1243 deletions(-)