Skip to content

Commit 265113f

Browse files
committed
Merge tag 'dlm-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm
Pull dlm updates from David Teigland: "This set includes a number of minor fixes and cleanups related to the networking changes in the last release. A patch to delay ack messages reduces network traffic significantly" * tag 'dlm-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm: fs: dlm: avoid comms shutdown delay in release_lockspace fs: dlm: fix return -EINTR on recovery stopped fs: dlm: implement delayed ack handling fs: dlm: move receive loop into receive handler fs: dlm: fix multiple empty writequeue alloc fs: dlm: generic connect func fs: dlm: auto load sctp module fs: dlm: introduce generic listen fs: dlm: move to static proto ops fs: dlm: introduce con_next_wq helper fs: dlm: cleanup and remove _send_rcom fs: dlm: clear CF_APP_LIMITED on close fs: dlm: fix typo in tlv prefix fs: dlm: use READ_ONCE for config var fs: dlm: use sk->sk_socket instead of con->sock
2 parents b0cfcdd + ecd9567 commit 265113f

9 files changed

Lines changed: 458 additions & 415 deletions

File tree

fs/dlm/dir.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,10 @@ int dlm_recover_directory(struct dlm_ls *ls)
8585
for (;;) {
8686
int left;
8787
error = dlm_recovery_stopped(ls);
88-
if (error)
88+
if (error) {
89+
error = -EINTR;
8990
goto out_free;
91+
}
9092

9193
error = dlm_rcom_names(ls, memb->nodeid,
9294
last_name, last_len);

fs/dlm/dlm_internal.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ struct dlm_rcom {
468468
struct dlm_opt_header {
469469
uint16_t t_type;
470470
uint16_t t_length;
471-
uint32_t o_pad;
471+
uint32_t t_pad;
472472
/* need to be 8 byte aligned */
473473
char t_value[];
474474
};

fs/dlm/lockspace.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -498,7 +498,7 @@ static int new_lockspace(const char *name, const char *cluster,
498498
ls->ls_exflags = (flags & ~(DLM_LSFL_TIMEWARN | DLM_LSFL_FS |
499499
DLM_LSFL_NEWEXCL));
500500

501-
size = dlm_config.ci_rsbtbl_size;
501+
size = READ_ONCE(dlm_config.ci_rsbtbl_size);
502502
ls->ls_rsbtbl_size = size;
503503

504504
ls->ls_rsbtbl = vmalloc(array_size(size, sizeof(struct dlm_rsbtable)));
@@ -793,6 +793,7 @@ static int release_lockspace(struct dlm_ls *ls, int force)
793793

794794
if (ls_count == 1) {
795795
dlm_scand_stop();
796+
dlm_clear_members(ls);
796797
dlm_midcomms_shutdown();
797798
}
798799

0 commit comments

Comments
 (0)