New code for 5.6:
- Get rid of compat_time_t
- Convert time_t to time64_t in quota code
- Remove shadow variables
- Prevent ATTR_ flag misuse in the attrmulti ioctls
- Clean out strlen in the attr code
- Remove some bogus asserts
- Fix various errors with 32-bit kernels
- Pack xfs_dir2_sf_entry_t to fix build errors on arm oabi
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAl4fQhAACgkQ+H93GTRK
tOs0KA//RfaLPnVXMIa12oogvFWpaDaDy5nFZLzu3Vz/2edjB6KcSFDXl4G0jLIT
EybI6yNbVgxHWV8u+me1YaHtRtGBNEiixdP8GEfO1e0X80/JdfBVY77sQXnZED7d
DyYobVY6XhTVaxtMcC9HDrLV/65Bx5kQ0pImA7lZNAspIK5sUdvlbg09/e5M4u/R
aAYo8oLkg0ew2ltB6YsmKMEfPTjHpKsJ1p6NqQ/1haEQLsO255W+GBGhJrL+rkSL
u/pPNW8OXplooHP0l+TrTP/akuBKH8UyGc5YOHkZgBgG0hM9Fj68BOas67HXiT/F
/484YAJ7JMkDwSnH4UFRY69iHNVRTZ8VeGbwQx2gC6qcJkNfAbFYsEOQ+9ll/MZn
5V/cmMGVFlQLNDGGeaUBUFcdetp7HU7hYEPPGk+f753Ws3HISWacrWI0F285A/qA
2jCmIV4WvHCwABWtsC27zDvbe+h7JIkcEF38JVXAu6MMBnAleAKOgnM0t0xuaD3q
bC1Stnv9IBeBRqb5mezWzFQoGFLeYOJis5SM5dOuLwAowHooH65GsPEmG7I7Kj5p
Al2DuYf+/oDVfOOs2JAKE39kkBqfB+phMNUeYm+jlWqiq0HzogQ85vTiWI0Mc8Ky
liJcnVSHW9SsH813KOQ6M7sYMptfnptlcP3b+T7YDJmiw86iEMY=
=gE2Y
-----END PGP SIGNATURE-----
xfs: Add __packed to xfs_dir2_sf_entry_t definition

xfs_check_ondisk_structs() verifies that the sizes of the data types
used by xfs are correct via the XFS_CHECK_STRUCT_SIZE() macro.

Since the structures padding can vary depending on the ABI (e.g. on
ARM OABI structures are padded to multiple of 32 bits), it may happen
that xfs_dir2_sf_entry_t size check breaks the compilation with the
assertion below:

In file included from linux/include/linux/string.h:6,
                 from linux/include/linux/uuid.h:12,
                 from linux/fs/xfs/xfs_linux.h:10,
                 from linux/fs/xfs/xfs.h:22,
                 from linux/fs/xfs/xfs_super.c:7:
In function ‘xfs_check_ondisk_structs’,
    inlined from ‘init_xfs_fs’ at linux/fs/xfs/xfs_super.c:2025:2:
linux/include/linux/compiler.h:350:38:
    error: call to ‘__compiletime_assert_107’ declared with attribute
    error: XFS: sizeof(xfs_dir2_sf_entry_t) is wrong, expected 3
    _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)

Restore the correct behavior adding __packed to the structure definition.

Cc: Darrick J. Wong <darrick.wong@oracle.com>
Suggested-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
1 file changed