Merge tag 'dlm-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm

Pull dlm updates from David Teigland:

 - two fixes to the recent rcu lookup optimizations

 - a change allowing TCP to be configured with the first of multiple IP
   address

* tag 'dlm-6.15' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
  dlm: make tcp still work in multi-link env
  dlm: fix error if active rsb is not hashed
  dlm: fix error if inactive rsb is not hashed
  dlm: prevent NPD when writing a positive value to event_done
  dlm: increase max number of links for corosync3/knet
This commit is contained in:
Linus Torvalds
2025-03-27 13:04:31 -07:00
4 changed files with 6 additions and 4 deletions

View File

@@ -23,7 +23,7 @@ struct dlm_config_node {
extern const struct rhashtable_params dlm_rhash_rsb_params;
#define DLM_MAX_ADDR_COUNT 3
#define DLM_MAX_ADDR_COUNT 8
#define DLM_PROTO_TCP 0
#define DLM_PROTO_SCTP 1

View File

@@ -741,6 +741,7 @@ static int find_rsb_dir(struct dlm_ls *ls, const void *name, int len,
read_lock_bh(&ls->ls_rsbtbl_lock);
if (!rsb_flag(r, RSB_HASHED)) {
read_unlock_bh(&ls->ls_rsbtbl_lock);
error = -EBADR;
goto do_new;
}
@@ -784,6 +785,7 @@ static int find_rsb_dir(struct dlm_ls *ls, const void *name, int len,
}
} else {
write_unlock_bh(&ls->ls_rsbtbl_lock);
error = -EBADR;
goto do_new;
}

View File

@@ -576,7 +576,7 @@ static int new_lockspace(const char *name, const char *cluster,
lockspace to start running (via sysfs) in dlm_ls_start(). */
error = do_uevent(ls, 1);
if (error)
if (error < 0)
goto out_recoverd;
/* wait until recovery is successful or failed */

View File

@@ -1826,8 +1826,8 @@ static int dlm_tcp_listen_validate(void)
{
/* We don't support multi-homed hosts */
if (dlm_local_count > 1) {
log_print("TCP protocol can't handle multi-homed hosts, try SCTP");
return -EINVAL;
log_print("Detect multi-homed hosts but use only the first IP address.");
log_print("Try SCTP, if you want to enable multi-link.");
}
return 0;