diff mbox

powerpc/mpic: Remove WHOAMI readback after EOI

Message ID 1427193823-14597-1-git-send-email-bogdan.purcareata@freescale.com (mailing list archive)
State Accepted
Commit 56302c53d3dc477b8360954fc92c1dfc4fc0ec54
Delegated to: Scott Wood
Headers show

Commit Message

Bogdan Purcareata March 24, 2015, 10:43 a.m. UTC
After previous discussions regarding the subject [1][2], there's no clear
explanation or reason why the call was needed in the first place. The sensible
argument is some sort of synchronization between the CPU and the MPIC, which
hasn't been pointed out precisely and is no longer required (at least on BookE
platforms).

The benefit of this change is saving a MMIO trap per interrupt when running in a
KVM guest.

[1] https://patchwork.ozlabs.org/patch/429098/
[2] https://patchwork.ozlabs.org/patch/433557/

Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com>
---
 arch/powerpc/sysdev/mpic.c | 1 -
 1 file changed, 1 deletion(-)

Comments

Purcareata Bogdan May 13, 2015, 12:23 p.m. UTC | #1
Ping?

On 24.03.2015 12:43, Bogdan Purcareata wrote:
> After previous discussions regarding the subject [1][2], there's no clear
> explanation or reason why the call was needed in the first place. The sensible
> argument is some sort of synchronization between the CPU and the MPIC, which
> hasn't been pointed out precisely and is no longer required (at least on BookE
> platforms).
>
> The benefit of this change is saving a MMIO trap per interrupt when running in a
> KVM guest.
>
> [1] https://patchwork.ozlabs.org/patch/429098/
> [2] https://patchwork.ozlabs.org/patch/433557/
>
> Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com>
> ---
>   arch/powerpc/sysdev/mpic.c | 1 -
>   1 file changed, 1 deletion(-)
>
> diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
> index bbfbbf2..045e72a9 100644
> --- a/arch/powerpc/sysdev/mpic.c
> +++ b/arch/powerpc/sysdev/mpic.c
> @@ -655,7 +655,6 @@ static inline struct mpic * mpic_from_irq_data(struct irq_data *d)
>   static inline void mpic_eoi(struct mpic *mpic)
>   {
>   	mpic_cpu_write(MPIC_INFO(CPU_EOI), 0);
> -	(void)mpic_cpu_read(MPIC_INFO(CPU_WHOAMI));
>   }
>
>   /*
>
Scott Wood May 13, 2015, 4:33 p.m. UTC | #2
On Wed, 2015-05-13 at 15:23 +0300, Purcareata Bogdan wrote:
> Ping?
> 
> On 24.03.2015 12:43, Bogdan Purcareata wrote:
> > After previous discussions regarding the subject [1][2], there's no clear
> > explanation or reason why the call was needed in the first place. The sensible
> > argument is some sort of synchronization between the CPU and the MPIC, which
> > hasn't been pointed out precisely and is no longer required (at least on BookE
> > platforms).
> >
> > The benefit of this change is saving a MMIO trap per interrupt when running in a
> > KVM guest.
> >
> > [1] https://patchwork.ozlabs.org/patch/429098/
> > [2] https://patchwork.ozlabs.org/patch/433557/
> >
> > Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com>
> > ---
> >   arch/powerpc/sysdev/mpic.c | 1 -
> >   1 file changed, 1 deletion(-)

Don't top-post.

This is commit 56302c53d3dc477b8360954fc92c1dfc4fc0ec54 in Linus's tree.

-Scott
diff mbox

Patch

diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
index bbfbbf2..045e72a9 100644
--- a/arch/powerpc/sysdev/mpic.c
+++ b/arch/powerpc/sysdev/mpic.c
@@ -655,7 +655,6 @@  static inline struct mpic * mpic_from_irq_data(struct irq_data *d)
 static inline void mpic_eoi(struct mpic *mpic)
 {
 	mpic_cpu_write(MPIC_INFO(CPU_EOI), 0);
-	(void)mpic_cpu_read(MPIC_INFO(CPU_WHOAMI));
 }
 
 /*