Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> writes: > Hi Arnd, > > On Fri, May 30, 2014 at 10:01 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote: >> + * The variant using bit fields is less efficient to access, but >> + * small and has a wider range as the 32-bit one, plus it keeps >> + * the signedness of the original timespec. >> + */ >> +struct inode_time { >> + long long tv_sec : 34; >> + int tv_nsec : 30; >> +}; > > Don't you need 31 bits for tv_nsec, to accommodate for the sign bit? > I know you won't really store negative numbers there, but storing a large > positive number will become negative on read out, won't it? Only if the int bitfield is signed. Bitfields are weird, aren't they? :-) Andreas. -- Andreas Schwab, schwab@xxxxxxxxxxxxxx GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html