• Michael Ellerman's avatar
    powerpc/mm/radix: Simplify split mapping logic · 232aa407
    Michael Ellerman authored
    If we look closely at the logic in create_physical_mapping(), when
    we're doing STRICT_KERNEL_RWX, we do the following steps:
      - determine the gap from where we are to the end of the range
      - choose an appropriate mapping_size based on the gap
      - check if that mapping_size would overlap the __init_begin
        boundary, and if not choose an appropriate mapping_size
    
    We can simplify the logic by taking the __init_begin boundary into
    account when we calculate the initial gap.
    
    So add a next_boundary() function which tells us what the next
    boundary is, either the __init_begin boundary or end. In future we can
    add more boundaries.
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    232aa407
pgtable-radix.c 25.9 KB