On 08/09/2018 06:35 AM, Michael Ellerman wrote: > Mahesh J Salgaonkar <mah...@linux.vnet.ibm.com> writes: > >> diff --git a/arch/powerpc/include/asm/paca.h >> b/arch/powerpc/include/asm/paca.h >> index 7f22929ce915..233d25ff6f64 100644 >> --- a/arch/powerpc/include/asm/paca.h >> +++ b/arch/powerpc/include/asm/paca.h >> @@ -254,6 +254,10 @@ struct paca_struct { >> #endif >> #ifdef CONFIG_PPC_PSERIES >> u8 *mce_data_buf; /* buffer to hold per cpu rtas errlog */ >> + >> + /* Capture SLB related old contents in MCE handler. */ >> + struct slb_entry *mce_faulty_slbs; >> + u16 slb_save_cache_ptr; >> #endif /* CONFIG_PPC_PSERIES */ > > ^^^^^^^^^^^^^^^^^
I will pull that out of CONFIG_PPC_PSERIES. > >> diff --git a/arch/powerpc/mm/slb.c b/arch/powerpc/mm/slb.c >> index e89f675f1b5e..16a53689ffd4 100644 >> --- a/arch/powerpc/mm/slb.c >> +++ b/arch/powerpc/mm/slb.c >> @@ -151,6 +151,79 @@ void slb_flush_and_rebolt_realmode(void) >> get_paca()->slb_cache_ptr = 0; >> } >> >> +void slb_save_contents(struct slb_entry *slb_ptr) >> +{ >> + int i; >> + unsigned long e, v; >> + >> + /* Save slb_cache_ptr value. */ >> + get_paca()->slb_save_cache_ptr = get_paca()->slb_cache_ptr; > > This isn't inside CONFIG_PPC_PSERIES which breaks lots of configs, eg > powernv. > > arch/powerpc/mm/slb.c:160:12: error: 'struct paca_struct' has no member > named 'slb_save_cache_ptr' > arch/powerpc/mm/slb.c:218:27: error: 'struct paca_struct' has no member > named 'slb_save_cache_ptr' > arch/powerpc/mm/slb.c:216:49: error: 'struct paca_struct' has no member > named 'slb_save_cache_ptr' > > http://kisskb.ozlabs.ibm.com/kisskb/head/219f20e490add009194d94fdeb480da2e385f1c6/ > > cheers > Ouch.. my bad. Will fix it. Thanks, -Mahesh.