On Tue, 8 May 2018 12:17:52 +0200 Thomas Huth <th...@redhat.com> wrote:
> 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. > > Signed-off-by: Thomas Huth <th...@redhat.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 55eaeee..1a0795f 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 { Thanks, queued to s390-next with a cc:stable.