[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [EXTERNAL] [PATCH 1/2] target/ppc: Fix slbia TLB invalidation gap
From: |
Nicholas Piggin |
Subject: |
Re: [EXTERNAL] [PATCH 1/2] target/ppc: Fix slbia TLB invalidation gap |
Date: |
Thu, 19 Mar 2020 12:24:41 +1000 |
User-agent: |
astroid/0.15.0 (https://github.com/astroidmail/astroid) |
Cédric Le Goater's on March 19, 2020 2:45 am:
> On 3/18/20 5:41 AM, Nicholas Piggin wrote:
>> slbia must invalidate TLBs even if it does not remove a valid SLB
>> entry, because slbmte can overwrite valid entries without removing
>> their TLBs.
>>
>> As the architecture says, slbia invalidates all lookaside information,
>> not conditionally based on if it removed valid entries.
>>
>> It does not seem possible for POWER8 or earlier Linux kernels to hit
>> this bug because it never changes its kernel SLB translations, and it
>> should always have valid entries if any accesses are made to usespace
>> regions. However other operating systems which may modify SLB entry 0
>> or do more fancy things with segments might be affected.
>
> Did you hit the bug on the other OS ?
No, hit it when fixing POWER9 hash.
>
>> When POWER9 slbia support is added in the next patch, this becomes a
>> real problem because some new slbia variants don't invalidate all
>> non-zero entries.
>>
>> Signed-off-by: Nicholas Piggin <address@hidden>
>
> Looks correct.
>
> Reviewed-by: Cédric Le Goater <address@hidden>
Thanks,
Nick