]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
btrfs: reorder members in btrfs_delayed_root for better packing
authorDavid Sterba <dsterba@suse.com>
Fri, 9 Jan 2026 17:17:41 +0000 (18:17 +0100)
committerDavid Sterba <dsterba@suse.com>
Tue, 3 Feb 2026 06:56:20 +0000 (07:56 +0100)
commit86523d8d2f3ad16e865a0a47e725d6b2cf36fc78
tree2a4c8d36e296c17fd1fc827a6df12267d1f2395e
parentc8bafc8d6a78bdc484749816668d6f415d008fe8
btrfs: reorder members in btrfs_delayed_root for better packing

There are two unnecessary 4B holes in btrfs_delayed_root;

struct btrfs_delayed_root {
        spinlock_t                 lock;                 /*     0     4 */

        /* XXX 4 bytes hole, try to pack */

        struct list_head           node_list;            /*     8    16 */
        struct list_head           prepare_list;         /*    24    16 */
        atomic_t                   items;                /*    40     4 */
        atomic_t                   items_seq;            /*    44     4 */
        int                        nodes;                /*    48     4 */

        /* XXX 4 bytes hole, try to pack */

        wait_queue_head_t          wait;                 /*    56    24 */

        /* size: 80, cachelines: 2, members: 7 */
        /* sum members: 72, holes: 2, sum holes: 8 */
        /* last cacheline: 16 bytes */
};

Reordering 'nodes' after 'lock' reduces size by 8B, to 72 on release
config.

Reviewed-by: Boris Burkov <boris@bur.io>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/fs.h