Re: [PATCH v2 2/3] MIPS: Move kernel head into a standalone section

From: Jiaxun Yang
Date: Wed May 27 2020 - 08:05:35 EST


On Wed, 27 May 2020 13:53:54 +0200
Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx> wrote:

> On Wed, May 27, 2020 at 02:34:33PM +0800, Jiaxun Yang wrote:
> > That's what already done by Arm64 and other architectures.
> > That would allow us put more things like PE headers safely into
> > the header.
> >
> > Signed-off-by: Jiaxun Yang <jiaxun.yang@xxxxxxxxxxx>
> > ---
> > arch/mips/kernel/head.S | 4 ++--
> > arch/mips/kernel/vmlinux.lds.S | 8 ++++++--
> > 2 files changed, 8 insertions(+), 4 deletions(-)
> >
> > diff --git a/arch/mips/kernel/head.S b/arch/mips/kernel/head.S
> > index c7c2795837e7..8081a905a71c 100644
> > --- a/arch/mips/kernel/head.S
> > +++ b/arch/mips/kernel/head.S
> > @@ -59,6 +59,8 @@
> > #endif
> > .endm
> >
> > + __HEAD
> > +_head:
> > #ifndef CONFIG_NO_EXCEPT_FILL
> > /*
> > * Reserved space for exception handlers.
>
> I'm adding the missing piece, why this change ist broken:
>
> * Necessary for machines which link their kernels at KSEG0.
>
> by putting something in front of that will probably break platforms
> making use of "feature". If we can make sure, we don't need it
> anymore, we should first remove this and then add __HEAD part.

__HEAD is just marking the section of code.
It will not add anything to the binary.

Btw: I just noticed this patch may break relocatable kernel. I'll delay
it for next merge window.

Thanks.

>
> Thomas.
>

--
Jiaxun Yang