45 lines
1.6 KiB
Diff
45 lines
1.6 KiB
Diff
|
From 3179a2220ee4fbb087446148ab231898eae01fce Mon Sep 17 00:00:00 2001
|
||
|
From: Thomas Huth <thuth@redhat.com>
|
||
|
Date: Tue, 8 May 2018 12:17:52 +0200
|
||
|
Subject: [PATCH] pc-bios/s390-ccw: struct tpi_info must be declared as
|
||
|
aligned(4)
|
||
|
|
||
|
I've run into a compilation error today with the current version of GCC 8:
|
||
|
|
||
|
In file included from s390-ccw.h:49,
|
||
|
from main.c:12:
|
||
|
cio.h:128:1: error: alignment 1 of 'struct tpi_info' is less than 4 [-Werror=packed-not-aligned]
|
||
|
} __attribute__ ((packed));
|
||
|
^
|
||
|
cc1: all warnings being treated as errors
|
||
|
|
||
|
Since the struct tpi_info contains an element ("struct subchannel_id schid")
|
||
|
which is marked as aligned(4), we've got to mark the struct tpi_info as
|
||
|
aligned(4), too.
|
||
|
|
||
|
CC: qemu-stable@nongnu.org
|
||
|
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||
|
Message-Id: <1525774672-11913-1-git-send-email-thuth@redhat.com>
|
||
|
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
|
||
|
Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
|
||
|
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
|
||
|
(cherry picked from commit a6e4385dea94850d7b06b0542e7960c1063fdabd)
|
||
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||
|
---
|
||
|
pc-bios/s390-ccw/cio.h | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/pc-bios/s390-ccw/cio.h b/pc-bios/s390-ccw/cio.h
|
||
|
index 55eaeee4b6..1a0795f645 100644
|
||
|
--- a/pc-bios/s390-ccw/cio.h
|
||
|
+++ b/pc-bios/s390-ccw/cio.h
|
||
|
@@ -125,7 +125,7 @@ struct tpi_info {
|
||
|
__u32 reserved3 : 12;
|
||
|
__u32 int_type : 3;
|
||
|
__u32 reserved4 : 12;
|
||
|
-} __attribute__ ((packed));
|
||
|
+} __attribute__ ((packed, aligned(4)));
|
||
|
|
||
|
/* channel command word (type 1) */
|
||
|
struct ccw1 {
|