On Mon, 29 Jan 2018 13:56:17 +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 them in TCG/KVM > code. > > 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 +- > target/s390x/misc_helper.c | 12 ++++++------ > 3 files changed, 33 insertions(+), 27 deletions(-) > > diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h > index 76c31d970f..1475d705a4 100644 > --- a/target/s390x/cpu.h > +++ b/target/s390x/cpu.h > @@ -437,29 +437,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; > +QEMU_BUILD_BUG_ON(sizeof(SysIB_111) != 4096); I would probably have dropped the underscore, but I won't ask you to respin again for that :)