[PATCH] powerpc/mm/radix: Fix kernel crash when running subpage protect test

Aneesh Kumar K.V aneesh.kumar at linux.ibm.com
Wed May 1 20:32:31 AEST 2019


On 5/1/19 7:14 AM, Michael Ellerman wrote:
> "Aneesh Kumar K.V" <aneesh.kumar at linux.ibm.com> writes:
> 
>> This patch fixes the below crash by making sure we touch the subpage protection
>> related structures only if we know they are allocated on the platform. With
>> radix translation we don't allocate hash context at all and trying to access
>> subpage_prot_table results in
>>
>>   Faulting instruction address: 0xc00000000008bdb4
>>   Oops: Kernel access of bad area, sig: 11 [#1]
>>   LE PAGE_SIZE=64K MMU=Radix MMU=Hash SMP NR_CPUS=2048 NUMA PowerNV
>>   ....
>>   NIP [c00000000008bdb4] sys_subpage_prot+0x74/0x590
>>   LR [c00000000000b688] system_call+0x5c/0x70
>>   Call Trace:
>>   [c00020002c6b7d30] [c00020002c6b7d90] 0xc00020002c6b7d90 (unreliable)
>>   [c00020002c6b7e20] [c00000000000b688] system_call+0x5c/0x70
>>   Instruction dump:
>>   fb61ffd8 fb81ffe0 fba1ffe8 fbc1fff0 fbe1fff8 f821ff11 e92d1178 f9210068
>>   39200000 e92d0968 ebe90630 e93f03e8 <eb891038> 60000000 3860fffe e9410068
>>
>> We also move the subpage_prot_table with mmp_sem held to avoid racec
>> between two parallel subpage_prot syscall.
>>
>> Reported-by: Sachin Sant <sachinp at linux.vnet.ibm.com>
>> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.ibm.com>
> 
> Presumably it was:
> 
> 701101865f5d ("powerpc/mm: Reduce memory usage for mm_context_t for radix")
> 
> That caused the breakage?
> 

that is correct. Sorry i missed the Fixes: line.

-aneesh



More information about the Linuxppc-dev mailing list