• Alexander Graf's avatar
    KVM: PPC: Book3S PR: Rework SLB switching code · d8d164a9
    Alexander Graf authored
    On LPAR guest systems Linux enables the shadow SLB to indicate to the
    hypervisor a number of SLB entries that always have to be available.
    
    Today we go through this shadow SLB and disable all ESID's valid bits.
    However, pHyp doesn't like this approach very much and honors us with
    fancy machine checks.
    
    Fortunately the shadow SLB descriptor also has an entry that indicates
    the number of valid entries following. During the lifetime of a guest
    we can just swap that value to 0 and don't have to worry about the
    SLB restoration magic.
    
    While we're touching the code, let's also make it more readable (get
    rid of rldicl), allow it to deal with a dynamic number of bolted
    SLB entries and only do shadow SLB swizzling on LPAR systems.
    Signed-off-by: default avatarAlexander Graf <agraf@suse.de>
    d8d164a9
book3s_64_slb.S 3.59 KB