linux/fs/dlm
Alexander Aring c288745f1d dlm: avoid blocking receive at the end of recovery
The end of the recovery process transitioned to normal message
processing by temporarily blocking the receiving context,
processing saved messages, then unblocking the receiving
context.  To avoid blocking the receiving context, the old
wait_queue and mutex are replaced by a new rwlock and the new
RECV_MSG_BLOCKED flag.  Received messages are added to the
list of saved messages, protected by the rwlock, until the
flag is cleared, which happens when all saved messages have
been processed.

Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
2024-04-09 11:44:49 -05:00
..
ast.c dlm: remove callback reference counting 2024-04-01 13:31:13 -05:00
ast.h dlm: remove callback reference counting 2024-04-01 13:31:13 -05:00
config.c fs: dlm: create midcomms nodes when configure 2023-08-10 10:33:03 -05:00
config.h fs: dlm: remove deprecated code parts 2023-03-06 15:49:07 -06:00
debug_fs.c dlm: convert ls_waiters_mutex to spinlock 2024-04-09 11:44:49 -05:00
dir.c dlm: add new struct to save position in dlm_copy_master_names 2024-04-09 11:44:49 -05:00
dir.h dlm: move rsb root_list to ls_recover() stack 2024-04-09 11:44:49 -05:00
dlm_internal.h dlm: avoid blocking receive at the end of recovery 2024-04-09 11:44:49 -05:00
Kconfig fs: dlm: remove deprecated code parts 2023-03-06 15:49:07 -06:00
lock.c dlm: avoid blocking receive at the end of recovery 2024-04-09 11:44:49 -05:00
lock.h dlm: convert res_lock to spinlock 2024-04-09 11:44:49 -05:00
lockspace.c dlm: avoid blocking receive at the end of recovery 2024-04-09 11:44:49 -05:00
lockspace.h fs: dlm: revert check required context while close 2023-06-14 10:17:33 -05:00
lowcomms.c dlm: remove allocation parameter in msg allocation 2024-04-09 09:58:14 -05:00
lowcomms.h dlm: remove allocation parameter in msg allocation 2024-04-09 09:58:14 -05:00
lvb_table.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 193 2019-05-30 11:29:21 -07:00
main.c fs: dlm: unregister memory at the very last 2023-06-14 10:17:33 -05:00
Makefile fs: dlm: remove deprecated code parts 2023-03-06 15:49:07 -06:00
member.c dlm: avoid blocking receive at the end of recovery 2024-04-09 11:44:49 -05:00
member.h fs: dlm: constify receive buffer 2023-08-10 10:33:03 -05:00
memory.c dlm: switch to GFP_ATOMIC in dlm allocations 2024-04-09 11:43:49 -05:00
memory.h dlm: remove allocation parameter in msg allocation 2024-04-09 09:58:14 -05:00
midcomms.c dlm: remove allocation parameter in msg allocation 2024-04-09 09:58:14 -05:00
midcomms.h dlm: remove allocation parameter in msg allocation 2024-04-09 09:58:14 -05:00
plock.c dlm: adapt to breakup of struct file_lock 2024-02-05 13:11:42 +01:00
rcom.c dlm: remove allocation parameter in msg allocation 2024-04-09 09:58:14 -05:00
rcom.h fs: dlm: constify receive buffer 2023-08-10 10:33:03 -05:00
recover.c dlm: move rsb root_list to ls_recover() stack 2024-04-09 11:44:49 -05:00
recover.h dlm: move rsb root_list to ls_recover() stack 2024-04-09 11:44:49 -05:00
recoverd.c dlm: add new struct to save position in dlm_copy_master_names 2024-04-09 11:44:49 -05:00
recoverd.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 193 2019-05-30 11:29:21 -07:00
requestqueue.c dlm: avoid blocking receive at the end of recovery 2024-04-09 11:44:49 -05:00
requestqueue.h fs: dlm: constify receive buffer 2023-08-10 10:33:03 -05:00
user.c dlm: remove callback reference counting 2024-04-01 13:31:13 -05:00
user.h fs: dlm: move dlm_purge_lkb_callbacks to user module 2023-06-14 10:17:33 -05:00
util.c dlm: use __le types for dlm messages 2022-04-06 14:02:37 -05:00
util.h dlm: use __le types for dlm messages 2022-04-06 14:02:37 -05:00