Anshuman Khandual [khand...@linux.vnet.ibm.com] wrote: | On 08/28/2014 03:05 AM, Sukadev Bhattiprolu wrote: | > | > I see these in arch/powerpc/include/asm/processor.h | > | > #ifdef CONFIG_PPC64 | > unsigned long dscr; | > int dscr_inherit; | > unsigned long ppr; /* used to save/restore SMT priority */ | > #endif | > | > where there is an 'int' between ppr and dscr. So, should one of | > the above sizeof(unsigned long) be changed to sizeof(int) ? | | Right, I understand that but strangely I get this compile time error | when it is changed to sizeof(int). | | error: call to ‘__compiletime_assert_1350’ declared with attribute error: | BUILD_BUG_ON failed: TSO(dscr) + sizeof(unsigned long) + sizeof(int) != TSO(ppr) | BUILD_BUG_ON(TSO(dscr) + sizeof(unsigned long) + sizeof(int) != TSO(ppr)); | | may be I am missing something here.
I guess there is a 4-byte padding after dscr_inherit. We could make that explicit by adding a field or just go with the sizeof(unsigned long). Thanks, Sukadev _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev