All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: "Michal Suchánek" <msuchanek@suse.de>
Cc: Nicholas Piggin <npiggin@gmail.com>,
	linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Allison Randal <allison@lohutok.net>,
	Andrew Donnellan <andrew.donnellan@au1.ibm.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Brajeswar Ghosh <brajeswar.linux@gmail.com>,
	Claudio Carvalho <cclaudio@linux.ibm.com>,
	Christian Brauner <christian@brauner.io>,
	Christophe Leroy <christophe.leroy@c-s.fr>,
	David Hildenbrand <david@redhat.com>,
	David Howells <dhowells@redhat.com>,
	Diana Craciun <diana.craciun@nxp.com>,
	Daniel Axtens <dja@axtens.net>,
	Dmitry Vyukov <dvyukov@google.com>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Firoz Khan <firoz.khan@linaro.org>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Gustavo Romero <gromero@linux.ibm.com>,
	Hari Bathini <hbathini@linux.ibm.com>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	Jagadeesh Pagadala <jagdsh.linux@gmail.com>,
	Breno Leitao <leitao@debian.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Madhavan Srinivasan <maddy@linux.vnet.ibm.com>,
	Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>,
	Mathieu Malaterre <malat@debian.org>,
	Michael Neuling <mikey@neuling.org>,
	Michael Ellerman <mpe@ellerman.id.au>,
	"Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>,
	Nicolai Stange <nstange@suse.de>, Oleg Nesterov <oleg@redhat.com>,
	Paul Mackerras <paulus@samba.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Russell Currey <ruscur@russell.cc>,
	Thomas Gleixner <tglx@linutronix.de>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	Masahiro Yamada <yamada.masahiro@socionext.com>
Subject: Re: [PATCH 31/33] powerpc/64: make buildable without CONFIG_COMPAT
Date: Wed, 13 Nov 2019 11:04:03 +0100	[thread overview]
Message-ID: <CAK8P3a0ikEMP6MQzL8QPMTgdA-euf7_AsFZAbxkDbFh=smMuaQ@mail.gmail.com> (raw)
In-Reply-To: <20191113084137.GI2770@kitsune.suse.cz>

On Wed, Nov 13, 2019 at 9:41 AM Michal Suchánek <msuchanek@suse.de> wrote:
>
> On Wed, Nov 13, 2019 at 01:02:34PM +1000, Nicholas Piggin wrote:

> > >
> > > @@ -277,7 +276,7 @@ static void do_signal(struct task_struct *tsk)
> > >
> > >     rseq_signal_deliver(&ksig, tsk->thread.regs);
> > >
> > > -   if (is32) {
> > > +   if (is_32bit_task()) {
> > >             if (ksig.ka.sa.sa_flags & SA_SIGINFO)
> > >                     ret = handle_rt_signal32(&ksig, oldset, tsk);
> > >             else
> >
> > This is just a clean up I guess.
>
> It also expands directly to if(0) or if(1) for the !COMPAT cases. I am
> not sure how it would work with the intermediate variable.
>
> There was more complex change initially but after some additional
> cleanups removing the variable is the only part left.

I would be surprised if that made any difference to a modern compiler,
but the new version is definitely clearer to human readers.

       Arnd

WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de>
To: "Michal Suchánek" <msuchanek@suse.de>
Cc: Madhavan Srinivasan <maddy@linux.vnet.ibm.com>,
	David Hildenbrand <david@redhat.com>,
	Heiko Carstens <heiko.carstens@de.ibm.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	David Howells <dhowells@redhat.com>,
	Masahiro Yamada <yamada.masahiro@socionext.com>,
	Paul Mackerras <paulus@samba.org>,
	Breno Leitao <leitao@debian.org>,
	Michael Neuling <mikey@neuling.org>,
	Allison Randal <allison@lohutok.net>,
	Diana Craciun <diana.craciun@nxp.com>,
	Firoz Khan <firoz.khan@linaro.org>,
	Christian Brauner <christian@brauner.io>,
	Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	"Naveen N. Rao" <naveen.n.rao@linux.vnet.ibm.com>,
	Valentin Schneider <valentin.schneider@arm.com>,
	Jagadeesh Pagadala <jagdsh.linux@gmail.com>,
	Nicolai Stange <nstange@suse.de>,
	Nicholas Piggin <npiggin@gmail.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Oleg Nesterov <oleg@redhat.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Hari Bathini <hbathini@linux.ibm.com>,
	Daniel Axtens <dja@axtens.net>,
	Gustavo Romero <gromero@linux.ibm.com>,
	Mathieu Malaterre <malat@debian.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Claudio Carvalho <cclaudio@linux.ibm.com>,
	"Eric W. Biederman" <ebiederm@xmission.com>,
	Andrew Donnellan <andrew.donnellan@au1.ibm.com>,
	Brajeswar Ghosh <brajeswar.linux@gmail.com>,
	Dmitry Vyukov <dvyukov@google.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
	Alexander Viro <viro@zeniv.linux.org.uk>
Subject: Re: [PATCH 31/33] powerpc/64: make buildable without CONFIG_COMPAT
Date: Wed, 13 Nov 2019 11:04:03 +0100	[thread overview]
Message-ID: <CAK8P3a0ikEMP6MQzL8QPMTgdA-euf7_AsFZAbxkDbFh=smMuaQ@mail.gmail.com> (raw)
In-Reply-To: <20191113084137.GI2770@kitsune.suse.cz>

On Wed, Nov 13, 2019 at 9:41 AM Michal Suchánek <msuchanek@suse.de> wrote:
>
> On Wed, Nov 13, 2019 at 01:02:34PM +1000, Nicholas Piggin wrote:

> > >
> > > @@ -277,7 +276,7 @@ static void do_signal(struct task_struct *tsk)
> > >
> > >     rseq_signal_deliver(&ksig, tsk->thread.regs);
> > >
> > > -   if (is32) {
> > > +   if (is_32bit_task()) {
> > >             if (ksig.ka.sa.sa_flags & SA_SIGINFO)
> > >                     ret = handle_rt_signal32(&ksig, oldset, tsk);
> > >             else
> >
> > This is just a clean up I guess.
>
> It also expands directly to if(0) or if(1) for the !COMPAT cases. I am
> not sure how it would work with the intermediate variable.
>
> There was more complex change initially but after some additional
> cleanups removing the variable is the only part left.

I would be surprised if that made any difference to a modern compiler,
but the new version is definitely clearer to human readers.

       Arnd

  reply	other threads:[~2019-11-13 10:04 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-12 16:51 [PATCH 00/33] exception cleanup, syscall in C and !COMPAT Michal Suchanek
2019-11-12 16:51 ` Michal Suchanek
2019-11-12 16:51 ` [PATCH 01/33] powerpc/64s/exception: Introduce INT_DEFINE parameter block for code generation Michal Suchanek
2019-11-12 16:51   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 02/33] powerpc/64s/exception: Add GEN_COMMON macro that uses INT_DEFINE parameters Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 03/33] powerpc/64s/exception: Add GEN_KVM " Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 04/33] powerpc/64s/exception: Expand EXC_COMMON and EXC_COMMON_ASYNC macros Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 05/33] powerpc/64s/exception: Move all interrupt handlers to new style code gen macros Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 06/33] powerpc/64s/exception: Remove old INT_ENTRY macro Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 07/33] powerpc/64s/exception: Remove old INT_COMMON macro Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 08/33] powerpc/64s/exception: Remove old INT_KVM_HANDLER Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 09/33] powerpc/64s/exception: Add ISIDE option Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 10/33] powerpc/64s/exception: move real->virt switch into the common handler Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 11/33] powerpc/64s/exception: move soft-mask test to common code Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 12/33] powerpc/64s/exception: move KVM " Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 13/33] powerpc/64s/exception: remove confusing IEARLY option Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 14/33] powerpc/64s/exception: remove the SPR saving patch code macros Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 15/33] powerpc/64s/exception: trim unused arguments from KVMTEST macro Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 16/33] powerpc/64s/exception: hdecrementer avoid touching the stack Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 17/33] powerpc/64s/exception: re-inline some handlers Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 18/33] powerpc/64s/exception: Clean up SRR specifiers Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 19/33] powerpc/64s/exception: add more comments for interrupt handlers Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 20/33] powerpc/64s/exception: only test KVM in SRR interrupts when PR KVM is supported Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 21/33] powerpc/64s/exception: soft nmi interrupt should not use ret_from_except Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 22/33] powerpc/64: system call remove non-volatile GPR save optimisation Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 23/33] powerpc/64: system call implement the bulk of the logic in C Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 24/33] powerpc/64s: interrupt return " Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 25/33] powerpc/64s/exception: remove lite interrupt return Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 26/33] powerpc: Add back __ARCH_WANT_SYS_LLSEEK macro Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 27/33] powerpc: move common register copy functions from signal_32.c to signal.c Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 28/33] powerpc/perf: consolidate read_user_stack_32 Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 29/33] powerpc/perf: consolidate valid_user_sp Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 30/33] powerpc/perf: remove current_is_64bit() Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 31/33] powerpc/64: make buildable without CONFIG_COMPAT Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-13  3:02   ` Nicholas Piggin
2019-11-13  3:02     ` Nicholas Piggin
2019-11-13  8:41     ` Michal Suchánek
2019-11-13  8:41       ` Michal Suchánek
2019-11-13 10:04       ` Arnd Bergmann [this message]
2019-11-13 10:04         ` Arnd Bergmann
2019-11-12 16:52 ` [PATCH 32/33] powerpc/64: Make COMPAT user-selectable disabled on littleendian by default Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek
2019-11-12 16:52 ` [PATCH 33/33] powerpc/perf: split callchain.c by bitness Michal Suchanek
2019-11-12 16:52   ` Michal Suchanek

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='CAK8P3a0ikEMP6MQzL8QPMTgdA-euf7_AsFZAbxkDbFh=smMuaQ@mail.gmail.com' \
    --to=arnd@arndb.de \
    --cc=akpm@linux-foundation.org \
    --cc=allison@lohutok.net \
    --cc=andrew.donnellan@au1.ibm.com \
    --cc=benh@kernel.crashing.org \
    --cc=brajeswar.linux@gmail.com \
    --cc=cclaudio@linux.ibm.com \
    --cc=christian@brauner.io \
    --cc=christophe.leroy@c-s.fr \
    --cc=david@redhat.com \
    --cc=dhowells@redhat.com \
    --cc=diana.craciun@nxp.com \
    --cc=dja@axtens.net \
    --cc=dvyukov@google.com \
    --cc=ebiederm@xmission.com \
    --cc=firoz.khan@linaro.org \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=gromero@linux.ibm.com \
    --cc=hbathini@linux.ibm.com \
    --cc=heiko.carstens@de.ibm.com \
    --cc=jagdsh.linux@gmail.com \
    --cc=leitao@debian.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=maddy@linux.vnet.ibm.com \
    --cc=mahesh@linux.vnet.ibm.com \
    --cc=malat@debian.org \
    --cc=mikey@neuling.org \
    --cc=mpe@ellerman.id.au \
    --cc=msuchanek@suse.de \
    --cc=naveen.n.rao@linux.vnet.ibm.com \
    --cc=npiggin@gmail.com \
    --cc=nstange@suse.de \
    --cc=oleg@redhat.com \
    --cc=paulus@samba.org \
    --cc=rostedt@goodmis.org \
    --cc=ruscur@russell.cc \
    --cc=tglx@linutronix.de \
    --cc=valentin.schneider@arm.com \
    --cc=viro@zeniv.linux.org.uk \
    --cc=yamada.masahiro@socionext.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.