mirror of
https://github.com/armbian/linux-cix.git
synced 2026-01-06 12:30:45 -08:00
dlm: use __le types for dlm messages
This patch changes to use __le types directly in the dlm message structure which is casted at the right dlm message buffer positions. The main goal what is reached here is to remove sparse warnings regarding to host to little byte order conversion or vice versa. Leaving those sparse issues ignored and always do it in out/in functionality tends to leave it unknown in which byte order the variable is being handled. Signed-off-by: Alexander Aring <aahringo@redhat.com> Signed-off-by: David Teigland <teigland@redhat.com>
This commit is contained in:
committed by
David Teigland
parent
2f9dbeda8d
commit
00e99ccde7
@@ -409,24 +409,24 @@ struct dlm_header {
|
||||
|
||||
struct dlm_message {
|
||||
struct dlm_header m_header;
|
||||
uint32_t m_type; /* DLM_MSG_ */
|
||||
uint32_t m_nodeid;
|
||||
uint32_t m_pid;
|
||||
uint32_t m_lkid; /* lkid on sender */
|
||||
uint32_t m_remid; /* lkid on receiver */
|
||||
uint32_t m_parent_lkid;
|
||||
uint32_t m_parent_remid;
|
||||
uint32_t m_exflags;
|
||||
uint32_t m_sbflags;
|
||||
uint32_t m_flags;
|
||||
uint32_t m_lvbseq;
|
||||
uint32_t m_hash;
|
||||
int m_status;
|
||||
int m_grmode;
|
||||
int m_rqmode;
|
||||
int m_bastmode;
|
||||
int m_asts;
|
||||
int m_result; /* 0 or -EXXX */
|
||||
__le32 m_type; /* DLM_MSG_ */
|
||||
__le32 m_nodeid;
|
||||
__le32 m_pid;
|
||||
__le32 m_lkid; /* lkid on sender */
|
||||
__le32 m_remid; /* lkid on receiver */
|
||||
__le32 m_parent_lkid;
|
||||
__le32 m_parent_remid;
|
||||
__le32 m_exflags;
|
||||
__le32 m_sbflags;
|
||||
__le32 m_flags;
|
||||
__le32 m_lvbseq;
|
||||
__le32 m_hash;
|
||||
__le32 m_status;
|
||||
__le32 m_grmode;
|
||||
__le32 m_rqmode;
|
||||
__le32 m_bastmode;
|
||||
__le32 m_asts;
|
||||
__le32 m_result; /* 0 or -EXXX */
|
||||
char m_extra[]; /* name or lvb */
|
||||
};
|
||||
|
||||
|
||||
276
fs/dlm/lock.c
276
fs/dlm/lock.c
File diff suppressed because it is too large
Load Diff
@@ -14,6 +14,7 @@
|
||||
#include "dir.h"
|
||||
#include "config.h"
|
||||
#include "requestqueue.h"
|
||||
#include "util.h"
|
||||
|
||||
struct rq_entry {
|
||||
struct list_head list;
|
||||
@@ -83,8 +84,10 @@ int dlm_process_requestqueue(struct dlm_ls *ls)
|
||||
|
||||
log_limit(ls, "dlm_process_requestqueue msg %d from %d "
|
||||
"lkid %x remid %x result %d seq %u",
|
||||
ms->m_type, le32_to_cpu(ms->m_header.h_nodeid),
|
||||
ms->m_lkid, ms->m_remid, ms->m_result,
|
||||
le32_to_cpu(ms->m_type),
|
||||
le32_to_cpu(ms->m_header.h_nodeid),
|
||||
le32_to_cpu(ms->m_lkid), le32_to_cpu(ms->m_remid),
|
||||
from_dlm_errno(le32_to_cpu(ms->m_result)),
|
||||
e->recover_seq);
|
||||
|
||||
dlm_receive_message_saved(ls, &e->request, e->recover_seq);
|
||||
@@ -125,7 +128,7 @@ void dlm_wait_requestqueue(struct dlm_ls *ls)
|
||||
|
||||
static int purge_request(struct dlm_ls *ls, struct dlm_message *ms, int nodeid)
|
||||
{
|
||||
uint32_t type = ms->m_type;
|
||||
__le32 type = ms->m_type;
|
||||
|
||||
/* the ls is being cleaned up and freed by release_lockspace */
|
||||
if (!atomic_read(&ls->ls_count))
|
||||
@@ -137,9 +140,9 @@ static int purge_request(struct dlm_ls *ls, struct dlm_message *ms, int nodeid)
|
||||
/* directory operations are always purged because the directory is
|
||||
always rebuilt during recovery and the lookups resent */
|
||||
|
||||
if (type == DLM_MSG_REMOVE ||
|
||||
type == DLM_MSG_LOOKUP ||
|
||||
type == DLM_MSG_LOOKUP_REPLY)
|
||||
if (type == cpu_to_le32(DLM_MSG_REMOVE) ||
|
||||
type == cpu_to_le32(DLM_MSG_LOOKUP) ||
|
||||
type == cpu_to_le32(DLM_MSG_LOOKUP_REPLY))
|
||||
return 1;
|
||||
|
||||
if (!dlm_no_directory(ls))
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
/* higher errno values are inconsistent across architectures, so select
|
||||
one set of values for on the wire */
|
||||
|
||||
static int to_dlm_errno(int err)
|
||||
int to_dlm_errno(int err)
|
||||
{
|
||||
switch (err) {
|
||||
case -EDEADLK:
|
||||
@@ -44,7 +44,7 @@ static int to_dlm_errno(int err)
|
||||
return err;
|
||||
}
|
||||
|
||||
static int from_dlm_errno(int err)
|
||||
int from_dlm_errno(int err)
|
||||
{
|
||||
switch (err) {
|
||||
case -DLM_ERRNO_EDEADLK:
|
||||
@@ -64,47 +64,3 @@ static int from_dlm_errno(int err)
|
||||
}
|
||||
return err;
|
||||
}
|
||||
|
||||
void dlm_message_out(struct dlm_message *ms)
|
||||
{
|
||||
ms->m_type = cpu_to_le32(ms->m_type);
|
||||
ms->m_nodeid = cpu_to_le32(ms->m_nodeid);
|
||||
ms->m_pid = cpu_to_le32(ms->m_pid);
|
||||
ms->m_lkid = cpu_to_le32(ms->m_lkid);
|
||||
ms->m_remid = cpu_to_le32(ms->m_remid);
|
||||
ms->m_parent_lkid = cpu_to_le32(ms->m_parent_lkid);
|
||||
ms->m_parent_remid = cpu_to_le32(ms->m_parent_remid);
|
||||
ms->m_exflags = cpu_to_le32(ms->m_exflags);
|
||||
ms->m_sbflags = cpu_to_le32(ms->m_sbflags);
|
||||
ms->m_flags = cpu_to_le32(ms->m_flags);
|
||||
ms->m_lvbseq = cpu_to_le32(ms->m_lvbseq);
|
||||
ms->m_hash = cpu_to_le32(ms->m_hash);
|
||||
ms->m_status = cpu_to_le32(ms->m_status);
|
||||
ms->m_grmode = cpu_to_le32(ms->m_grmode);
|
||||
ms->m_rqmode = cpu_to_le32(ms->m_rqmode);
|
||||
ms->m_bastmode = cpu_to_le32(ms->m_bastmode);
|
||||
ms->m_asts = cpu_to_le32(ms->m_asts);
|
||||
ms->m_result = cpu_to_le32(to_dlm_errno(ms->m_result));
|
||||
}
|
||||
|
||||
void dlm_message_in(struct dlm_message *ms)
|
||||
{
|
||||
ms->m_type = le32_to_cpu(ms->m_type);
|
||||
ms->m_nodeid = le32_to_cpu(ms->m_nodeid);
|
||||
ms->m_pid = le32_to_cpu(ms->m_pid);
|
||||
ms->m_lkid = le32_to_cpu(ms->m_lkid);
|
||||
ms->m_remid = le32_to_cpu(ms->m_remid);
|
||||
ms->m_parent_lkid = le32_to_cpu(ms->m_parent_lkid);
|
||||
ms->m_parent_remid = le32_to_cpu(ms->m_parent_remid);
|
||||
ms->m_exflags = le32_to_cpu(ms->m_exflags);
|
||||
ms->m_sbflags = le32_to_cpu(ms->m_sbflags);
|
||||
ms->m_flags = le32_to_cpu(ms->m_flags);
|
||||
ms->m_lvbseq = le32_to_cpu(ms->m_lvbseq);
|
||||
ms->m_hash = le32_to_cpu(ms->m_hash);
|
||||
ms->m_status = le32_to_cpu(ms->m_status);
|
||||
ms->m_grmode = le32_to_cpu(ms->m_grmode);
|
||||
ms->m_rqmode = le32_to_cpu(ms->m_rqmode);
|
||||
ms->m_bastmode = le32_to_cpu(ms->m_bastmode);
|
||||
ms->m_asts = le32_to_cpu(ms->m_asts);
|
||||
ms->m_result = from_dlm_errno(le32_to_cpu(ms->m_result));
|
||||
}
|
||||
|
||||
@@ -11,8 +11,8 @@
|
||||
#ifndef __UTIL_DOT_H__
|
||||
#define __UTIL_DOT_H__
|
||||
|
||||
void dlm_message_out(struct dlm_message *ms);
|
||||
void dlm_message_in(struct dlm_message *ms);
|
||||
int to_dlm_errno(int err);
|
||||
int from_dlm_errno(int err);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user