Note that part of the problem here is that 32 bit x86 handles the alignment of 64 bit integers different from everyone else. While there was originally no problem at all on the other architectures with compat support (powerpc, mips, s390, parisc and sparc), some user space tools added workarounds for x86 compat code that actually broke compat mode on all other architectures.