linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Xen: do hv callback accounting only on x86
@ 2014-03-25 15:52 Arnd Bergmann
  2014-03-25 16:00 ` Arnd Bergmann
  0 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2014-03-25 15:52 UTC (permalink / raw)
  To: linux-arm-kernel

Patch 99c8b79d3c1 "xen: Add proper irq accounting for HYPERCALL vector"
added a call to inc_irq_stat(irq_hv_callback_count) in common Xen code,
however both the inc_irq_stat function and the irq_hv_callback_count
counter are architecture specific.

This makes the code build again on ARM by moving the call into the
existing #ifdef CONFIG_X86. We may want to later do the same implementation
on ARM that x86 has though.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: David Vrabel <david.vrabel@citrix.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Xen <xen-devel@lists.xenproject.org>

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index 5dd2ddf..8b91c256 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1235,6 +1235,7 @@ void xen_evtchn_do_upcall(struct pt_regs *regs)
 #ifdef CONFIG_X86
        exit_idle();
 #endif
+       inc_irq_stat(irq_hv_callback_count);

        __xen_evtchn_do_upcall();

diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
index d5a3de8..dfa12a4 100644
--- a/drivers/xen/events/events_base.c
+++ b/drivers/xen/events/events_base.c
@@ -1248,8 +1248,8 @@ void xen_evtchn_do_upcall(struct pt_regs *regs)
 	irq_enter();
 #ifdef CONFIG_X86
 	exit_idle();
-#endif
 	inc_irq_stat(irq_hv_callback_count);
+#endif
 
 	__xen_evtchn_do_upcall();
 

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH] Xen: do hv callback accounting only on x86
  2014-03-25 15:52 [PATCH] Xen: do hv callback accounting only on x86 Arnd Bergmann
@ 2014-03-25 16:00 ` Arnd Bergmann
  2014-04-04 11:41   ` Julien Grall
  0 siblings, 1 reply; 5+ messages in thread
From: Arnd Bergmann @ 2014-03-25 16:00 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 25 March 2014 16:52:25 Arnd Bergmann wrote:
> diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
> index 5dd2ddf..8b91c256 100644
> --- a/drivers/xen/events/events_base.c
> +++ b/drivers/xen/events/events_base.c
> @@ -1235,6 +1235,7 @@ void xen_evtchn_do_upcall(struct pt_regs *regs)
>  #ifdef CONFIG_X86
>         exit_idle();
>  #endif
> +       inc_irq_stat(irq_hv_callback_count);
> 
>         __xen_evtchn_do_upcall();
> 
> diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
> index d5a3de8..dfa12a4 100644
> --- a/drivers/xen/events/events_base.c
> +++ b/drivers/xen/events/events_base.c
> @@ -1248,8 +1248,8 @@ void xen_evtchn_do_upcall(struct pt_regs *regs)
>         irq_enter();
>  #ifdef CONFIG_X86
>         exit_idle();
> -#endif
>         inc_irq_stat(irq_hv_callback_count);
> +#endif
>  
>         __xen_evtchn_do_upcall();

That was unintended: the first half of this email is actually the patch
that introduced the bug, while the second half is my workaround.
The way it's formatted, you won't be able to apply it without removing
the first half again. I'll wait if the approach is ok first and then
resend it properly if needed.

	Arnd

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] Xen: do hv callback accounting only on x86
  2014-03-25 16:00 ` Arnd Bergmann
@ 2014-04-04 11:41   ` Julien Grall
  2014-04-04 11:50     ` Julien Grall
  2014-04-04 12:15     ` David Vrabel
  0 siblings, 2 replies; 5+ messages in thread
From: Julien Grall @ 2014-04-04 11:41 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

(Adding Ian and Stefano).

On 03/25/2014 04:00 PM, Arnd Bergmann wrote:
> On Tuesday 25 March 2014 16:52:25 Arnd Bergmann wrote:
>> diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
>> index 5dd2ddf..8b91c256 100644
>> --- a/drivers/xen/events/events_base.c
>> +++ b/drivers/xen/events/events_base.c
>> @@ -1235,6 +1235,7 @@ void xen_evtchn_do_upcall(struct pt_regs *regs)
>>  #ifdef CONFIG_X86
>>         exit_idle();
>>  #endif
>> +       inc_irq_stat(irq_hv_callback_count);
>>
>>         __xen_evtchn_do_upcall();
>>
>> diff --git a/drivers/xen/events/events_base.c b/drivers/xen/events/events_base.c
>> index d5a3de8..dfa12a4 100644
>> --- a/drivers/xen/events/events_base.c
>> +++ b/drivers/xen/events/events_base.c
>> @@ -1248,8 +1248,8 @@ void xen_evtchn_do_upcall(struct pt_regs *regs)
>>         irq_enter();
>>  #ifdef CONFIG_X86
>>         exit_idle();
>> -#endif
>>         inc_irq_stat(irq_hv_callback_count);
>> +#endif
>>  
>>         __xen_evtchn_do_upcall();
> 
> That was unintended: the first half of this email is actually the patch
> that introduced the bug, while the second half is my workaround.
> The way it's formatted, you won't be able to apply it without removing
> the first half again. I'll wait if the approach is ok first and then
> resend it properly if needed.

Linus has merged xen/tip yesterday and building ARM with CONFIG_XEN=y is
now broken.

Is there any plan to push this patch (without the first half of course
:)) or reverting the following commit:
commit 99c8b79d3c165f8e2a6247c14bfa1429e7efe51f
Author: Thomas Gleixner <tglx@linutronix.de>
Date:   Sun Feb 23 21:40:21 2014 +0000

    xen: Add proper irq accounting for HYPERCALL vector

Sincerely yours,

-- 
Julien Grall

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] Xen: do hv callback accounting only on x86
  2014-04-04 11:41   ` Julien Grall
@ 2014-04-04 11:50     ` Julien Grall
  2014-04-04 12:15     ` David Vrabel
  1 sibling, 0 replies; 5+ messages in thread
From: Julien Grall @ 2014-04-04 11:50 UTC (permalink / raw)
  To: linux-arm-kernel

On 04/04/2014 12:41 PM, Julien Grall wrote:
> Linus has merged xen/tip yesterday and building ARM with CONFIG_XEN=y is
> now broken.

My mistake, it's not because of xen/tip, but some other branches.

-- 
Julien Grall

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] Xen: do hv callback accounting only on x86
  2014-04-04 11:41   ` Julien Grall
  2014-04-04 11:50     ` Julien Grall
@ 2014-04-04 12:15     ` David Vrabel
  1 sibling, 0 replies; 5+ messages in thread
From: David Vrabel @ 2014-04-04 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

On 04/04/14 12:41, Julien Grall wrote:
> 
> Linus has merged xen/tip yesterday and building ARM with CONFIG_XEN=y is
> now broken.

Sorry, I couldn't add this patch to the xen tree at the time since the
change was on a different tree and then I forgot about it.

Now applied to devel/for-linus-3.15.

David

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-04-04 12:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-25 15:52 [PATCH] Xen: do hv callback accounting only on x86 Arnd Bergmann
2014-03-25 16:00 ` Arnd Bergmann
2014-04-04 11:41   ` Julien Grall
2014-04-04 11:50     ` Julien Grall
2014-04-04 12:15     ` David Vrabel

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).