mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH upstream 1/4] state: use packet attribute for on storage structs
@ 2016-11-02  7:54 Stefan Lengfeld
  2016-11-02  7:54 ` [PATCH upstream 2/4] state: fix indentation Stefan Lengfeld
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Stefan Lengfeld @ 2016-11-02  7:54 UTC (permalink / raw)
  To: barebox

These structs are used for on-storage data layouts. They should be not
affected by different integer precisions and alignment optimizations of
32bit or 64bit machines. Using the architecture independent integer data
types, like uint32_t, achieves the former, using the packet attribute
the later.

Signed-off-by: Stefan Lengfeld <s.lengfeld@phytec.de>
---
 common/state/backend_bucket_circular.c | 2 +-
 common/state/backend_bucket_direct.c   | 2 +-
 common/state/backend_format_raw.c      | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/common/state/backend_bucket_circular.c b/common/state/backend_bucket_circular.c
index 72e165e..d8504e0 100644
--- a/common/state/backend_bucket_circular.c
+++ b/common/state/backend_bucket_circular.c
@@ -47,7 +47,7 @@ struct state_backend_storage_bucket_circular {
 	struct device_d *dev;
 };
 
-struct state_backend_storage_bucket_circular_meta {
+struct __attribute__((__packed__)) state_backend_storage_bucket_circular_meta {
 	uint32_t magic;
 	uint32_t written_length;
 };
diff --git a/common/state/backend_bucket_direct.c b/common/state/backend_bucket_direct.c
index 08892f0..5225433 100644
--- a/common/state/backend_bucket_direct.c
+++ b/common/state/backend_bucket_direct.c
@@ -32,7 +32,7 @@ struct state_backend_storage_bucket_direct {
 	struct device_d *dev;
 };
 
-struct state_backend_storage_bucket_direct_meta {
+struct __attribute__((__packed__)) state_backend_storage_bucket_direct_meta {
 	uint32_t magic;
 	uint32_t written_length;
 };
diff --git a/common/state/backend_format_raw.c b/common/state/backend_format_raw.c
index 4209424..e028ea6 100644
--- a/common/state/backend_format_raw.c
+++ b/common/state/backend_format_raw.c
@@ -37,7 +37,7 @@ struct state_backend_format_raw {
 	struct device_d *dev;
 };
 
-struct backend_raw_header {
+struct __attribute__((__packed__)) backend_raw_header {
 	uint32_t magic;
 	uint16_t reserved;
 	uint16_t data_len;
-- 
1.9.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-11-03  8:38 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-02  7:54 [PATCH upstream 1/4] state: use packet attribute for on storage structs Stefan Lengfeld
2016-11-02  7:54 ` [PATCH upstream 2/4] state: fix indentation Stefan Lengfeld
2016-11-02  7:54 ` [PATCH upstream 3/4] state: fix state is not saved when string variable is changed Stefan Lengfeld
2016-11-02  7:54 ` [PATCH upstream 4/4] docs: state: make string variable type clearer Stefan Lengfeld
2016-11-02 14:17 ` [PATCH upstream 1/4] state: use packet attribute for on storage structs Andrey Smirnov
2016-11-03  6:21 ` Sascha Hauer
2016-11-03  8:38   ` Stefan Lengfeld

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox