From: Julien Thierry <julien.thierry@arm.com> To: Valentin Schneider <valentin.schneider@arm.com>, linux-kernel@vger.kernel.org Cc: Russell King <linux@armlinux.org.uk>, Thomas Gleixner <tglx@linutronix.de>, Will Deacon <will.deacon@arm.com>, linux-arm-kernel@lists.infradead.org Subject: Re: [RFC PATCH 2/3] ARM: entry: Remove unneeded need_resched() loop Date: Fri, 1 Feb 2019 08:49:37 +0000 [thread overview] Message-ID: <fa090a80-5579-5dac-da19-56c9a6c5c423@arm.com> (raw) In-Reply-To: <20190131182339.9835-3-valentin.schneider@arm.com> Hi Valentin, On 31/01/2019 18:23, Valentin Schneider wrote: > Since the enabling and disabling of IRQs within preempt_schedule_irq() > is contained in a need_resched() loop, we don't need the outer arch > code loop. > > Signed-off-by: Valentin Schneider <valentin.schneider@arm.com> > Cc: Russell King <linux@armlinux.org.uk> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Will Deacon <will.deacon@arm.com> > Cc: Julien Thierry <julien.thierry@arm.com> > Cc: linux-arm-kernel@lists.infradead.org Reviewed-by: Julien Thierry <julien.thierry@arm.com> Cheers, > --- > arch/arm/kernel/entry-armv.S | 12 +----------- > 1 file changed, 1 insertion(+), 11 deletions(-) > > diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S > index e85a3af9ddeb..a7ac22e09bb2 100644 > --- a/arch/arm/kernel/entry-armv.S > +++ b/arch/arm/kernel/entry-armv.S > @@ -220,7 +220,7 @@ __irq_svc: > teq r8, #0 @ if preempt count != 0 > movne r0, #0 @ force flags to 0 > tst r0, #_TIF_NEED_RESCHED > - blne svc_preempt > + blne preempt_schedule_irq @ irq en/disable is done inside > #endif > > svc_exit r5, irq = 1 @ return from exception > @@ -229,16 +229,6 @@ ENDPROC(__irq_svc) > > .ltorg > > -#ifdef CONFIG_PREEMPT > -svc_preempt: > - mov r8, lr > -1: bl preempt_schedule_irq @ irq en/disable is done inside > - ldr r0, [tsk, #TI_FLAGS] @ get new tasks TI_FLAGS > - tst r0, #_TIF_NEED_RESCHED > - reteq r8 @ go again > - b 1b > -#endif > - > __und_fault: > @ Correct the PC such that it is pointing at the instruction > @ which caused the fault. If the faulting instruction was ARM > -- Julien Thierry
WARNING: multiple messages have this Message-ID (diff)
From: Julien Thierry <julien.thierry@arm.com> To: Valentin Schneider <valentin.schneider@arm.com>, linux-kernel@vger.kernel.org Cc: Thomas Gleixner <tglx@linutronix.de>, Will Deacon <will.deacon@arm.com>, Russell King <linux@armlinux.org.uk>, linux-arm-kernel@lists.infradead.org Subject: Re: [RFC PATCH 2/3] ARM: entry: Remove unneeded need_resched() loop Date: Fri, 1 Feb 2019 08:49:37 +0000 [thread overview] Message-ID: <fa090a80-5579-5dac-da19-56c9a6c5c423@arm.com> (raw) In-Reply-To: <20190131182339.9835-3-valentin.schneider@arm.com> Hi Valentin, On 31/01/2019 18:23, Valentin Schneider wrote: > Since the enabling and disabling of IRQs within preempt_schedule_irq() > is contained in a need_resched() loop, we don't need the outer arch > code loop. > > Signed-off-by: Valentin Schneider <valentin.schneider@arm.com> > Cc: Russell King <linux@armlinux.org.uk> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Will Deacon <will.deacon@arm.com> > Cc: Julien Thierry <julien.thierry@arm.com> > Cc: linux-arm-kernel@lists.infradead.org Reviewed-by: Julien Thierry <julien.thierry@arm.com> Cheers, > --- > arch/arm/kernel/entry-armv.S | 12 +----------- > 1 file changed, 1 insertion(+), 11 deletions(-) > > diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S > index e85a3af9ddeb..a7ac22e09bb2 100644 > --- a/arch/arm/kernel/entry-armv.S > +++ b/arch/arm/kernel/entry-armv.S > @@ -220,7 +220,7 @@ __irq_svc: > teq r8, #0 @ if preempt count != 0 > movne r0, #0 @ force flags to 0 > tst r0, #_TIF_NEED_RESCHED > - blne svc_preempt > + blne preempt_schedule_irq @ irq en/disable is done inside > #endif > > svc_exit r5, irq = 1 @ return from exception > @@ -229,16 +229,6 @@ ENDPROC(__irq_svc) > > .ltorg > > -#ifdef CONFIG_PREEMPT > -svc_preempt: > - mov r8, lr > -1: bl preempt_schedule_irq @ irq en/disable is done inside > - ldr r0, [tsk, #TI_FLAGS] @ get new tasks TI_FLAGS > - tst r0, #_TIF_NEED_RESCHED > - reteq r8 @ go again > - b 1b > -#endif > - > __und_fault: > @ Correct the PC such that it is pointing at the instruction > @ which caused the fault. If the faulting instruction was ARM > -- Julien Thierry _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-02-01 8:49 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-01-31 18:23 [RFC PATCH 0/3] arm/arm64: entry: Remove need_resched() loop Valentin Schneider 2019-01-31 18:23 ` Valentin Schneider 2019-01-31 18:23 ` [RFC PATCH 1/3] arm64: entry: Remove unneeded " Valentin Schneider 2019-01-31 18:23 ` Valentin Schneider 2019-02-01 8:46 ` Julien Thierry 2019-02-01 8:46 ` Julien Thierry 2019-02-01 10:21 ` Will Deacon 2019-02-01 10:21 ` Will Deacon 2019-02-04 16:55 ` Catalin Marinas 2019-02-04 16:55 ` Catalin Marinas 2019-01-31 18:23 ` [RFC PATCH 2/3] ARM: " Valentin Schneider 2019-01-31 18:23 ` Valentin Schneider 2019-02-01 8:49 ` Julien Thierry [this message] 2019-02-01 8:49 ` Julien Thierry 2019-01-31 18:23 ` [RFC PATCH 3/3] sched/Documentation: Point out use of preempt_schedule_irq() Valentin Schneider 2019-02-01 8:45 ` Julien Thierry 2019-02-01 10:27 ` Valentin Schneider
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=fa090a80-5579-5dac-da19-56c9a6c5c423@arm.com \ --to=julien.thierry@arm.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=tglx@linutronix.de \ --cc=valentin.schneider@arm.com \ --cc=will.deacon@arm.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: linkBe 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.