[Cluster-devel] [PATCHv2 dlm-next 00/13] fs: dlm: miscs and msgs processing changes

Alexander Aring <[email protected]>
Newsgroups com.redhat.cluster-devel
Message-ID <[email protected]>
Hi,

this patch fixes some missing spin_unlock() that was missing in commit
dc52cd2eff4a ("fs: dlm: fix F_CANCELLK to cancel pending request").
Otherwise this patch series contains:

- introduce a new debugfs entry to dump all pending callbacks in the per
  lkb callbacks queue.
- add plock char dev kernel tracepoints for debugging
- change things in parsing/processing dlm messages like only once
  dereferencing the sequence number of dlm recovery and avoid an additional
  spinlock later
- constify the dlm receive buffer, it should never be manipulated when
  parsing it.
- small change in version detection to not use RCOM_NAMES messages
- change to create midcomms node when configfs gets the cluster
  configuration

I try to prepare to switch the message processing from workqueue
context to softirq context. The patch "fs: dlm: create midcomms nodes
when configure" will remove creating midcomms nodes that create debugfs
entries from the message parsing context. The context for creating debugfs
entries is sleepable. The lifetime of a midcomms node is now similar like
lowcomms connection struct. Later we hopefully can merge the two hash
datastructures midcomms nodes and lowcomms connections into one.

- Alex

changes since v2:

- add a cover-letter
- fix a deadlock case in "fs: dlm: create midcomms nodes when configure"

Alexander Aring (13):
  fs: dlm: add missing spin_unlock
  fs: dlm: remove unused processed_nodes
  fs: dlm: debugfs for queued callbacks
  fs: dlm: check on plock ops when exit dlm
  fs: dlm: add plock dev tracepoints
  fs: dlm: remove clear_members_cb
  fs: dlm: cleanup lock order
  fs: dlm: get recovery sequence number as parameter
  fs: dlm: drop rxbuf manipulation in dlm_copy_master_names
  fs: dlm: drop rxbuf manipulation in dlm_recover_master_copy
  fs: dlm: constify receive buffer
  fs: dlm: create midcomms nodes when configure
  fs: dlm: don't use RCOM_NAMES for version detection

 fs/dlm/config.c            |   2 +-
 fs/dlm/debug_fs.c          | 101 +++++++++++-
 fs/dlm/dir.c               |  14 +-
 fs/dlm/dir.h               |   6 +-
 fs/dlm/dlm_internal.h      |   1 +
 fs/dlm/lock.c              | 120 ++++++++-------
 fs/dlm/lock.h              |  16 +-
 fs/dlm/lowcomms.c          |   1 -
 fs/dlm/member.c            |  15 +-
 fs/dlm/member.h            |   2 +-
 fs/dlm/midcomms.c          | 304 ++++++++++++++-----------------------
 fs/dlm/midcomms.h          |   1 +
 fs/dlm/plock.c             |   9 ++
 fs/dlm/rcom.c              | 102 +++++++------
 fs/dlm/rcom.h              |  15 +-
 fs/dlm/recover.c           |  60 ++++----
 fs/dlm/recover.h           |  14 +-
 fs/dlm/recoverd.c          |  16 +-
 fs/dlm/requestqueue.c      |   3 +-
 fs/dlm/requestqueue.h      |   3 +-
 include/trace/events/dlm.h |  51 +++++++
 21 files changed, 489 insertions(+), 367 deletions(-)

-- 
2.31.1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.