• Dennis Zhou (Facebook)'s avatar
    percpu: change the number of pages marked in the first_chunk pop bitmap · 8ab16c43
    Dennis Zhou (Facebook) authored
    The populated bitmap represents the state of the pages the chunk serves.
    Prior, the bitmap was marked completely used as the first chunk was
    allocated and immutable. This is misleading because the first chunk may
    not be completely filled. Additionally, with moving the base_addr up in
    the previous patch, the population check no longer corresponds to what
    was being checked.
    
    This patch modifies the population map to be only the number of pages
    the region serves and to make what it was checking correspond correctly
    again. The change is to remove any misunderstanding between the size of
    the populated bitmap and the actual size of it. The work function page
    iterators now use nr_pages for the check rather than pcpu_unit_pages
    because nr_populated is now chunk specific. Without this, the work
    function would try to populate the remainder of these chunks despite it
    not serving any more than nr_pages when nr_pages is set less than
    pcpu_unit_pages.
    Signed-off-by: default avatarDennis Zhou <dennisszhou@gmail.com>
    Reviewed-by: default avatarJosef Bacik <jbacik@fb.com>
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    8ab16c43
percpu.c 68.3 KB