On Wed, 17 Jan 2018 18:40:41 +0100 David Hildenbrand <da...@redhat.com> wrote:
> All blocks are 4k in size, which is only true for two of them right now. > Also some reserved fields were wrong, fix it and convert all reserved > fields to u8. > > This also fixes the LPAR part output in /proc/sysinfo under TCG. (for > now, everything was indicated as 0) > > While at it, introduce typedefs for these structs and use it in KVM > code. Not changing misc_helper.c as that will be overhauled soon. > > Reviewed-by: Thomas Huth <th...@redhat.com> > Signed-off-by: David Hildenbrand <da...@redhat.com> > --- > target/s390x/cpu.h | 46 ++++++++++++++++++++++++++-------------------- > target/s390x/kvm.c | 2 +- > 2 files changed, 27 insertions(+), 21 deletions(-) > > diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h > index b4a88830de..31593a5381 100644 > --- a/target/s390x/cpu.h > +++ b/target/s390x/cpu.h > @@ -436,29 +436,31 @@ static inline void setcc(S390CPU *cpu, uint64_t cc) > #define STSI_R1_SEL2_MASK 0x000000000000ffffULL > > /* Basic Machine Configuration */ > -struct sysib_111 { > - uint32_t res1[8]; > +typedef struct sysib_111 { > + uint8_t res1[32]; > uint8_t manuf[16]; > uint8_t type[4]; > uint8_t res2[12]; > uint8_t model[16]; > uint8_t sequence[16]; > uint8_t plant[4]; > - uint8_t res3[156]; > -}; > + uint8_t res3[3996]; > +} sysib_111; Do you want to CamelCase this? > +QEMU_BUILD_BUG_ON(sizeof(sysib_111) != 4096);