• Alexander Graf's avatar
    Add SLB switching code for entry/exit · 5126ed37
    Alexander Graf authored
    This is the really low level of guest entry/exit code.
    
    Book3s_64 has an SLB, which stores all ESID -> VSID mappings we're
    currently aware of.
    
    The segments in the guest differ from the ones on the host, so we need
    to switch the SLB to tell the MMU that we're in a new context.
    
    So we store a shadow of the guest's SLB in the PACA, switch to that on
    entry and only restore bolted entries on exit, leaving the rest to the
    Linux SLB fault handler.
    
    That way we get a really clean way of switching the SLB.
    Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    5126ed37
book3s_64_slb.S 6.23 KB