When i first trying and installing openSUSE tumbleweed, i see when formatting a ext4 i can choose the inode size 128, 256, 512, or 1024 bytes. Typically it is 256. I am thinking a larger inode size makes inline data feature fits more data but i have'nt seen any official docs, what i only see is it fits a 60 bytes file in the inode (source: EXT4 kernel wiki, Disk Layout) and it seems can store more

Pending a change to compact the extended attribute key used to store inline data, one ought to be able to store 160 bytes of data in a 256-byte inode (as of June 2015, when i_extra_isize is 28). Prior to that, the limit was 156 bytes due to inefficient use of inode space.

  • Does larger inode size makes the inline_data feature store more data?
  • Also does it extend the inode's direct pointers?
  • Does it improve access time especially for HDD?

Here some what I've seen about this but mostly opinions (they don't have any reference):

I was wondering if the benefits that I ask about actually exist.

  • 1
    well, that Ext4 wiki says "The extra space between the end of the inode structure and the end of the inode record can be used to store extended attributes.", and nothing about increasing the number of direct pointers, either under "Inode Size" or "Direct/Indirect Block Addressing". As for access times, it would seem to make sense that having extended attributes directly in the inode instead of an independent block should remove the need for one random access, being a benefit. But if you want data that's accurate for your case, and your data, you might be best off testing it yourself.
    – ilkkachu
    Commented Oct 20, 2022 at 11:13
  • Note also that the inline data feature still has some issues, and isn't really recommended (reason why it's not enabled by default). See unix.stackexchange.com/questions/766418/…
    – ChennyStar
    Commented Jan 12 at 6:32


You must log in to answer this question.

Browse other questions tagged .