| From foo@baz Fri Mar 29 15:53:50 CET 2019 |
| From: Michael Ellerman <mpe@ellerman.id.au> |
| Date: Fri, 29 Mar 2019 22:26:18 +1100 |
| Subject: powerpc/fsl: Fixed warning: orphan section `__btb_flush_fixup' |
| To: stable@vger.kernel.org, gregkh@linuxfoundation.org |
| Cc: linuxppc-dev@ozlabs.org, diana.craciun@nxp.com, msuchanek@suse.de, christophe.leroy@c-s.fr |
| Message-ID: <20190329112620.14489-31-mpe@ellerman.id.au> |
| |
| From: Diana Craciun <diana.craciun@nxp.com> |
| |
| commit 039daac5526932ec731e4499613018d263af8b3e upstream. |
| |
| Fixed the following build warning: |
| powerpc-linux-gnu-ld: warning: orphan section `__btb_flush_fixup' from |
| `arch/powerpc/kernel/head_44x.o' being placed in section |
| `__btb_flush_fixup'. |
| |
| Signed-off-by: Diana Craciun <diana.craciun@nxp.com> |
| Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/powerpc/kernel/head_booke.h | 18 ++++++++++++------ |
| 1 file changed, 12 insertions(+), 6 deletions(-) |
| |
| --- a/arch/powerpc/kernel/head_booke.h |
| +++ b/arch/powerpc/kernel/head_booke.h |
| @@ -32,6 +32,16 @@ |
| */ |
| #define THREAD_NORMSAVE(offset) (THREAD_NORMSAVES + (offset * 4)) |
| |
| +#ifdef CONFIG_PPC_FSL_BOOK3E |
| +#define BOOKE_CLEAR_BTB(reg) \ |
| +START_BTB_FLUSH_SECTION \ |
| + BTB_FLUSH(reg) \ |
| +END_BTB_FLUSH_SECTION |
| +#else |
| +#define BOOKE_CLEAR_BTB(reg) |
| +#endif |
| + |
| + |
| #define NORMAL_EXCEPTION_PROLOG(intno) \ |
| mtspr SPRN_SPRG_WSCRATCH0, r10; /* save one register */ \ |
| mfspr r10, SPRN_SPRG_THREAD; \ |
| @@ -43,9 +53,7 @@ |
| andi. r11, r11, MSR_PR; /* check whether user or kernel */\ |
| mr r11, r1; \ |
| beq 1f; \ |
| -START_BTB_FLUSH_SECTION \ |
| - BTB_FLUSH(r11) \ |
| -END_BTB_FLUSH_SECTION \ |
| + BOOKE_CLEAR_BTB(r11) \ |
| /* if from user, start at top of this thread's kernel stack */ \ |
| lwz r11, THREAD_INFO-THREAD(r10); \ |
| ALLOC_STACK_FRAME(r11, THREAD_SIZE); \ |
| @@ -131,9 +139,7 @@ END_BTB_FLUSH_SECTION \ |
| stw r9,_CCR(r8); /* save CR on stack */\ |
| mfspr r11,exc_level_srr1; /* check whether user or kernel */\ |
| DO_KVM BOOKE_INTERRUPT_##intno exc_level_srr1; \ |
| -START_BTB_FLUSH_SECTION \ |
| - BTB_FLUSH(r10) \ |
| -END_BTB_FLUSH_SECTION \ |
| + BOOKE_CLEAR_BTB(r10) \ |
| andi. r11,r11,MSR_PR; \ |
| mfspr r11,SPRN_SPRG_THREAD; /* if from user, start at top of */\ |
| lwz r11,THREAD_INFO-THREAD(r11); /* this thread's kernel stack */\ |