• Dennis Zhou's avatar
    percpu: do not search past bitmap when allocating an area · 8c43004a
    Dennis Zhou authored
    pcpu_find_block_fit() guarantees that a fit is found within
    PCPU_BITMAP_BLOCK_BITS. Iteration is used to determine the first fit as
    it compares against the block's contig_hint. This can lead to
    incorrectly scanning past the end of the bitmap. The behavior was okay
    given the check after for bit_off >= end and the correctness of the
    hints from pcpu_find_block_fit().
    
    This patch fixes this by bounding the end offset by the number of bits
    in a chunk.
    Signed-off-by: default avatarDennis Zhou <dennis@kernel.org>
    Reviewed-by: default avatarPeng Fan <peng.fan@nxp.com>
    8c43004a
percpu.c 85.8 KB