On Wed, 14 Jun 2023, Michael Schmitz wrote:
The reason why only rdb_SummedLongs, rdb_BlockBytes and rdb_PartitionList are explicitly declared big endian is probably quite simple - nothing else was used by the Linux RDB parser. My patch adds rdb_CylBlocks to that list, so that ought to be changed to big endian, too. affs_hardblocks.h is a UAPI header - what are the rules and ramifications around changes to those? Might not be worth the hassle in the end.
I think it's safe to fix the UAPI header if we are talking about endianness annotations that affect static checking and not code generation. The existing annotations in that struct would appear to support that notion, if indeed they were put there for the benefit of the kernel.