Message ID | cover.1700572232.git.dsterba@suse.com (mailing list archive) |
---|---|
Headers | show |
Series | Reduce size of extent_io_tree, remove fs_info | expand |
On Tue, Nov 21, 2023 at 02:20:12PM +0100, David Sterba wrote: > We have the fs_info pointer in extent_io_tree for the trace points as > the inode is not always set. This is a bit wasteful and extent_io_tree > is also embedded in other structures. The tree owner can be used to > determine if the inode is expected to be non-NULL, otherwise we can > store the fs_info pointer. > > I tried to do it in the cleanest way, union and access wrappers, it's > IMO worth the space savings: > > - btrfs_inode 1104 -> 1088 > - btrfs_device 520 -> 512 > - btrfs_root 1360 -> 1344 > - btrfs_transaction 456 -> 440 > - btrfs_fs_info 3600 -> 3592 > - reloc_control 1520 -> 1512 > > The btrfs_inode structure is getting closer to the 1024 size where it > would pack better in the slab pages. > Reviewed-by: Josef Bacik <josef@toxicpanda.com> Thanks, Josef