summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMerlin Scholz <merlin@scholz.ruhr>2022-10-19 01:42:54 +0200
committerMerlin Scholz <merlin@scholz.ruhr>2023-07-10 00:19:03 +0200
commitdb1dac8367d3aaa42d1e95d429f745319c0f67f6 (patch)
tree4d346af563ce4c35ea90853121a25e26fd505f10
parent5e79013d09158507e65aaea09ffebbef8249ab5e (diff)
Fix memory padding by replacing char with enum in log_action
-rw-r--r--sys/sys/lockdoc.h7
-rw-r--r--sys/sys/lockdoc_event.h2
2 files changed, 5 insertions, 4 deletions
diff --git a/sys/sys/lockdoc.h b/sys/sys/lockdoc.h
index b101b05bd4a..45c1aa7faeb 100644
--- a/sys/sys/lockdoc.h
+++ b/sys/sys/lockdoc.h
@@ -28,7 +28,8 @@ static inline void log_lock(int lock_op, const void* ptr, const char *file, int
memset(&la_buffer,0,sizeof(la_buffer));
- // TODO fail shows 0x016c instead of 0x6c
+ //strncpy((char *)&la_buffer, "abcdefgh", LOG_CHAR_BUFFER_LEN);
+
// action
la_buffer.action = LOCKDOC_LOCK_OP;
@@ -41,11 +42,11 @@ static inline void log_lock(int lock_op, const void* ptr, const char *file, int
// size only relevant for memory access
// TODO type
- //strncpy(la_buffer.type, ,LOG_CHAR_BUFFER_LEN);
+ strncpy(la_buffer.type, "dummy", LOG_CHAR_BUFFER_LEN);
la_buffer.type[LOG_CHAR_BUFFER_LEN - 1] = '\0';
// TODO lock_member
- strncpy(la_buffer.lock_member,"dummy",LOG_CHAR_BUFFER_LEN);
+ strncpy(la_buffer.lock_member, "dummy", LOG_CHAR_BUFFER_LEN);
la_buffer.lock_member[LOG_CHAR_BUFFER_LEN - 1] = '\0';
diff --git a/sys/sys/lockdoc_event.h b/sys/sys/lockdoc_event.h
index 6addbe5b3ab..8552cb9bd18 100644
--- a/sys/sys/lockdoc_event.h
+++ b/sys/sys/lockdoc_event.h
@@ -51,7 +51,7 @@ enum IRQ_SYNC {
};
struct log_action {
- char action;
+ enum LOCKDOC_OP action;
uint32_t lock_op;
uint32_t ptr;
uint32_t size;