linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Nicholas Piggin" <npiggin@gmail.com>
To: "Christophe Leroy" <christophe.leroy@csgroup.eu>,
	"linuxppc-dev@lists.ozlabs.org" <linuxppc-dev@lists.ozlabs.org>
Subject: Re: [PATCH] powerpc/64s: POWER10 CPU Kconfig build option
Date: Fri, 23 Sep 2022 16:23:18 +1000	[thread overview]
Message-ID: <CN3KCU5GOMF4.3T533MQ4U2SF0@bobo> (raw)
In-Reply-To: <4141d141-54a8-0771-ea67-1e457e38f329@csgroup.eu>

On Fri Sep 23, 2022 at 3:46 PM AEST, Christophe Leroy wrote:
>
>
> Le 23/09/2022 à 05:30, Nicholas Piggin a écrit :
> > This adds basic POWER10_CPU option, which builds with -mcpu=power10.
> > 
> > Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
> > ---
> > There's quite a lot of asm and linker changes slated for the next merge
> > window already so I may leave the pcrel patch for next time. I think we
> > can add the basic POWER10 build option though.
> > 
> > Thanks,
> > Nick
> > 
> >   arch/powerpc/Makefile                  | 7 ++++++-
> >   arch/powerpc/platforms/Kconfig.cputype | 8 +++++++-
> >   2 files changed, 13 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
> > index 8a3d69b02672..ea88af26f8c6 100644
> > --- a/arch/powerpc/Makefile
> > +++ b/arch/powerpc/Makefile
> > @@ -192,9 +192,14 @@ ifdef CONFIG_476FPE_ERR46
> >   		-T $(srctree)/arch/powerpc/platforms/44x/ppc476_modules.lds
> >   endif
> >   
> > -# No AltiVec or VSX instructions when building kernel
> > +# No prefix or pcrel
> > +KBUILD_CFLAGS += $(call cc-option,-mno-prefixed)
>
> We have lots of code to handle prefixed instructions in code_patching, 
> and that code complexifies stuff and has a performance impact.
> And it is only partially taken into account, areas like ftrace don't 
> properly take care of prefixed instructions.
>
> Should we get rid of prefixed instruction support completely in the 
> kernel, and come back to more simple code ?

I would rather complete prefixed support in the kernel and use pcrel
addressing. Actually even if we don't compile with pcrel or prefixed,
there are some instructions and we will probably get more that require
prefixed, possible we might want to use them in kernel. Some of it is
required to handle user mode instructions too. So I think removing
it is premature, but I guess it's up for debate.

Thanks,
Nick

  reply	other threads:[~2022-09-23  6:24 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-23  3:30 [PATCH] powerpc/64s: POWER10 CPU Kconfig build option Nicholas Piggin
2022-09-23  5:46 ` Christophe Leroy
2022-09-23  6:23   ` Nicholas Piggin [this message]
2022-10-06 18:07     ` Christophe Leroy
2022-10-06 20:15       ` Segher Boessenkool
2022-10-06 22:03       ` Nicholas Piggin
2022-10-10  3:41       ` Nicholas Piggin
2022-10-04 13:25 ` Michael Ellerman
2022-10-06 19:54 ` Segher Boessenkool
2022-10-06 21:56   ` Nicholas Piggin
2022-10-06 23:23     ` Segher Boessenkool
2022-10-07  0:03       ` Nicholas Piggin
2022-10-07  5:31         ` Michael Ellerman
2022-10-07 14:38           ` Segher Boessenkool
2022-10-07 14:57         ` Segher Boessenkool

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CN3KCU5GOMF4.3T533MQ4U2SF0@bobo \
    --to=npiggin@gmail.com \
    --cc=christophe.leroy@csgroup.eu \
    --cc=linuxppc-dev@lists.ozlabs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).