• Heiko Carstens's avatar
    s390/vmem: fix identity mapping · c34a6905
    Heiko Carstens authored
    The identity mapping is suboptimal for the last 2GB frame. The mapping
    will be established with a mix of 4KB and 1MB mappings instead of a
    single 2GB mapping.
    
    This happens because of a off-by-one bug introduced with
    commit 50be6345 ("s390/mm: Convert bootmem to memblock").
    
    Currently the identity mapping looks like this:
    
    0x0000000080000000-0x0000000180000000        4G PUD RW
    0x0000000180000000-0x00000001fff00000     2047M PMD RW
    0x00000001fff00000-0x0000000200000000        1M PTE RW
    
    With the bug fixed it looks like this:
    
    0x0000000080000000-0x0000000200000000        6G PUD RW
    
    Fixes: 50be6345 ("s390/mm: Convert bootmem to memblock")
    Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
    c34a6905
vmem.c 9.25 KB