xen: use new sched_op

Use the new sched_op hypercall, mainly because xenner doesn't support
the old one.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Jeremy Fitzhardinge 2008-05-26 23:31:02 +01:00 committed by Thomas Gleixner
parent 7b1333aa4c
commit 349c709f42
2 changed files with 6 additions and 4 deletions

View File

@ -254,7 +254,7 @@ static void xen_irq_enable(void)
static void xen_safe_halt(void)
{
/* Blocking includes an implicit local_irq_enable(). */
if (HYPERVISOR_sched_op(SCHEDOP_block, 0) != 0)
if (HYPERVISOR_sched_op(SCHEDOP_block, NULL) != 0)
BUG();
}
@ -1138,11 +1138,13 @@ static const struct smp_ops xen_smp_ops __initdata = {
static void xen_reboot(int reason)
{
struct sched_shutdown r = { .reason = reason };
#ifdef CONFIG_SMP
smp_send_stop();
#endif
if (HYPERVISOR_sched_op(SCHEDOP_shutdown, reason))
if (HYPERVISOR_sched_op(SCHEDOP_shutdown, &r))
BUG();
}

View File

@ -176,9 +176,9 @@ HYPERVISOR_fpu_taskswitch(int set)
}
static inline int
HYPERVISOR_sched_op(int cmd, unsigned long arg)
HYPERVISOR_sched_op(int cmd, void *arg)
{
return _hypercall2(int, sched_op, cmd, arg);
return _hypercall2(int, sched_op_new, cmd, arg);
}
static inline long