Re: Does SMP work at all on 40x ?
From: Christophe Leroy <hidden>
Date: 2019-01-31 10:55:11
Le 30/01/2019 à 12:43, Michael Ellerman a écrit :
Christophe Leroy [off-list ref] writes:quoted
In transfer_to_handler() (entry_32.S), we have: #if defined(CONFIG_40x) || defined(CONFIG_BOOKE) ... #ifdef CONFIG_SMP CURRENT_THREAD_INFO(r9, r1) lwz r9,TI_CPU(r9) slwi r9,r9,3 add r11,r11,r9 #endif #endif When running this piece of code, MMU translation is off. But r9 contains the virtual addr of current_thread_info, so unless I miss something, this cannot work on the 40x, can it ? On CONFIG_BOOKE it works because phys addr = virt addrAFAIK 40x can't be SMP: config SMP depends on PPC_BOOK3S || PPC_BOOK3E || FSL_BOOKE || PPC_47x But this stuff is all before my time. The commit that added the SMP block was clearly only meant for BookE: 4eaddb4d7ec3 ("[POWERPC] Make Book-E debug handling SMP safe")
Ok, then no need to worry about it. It will implicitely get fixed with the THREAD_INFO_IN_TASK_STRUCT series. Christophe