• Jeff Mahoney's avatar
    btrfs: remove root usage from can_overcommit · c1c4919b
    Jeff Mahoney authored
    can_overcommit using the root to determine the allocation profile
    is the only use of a root in the call graph below reserve_metadata_bytes.
    
    It turns out that we only need to know whether the allocation is for
    the chunk root or not -- and we can pass that around as a bool instead.
    
    This allows us to pull root usage out of the reservation path all the
    way up to reserve_metadata_bytes itself, which uses it only to compare
    against fs_info->chunk_root to set the bool.  In turn, this eliminates
    a bunch of races where we use a particular root too early in the mount
    process.
    Signed-off-by: default avatarJeff Mahoney <jeffm@suse.com>
    Reviewed-by: default avatarLiu Bo <bo.li.liu@oracle.com>
    Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
    c1c4919b
extent-tree.c 300 KB