• Coly Li's avatar
    bcache: allocate meta data pages as compound pages · d6e2394c
    Coly Li authored
    commit 5fe48867 upstream.
    
    There are some meta data of bcache are allocated by multiple pages,
    and they are used as bio bv_page for I/Os to the cache device. for
    example cache_set->uuids, cache->disk_buckets, journal_write->data,
    bset_tree->data.
    
    For such meta data memory, all the allocated pages should be treated
    as a single memory block. Then the memory management and underlying I/O
    code can treat them more clearly.
    
    This patch adds __GFP_COMP flag to all the location allocating >0 order
    pages for the above mentioned meta data. Then their pages are treated
    as compound pages now.
    Signed-off-by: default avatarColy Li <colyli@suse.de>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    d6e2394c
bset.c 33.4 KB