+++ /dev/null
-From 71f0d42274ce9c8e45691969889cdd3b8b2663d2 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Fri, 21 May 2021 15:08:45 -0400
-Subject: fs: dlm: add union in dlm header for lockspace id
-
-From: Alexander Aring <aahringo@redhat.com>
-
-[ Upstream commit 8e2e40860c7f67c0b19b13d92cfea03a19232ce2 ]
-
-This patch adds union inside the lockspace id to handle it also for
-another use case for a different dlm command.
-
-Signed-off-by: Alexander Aring <aahringo@redhat.com>
-Signed-off-by: David Teigland <teigland@redhat.com>
-Stable-dep-of: aad633dc0cf9 ("fs: dlm: start midcomms before scand")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- fs/dlm/dlm_internal.h | 5 ++++-
- fs/dlm/lock.c | 8 ++++----
- fs/dlm/rcom.c | 4 ++--
- fs/dlm/util.c | 6 ++++--
- 4 files changed, 14 insertions(+), 9 deletions(-)
-
-diff --git a/fs/dlm/dlm_internal.h b/fs/dlm/dlm_internal.h
-index cb287df13a7aa..0418fd4e316f7 100644
---- a/fs/dlm/dlm_internal.h
-+++ b/fs/dlm/dlm_internal.h
-@@ -379,7 +379,10 @@ static inline int rsb_flag(struct dlm_rsb *r, enum rsb_flags flag)
-
- struct dlm_header {
- uint32_t h_version;
-- uint32_t h_lockspace;
-+ union {
-+ /* for DLM_MSG and DLM_RCOM */
-+ uint32_t h_lockspace;
-+ } u;
- uint32_t h_nodeid; /* nodeid of sender */
- uint16_t h_length;
- uint8_t h_cmd; /* DLM_MSG, DLM_RCOM */
-diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c
-index d4e204473e76b..0e2a92b1829e5 100644
---- a/fs/dlm/lock.c
-+++ b/fs/dlm/lock.c
-@@ -3550,7 +3550,7 @@ static int _create_message(struct dlm_ls *ls, int mb_len,
- ms = (struct dlm_message *) mb;
-
- ms->m_header.h_version = (DLM_HEADER_MAJOR | DLM_HEADER_MINOR);
-- ms->m_header.h_lockspace = ls->ls_global_id;
-+ ms->m_header.u.h_lockspace = ls->ls_global_id;
- ms->m_header.h_nodeid = dlm_our_nodeid();
- ms->m_header.h_length = mb_len;
- ms->m_header.h_cmd = DLM_MSG;
-@@ -5054,16 +5054,16 @@ void dlm_receive_buffer(union dlm_packet *p, int nodeid)
-
- if (hd->h_nodeid != nodeid) {
- log_print("invalid h_nodeid %d from %d lockspace %x",
-- hd->h_nodeid, nodeid, hd->h_lockspace);
-+ hd->h_nodeid, nodeid, hd->u.h_lockspace);
- return;
- }
-
-- ls = dlm_find_lockspace_global(hd->h_lockspace);
-+ ls = dlm_find_lockspace_global(hd->u.h_lockspace);
- if (!ls) {
- if (dlm_config.ci_log_debug) {
- printk_ratelimited(KERN_DEBUG "dlm: invalid lockspace "
- "%u from %d cmd %d type %d\n",
-- hd->h_lockspace, nodeid, hd->h_cmd, type);
-+ hd->u.h_lockspace, nodeid, hd->h_cmd, type);
- }
-
- if (hd->h_cmd == DLM_RCOM && type == DLM_RCOM_STATUS)
-diff --git a/fs/dlm/rcom.c b/fs/dlm/rcom.c
-index 70c625999d368..b3fb808df1d4b 100644
---- a/fs/dlm/rcom.c
-+++ b/fs/dlm/rcom.c
-@@ -48,7 +48,7 @@ static int create_rcom(struct dlm_ls *ls, int to_nodeid, int type, int len,
- rc = (struct dlm_rcom *) mb;
-
- rc->rc_header.h_version = (DLM_HEADER_MAJOR | DLM_HEADER_MINOR);
-- rc->rc_header.h_lockspace = ls->ls_global_id;
-+ rc->rc_header.u.h_lockspace = ls->ls_global_id;
- rc->rc_header.h_nodeid = dlm_our_nodeid();
- rc->rc_header.h_length = mb_len;
- rc->rc_header.h_cmd = DLM_RCOM;
-@@ -469,7 +469,7 @@ int dlm_send_ls_not_ready(int nodeid, struct dlm_rcom *rc_in)
- rc = (struct dlm_rcom *) mb;
-
- rc->rc_header.h_version = (DLM_HEADER_MAJOR | DLM_HEADER_MINOR);
-- rc->rc_header.h_lockspace = rc_in->rc_header.h_lockspace;
-+ rc->rc_header.u.h_lockspace = rc_in->rc_header.u.h_lockspace;
- rc->rc_header.h_nodeid = dlm_our_nodeid();
- rc->rc_header.h_length = mb_len;
- rc->rc_header.h_cmd = DLM_RCOM;
-diff --git a/fs/dlm/util.c b/fs/dlm/util.c
-index af9d9cbb8ff47..be773e539599d 100644
---- a/fs/dlm/util.c
-+++ b/fs/dlm/util.c
-@@ -25,7 +25,8 @@
- void header_out(struct dlm_header *hd)
- {
- hd->h_version = cpu_to_le32(hd->h_version);
-- hd->h_lockspace = cpu_to_le32(hd->h_lockspace);
-+ /* does it for others u32 in union as well */
-+ hd->u.h_lockspace = cpu_to_le32(hd->u.h_lockspace);
- hd->h_nodeid = cpu_to_le32(hd->h_nodeid);
- hd->h_length = cpu_to_le16(hd->h_length);
- }
-@@ -33,7 +34,8 @@ void header_out(struct dlm_header *hd)
- void header_in(struct dlm_header *hd)
- {
- hd->h_version = le32_to_cpu(hd->h_version);
-- hd->h_lockspace = le32_to_cpu(hd->h_lockspace);
-+ /* does it for others u32 in union as well */
-+ hd->u.h_lockspace = le32_to_cpu(hd->u.h_lockspace);
- hd->h_nodeid = le32_to_cpu(hd->h_nodeid);
- hd->h_length = le16_to_cpu(hd->h_length);
- }
---
-2.39.2
-
+++ /dev/null
-From b569fecd69ead40b00737c8f53506aef842d01ff Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Thu, 27 Oct 2022 16:45:26 -0400
-Subject: fs: dlm: fix log of lowcomms vs midcomms
-
-From: Alexander Aring <aahringo@redhat.com>
-
-[ Upstream commit 3e54c9e80e68b765d8877023d93f1eea1b9d1c54 ]
-
-This patch will fix a small issue when printing out that
-dlm_midcomms_start() failed to start and it was printing out that the
-dlm subcomponent lowcomms was failed but lowcomms is behind the midcomms
-layer.
-
-Signed-off-by: Alexander Aring <aahringo@redhat.com>
-Signed-off-by: David Teigland <teigland@redhat.com>
-Stable-dep-of: aad633dc0cf9 ("fs: dlm: start midcomms before scand")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- fs/dlm/lockspace.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/fs/dlm/lockspace.c b/fs/dlm/lockspace.c
-index 244b87e4dfe7f..7cb72aa84bb01 100644
---- a/fs/dlm/lockspace.c
-+++ b/fs/dlm/lockspace.c
-@@ -403,7 +403,7 @@ static int threads_start(void)
- /* Thread for sending/receiving messages for all lockspace's */
- error = dlm_lowcomms_start();
- if (error) {
-- log_print("cannot start dlm lowcomms %d", error);
-+ log_print("cannot start dlm midcomms %d", error);
- goto scand_fail;
- }
-
---
-2.39.2
-
+++ /dev/null
-From d75e83d4553e024af51f76454be634136b23e8b9 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Fri, 21 May 2021 15:08:40 -0400
-Subject: fs: dlm: public header in out utility
-
-From: Alexander Aring <aahringo@redhat.com>
-
-[ Upstream commit 6fb5cf9d4206f2cdccb05be1bf2307dab4e5babe ]
-
-This patch allows to use header_out() and header_in() outside of dlm
-util functionality.
-
-Signed-off-by: Alexander Aring <aahringo@redhat.com>
-Signed-off-by: David Teigland <teigland@redhat.com>
-Stable-dep-of: aad633dc0cf9 ("fs: dlm: start midcomms before scand")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- fs/dlm/util.c | 4 ++--
- fs/dlm/util.h | 2 ++
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/fs/dlm/util.c b/fs/dlm/util.c
-index e36520af7cc0e..af9d9cbb8ff47 100644
---- a/fs/dlm/util.c
-+++ b/fs/dlm/util.c
-@@ -22,7 +22,7 @@
- #define DLM_ERRNO_ETIMEDOUT 110
- #define DLM_ERRNO_EINPROGRESS 115
-
--static void header_out(struct dlm_header *hd)
-+void header_out(struct dlm_header *hd)
- {
- hd->h_version = cpu_to_le32(hd->h_version);
- hd->h_lockspace = cpu_to_le32(hd->h_lockspace);
-@@ -30,7 +30,7 @@ static void header_out(struct dlm_header *hd)
- hd->h_length = cpu_to_le16(hd->h_length);
- }
-
--static void header_in(struct dlm_header *hd)
-+void header_in(struct dlm_header *hd)
- {
- hd->h_version = le32_to_cpu(hd->h_version);
- hd->h_lockspace = le32_to_cpu(hd->h_lockspace);
-diff --git a/fs/dlm/util.h b/fs/dlm/util.h
-index 2b25915161c02..c805a916b29f5 100644
---- a/fs/dlm/util.h
-+++ b/fs/dlm/util.h
-@@ -17,6 +17,8 @@ void dlm_message_out(struct dlm_message *ms);
- void dlm_message_in(struct dlm_message *ms);
- void dlm_rcom_out(struct dlm_rcom *rc);
- void dlm_rcom_in(struct dlm_rcom *rc);
-+void header_out(struct dlm_header *hd);
-+void header_in(struct dlm_header *hd);
-
- #endif
-
---
-2.39.2
-