• Tejun Heo's avatar
    percpu: remove the usage of separate populated bitmap in percpu-vm · fbbb7f4e
    Tejun Heo authored
    percpu-vm uses pcpu_get_pages_and_bitmap() to acquire temp pages array
    and populated bitmap and uses the two during [de]population.  The temp
    bitmap is used only to build the new bitmap that is copied to
    chunk->populated after the operation succeeds; however, the new bitmap
    can be trivially set after success without using the temp bitmap.
    
    This patch removes the temp populated bitmap usage from percpu-vm.c.
    
    * pcpu_get_pages_and_bitmap() is renamed to pcpu_get_pages() and no
      longer hands out the temp bitmap.
    
    * @populated arugment is dropped from all the related functions.
      @populated updates in pcpu_[un]map_pages() are dropped.
    
    * Two loops in pcpu_map_pages() are merged.
    
    * pcpu_[de]populated_chunk() modify chunk->populated bitmap directly
      from @page_start and @page_end after success.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Acked-by: default avatarChristoph Lameter <cl@linux.com>
    fbbb7f4e
percpu-vm.c 11.7 KB