On Tue, 30 Jan 2024 at 14:56, Linus Torvalds <torva...@linux-foundation.org> wrote: > > With that, the base size of 'struct eventfs_inode' actually becomes 96 > bytes for me.
It can be shrunk some more. The field ordering is suboptimal. Pointers are 8 bytes and 8-byte aligned, but 'struct kref' is just 4 bytes, and 'struct eventfs_attr' is 12 bytes and 4-byte aligned. So if you pack all the 8-byte-aligned fields at the beginning, and the 4-byte-aligned ones at the end, you get 88 bytes. At which point a name pointer would *just* fit in 96 bytes. ... and then some debug option is enabled, and it all goes to hell again. Linus