• Vasily Gorbik's avatar
    s390/boot: avoid mapping standby memory · e966ccf8
    Vasily Gorbik authored
    Commit bb1520d5 ("s390/mm: start kernel with DAT enabled")
    doesn't consider online memory holes due to potential memory offlining
    and erroneously creates pgtables for stand-by memory, which bear RW+X
    attribute and trigger a warning:
    
    RANGE                                 SIZE   STATE REMOVABLE BLOCK
    0x0000000000000000-0x0000000c3fffffff  49G  online       yes  0-48
    0x0000000c40000000-0x0000000c7fffffff   1G offline              49
    0x0000000c80000000-0x0000000fffffffff  14G  online       yes 50-63
    0x0000001000000000-0x00000013ffffffff  16G offline           64-79
    
        s390/mm: Found insecure W+X mapping at address 0xc40000000
        WARNING: CPU: 14 PID: 1 at arch/s390/mm/dump_pagetables.c:142 note_page+0x2cc/0x2d8
    
    Map only online memory ranges which fit within identity mapping limit.
    
    Fixes: bb1520d5 ("s390/mm: start kernel with DAT enabled")
    Reviewed-by: default avatarAlexander Gordeev <agordeev@linux.ibm.com>
    Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
    Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
    e966ccf8
boot.h 2.15 KB