diff mbox

[v5,6/9] add jump labels for ia64 paravirt

Message ID 1309793548-16714-7-git-send-email-glommer@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Glauber Costa July 4, 2011, 3:32 p.m. UTC
Since in a later patch I intend to call jump labels inside
CONFIG_PARAVIRT, IA64 would fail to compile if they are not
provided. This patch provides those jump labels for the IA64
architecture.

Signed-off-by: Glauber Costa <glommer@redhat.com>
CC: Isaku Yamahata <yamahata@valinux.co.jp>
CC: Eddie Dong <eddie.dong@intel.com>
CC: Rik van Riel <riel@redhat.com>
CC: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
CC: Peter Zijlstra <peterz@infradead.org>
CC: Avi Kivity <avi@redhat.com>
CC: Anthony Liguori <aliguori@us.ibm.com>
CC: Eric B Munson <emunson@mgebm.net>
---
 arch/ia64/include/asm/paravirt.h |    4 ++++
 arch/ia64/kernel/paravirt.c      |    2 ++
 2 files changed, 6 insertions(+), 0 deletions(-)

Comments

Eric B Munson July 5, 2011, 7:36 p.m. UTC | #1
On Mon, 04 Jul 2011, Glauber Costa wrote:

> Since in a later patch I intend to call jump labels inside
> CONFIG_PARAVIRT, IA64 would fail to compile if they are not
> provided. This patch provides those jump labels for the IA64
> architecture.
> 
> Signed-off-by: Glauber Costa <glommer@redhat.com>
> CC: Isaku Yamahata <yamahata@valinux.co.jp>
> CC: Eddie Dong <eddie.dong@intel.com>
> CC: Rik van Riel <riel@redhat.com>
> CC: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
> CC: Peter Zijlstra <peterz@infradead.org>
> CC: Avi Kivity <avi@redhat.com>
> CC: Anthony Liguori <aliguori@us.ibm.com>
> CC: Eric B Munson <emunson@mgebm.net>

Tested-by: Eric B Munson <emunson@mgebm.net>
Rik van Riel July 6, 2011, 4:35 p.m. UTC | #2
On 07/04/2011 11:32 AM, Glauber Costa wrote:
> Since in a later patch I intend to call jump labels inside
> CONFIG_PARAVIRT, IA64 would fail to compile if they are not
> provided. This patch provides those jump labels for the IA64
> architecture.
>
> Signed-off-by: Glauber Costa<glommer@redhat.com>
> CC: Isaku Yamahata<yamahata@valinux.co.jp>
> CC: Eddie Dong<eddie.dong@intel.com>
> CC: Rik van Riel<riel@redhat.com>
> CC: Jeremy Fitzhardinge<jeremy.fitzhardinge@citrix.com>
> CC: Peter Zijlstra<peterz@infradead.org>
> CC: Avi Kivity<avi@redhat.com>
> CC: Anthony Liguori<aliguori@us.ibm.com>
> CC: Eric B Munson<emunson@mgebm.net>

Acked-by: Rik van Riel <riel@redhat.com>
Avi Kivity July 11, 2011, 1:09 p.m. UTC | #3
On 07/04/2011 06:32 PM, Glauber Costa wrote:
> Since in a later patch I intend to call jump labels inside
> CONFIG_PARAVIRT, IA64 would fail to compile if they are not
> provided. This patch provides those jump labels for the IA64
> architecture.
>

Please get an ack for this from the ia64 maintainer.
Glauber Costa July 11, 2011, 1:24 p.m. UTC | #4
On 07/11/2011 10:09 AM, Avi Kivity wrote:
> On 07/04/2011 06:32 PM, Glauber Costa wrote:
>> Since in a later patch I intend to call jump labels inside
>> CONFIG_PARAVIRT, IA64 would fail to compile if they are not
>> provided. This patch provides those jump labels for the IA64
>> architecture.
>>
>
> Please get an ack for this from the ia64 maintainer.
>

The ones listed in paravirt.c are CC'd. I am CC'ing all the other
folks related to IA64 listed in MAINTAINERS now.

Just a heads up so the new folks CC'd can get up to speed:
I am proposing moving the steal time calculation to inside the core 
scheduler. This move will make it easier for us to make decisions based 
on steal time accounting on virtual machines. Ia64 KVM may or may not 
follow this route - nothing that already works should break with this 
change.

This patch is needed only to avoid breaking compilation, since it 
introduces two new variables that are expected be present when 
CONFIG_PARAVIRT, to paravirt.c.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Isaku Yamahata July 11, 2011, 2:15 p.m. UTC | #5
On Mon, Jul 11, 2011 at 10:24:00AM -0300, Glauber Costa wrote:
> On 07/11/2011 10:09 AM, Avi Kivity wrote:
>> On 07/04/2011 06:32 PM, Glauber Costa wrote:
>>> Since in a later patch I intend to call jump labels inside
>>> CONFIG_PARAVIRT, IA64 would fail to compile if they are not
>>> provided. This patch provides those jump labels for the IA64
>>> architecture.
>>>
>>
>> Please get an ack for this from the ia64 maintainer.
>>
>
> The ones listed in paravirt.c are CC'd. I am CC'ing all the other
> folks related to IA64 listed in MAINTAINERS now.
>
> Just a heads up so the new folks CC'd can get up to speed:
> I am proposing moving the steal time calculation to inside the core  
> scheduler. This move will make it easier for us to make decisions based  
> on steal time accounting on virtual machines. Ia64 KVM may or may not  
> follow this route - nothing that already works should break with this  
> change.
>
> This patch is needed only to avoid breaking compilation, since it  
> introduces two new variables that are expected be present when  
> CONFIG_PARAVIRT, to paravirt.c.

Although the ia64 maintainer is Tony Luck,
I'm fine with the change as the ia64 paravirt author.

Acked-by: Isaku Yamahata <yamahata@valinux.co.jp>
Luck, Tony July 13, 2011, 6:01 p.m. UTC | #6
The paravirt/xen bits in ia64 are already in bit-rot.  I have this
build error in upstream building the arch/ia64/configs/xen_domu_defconfig
(even before applying your latest patch):

drivers/xen/grant-table.c: In function 'gnttab_map_refs':
drivers/xen/grant-table.c:491: error: implicit declaration of function 'm2p_add_override'
drivers/xen/grant-table.c: In function 'gnttab_unmap_refs':
drivers/xen/grant-table.c:514: error: implicit declaration of function 'm2p_remove_override'

Does anyone still care about virtualization support in ia64?

-Tony
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/ia64/include/asm/paravirt.h b/arch/ia64/include/asm/paravirt.h
index 2eb0a98..32551d3 100644
--- a/arch/ia64/include/asm/paravirt.h
+++ b/arch/ia64/include/asm/paravirt.h
@@ -281,6 +281,10 @@  paravirt_init_missing_ticks_accounting(int cpu)
 		pv_time_ops.init_missing_ticks_accounting(cpu);
 }
 
+struct jump_label_key;
+extern struct jump_label_key paravirt_steal_enabled;
+extern struct jump_label_key paravirt_steal_rq_enabled;
+
 static inline int
 paravirt_do_steal_accounting(unsigned long *new_itm)
 {
diff --git a/arch/ia64/kernel/paravirt.c b/arch/ia64/kernel/paravirt.c
index a21d7bb..1008682 100644
--- a/arch/ia64/kernel/paravirt.c
+++ b/arch/ia64/kernel/paravirt.c
@@ -634,6 +634,8 @@  struct pv_irq_ops pv_irq_ops = {
  * pv_time_ops
  * time operations
  */
+struct jump_label_key paravirt_steal_enabled;
+struct jump_label_key paravirt_steal_rq_enabled;
 
 static int
 ia64_native_do_steal_accounting(unsigned long *new_itm)