Module Name: src
Committed By: bouyer
Date: Sat Oct 22 21:16:59 UTC 2011
Modified Files:
src/sys/arch/xen/xen [cherry-xenmp]: clock.c
Log Message:
Really use HYPERVISOR_block()
To generate a diff of this commit:
cvs rdiff -u -r1.54.6.5 -r1.54.6.6 src/sys/arch/xen/xen/clock.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/xen/xen/clock.c
diff -u src/sys/arch/xen/xen/clock.c:1.54.6.5 src/sys/arch/xen/xen/clock.c:1.54.6.6
--- src/sys/arch/xen/xen/clock.c:1.54.6.5 Sat Oct 22 19:26:16 2011
+++ src/sys/arch/xen/xen/clock.c Sat Oct 22 21:16:59 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: clock.c,v 1.54.6.5 2011/10/22 19:26:16 bouyer Exp $ */
+/* $NetBSD: clock.c,v 1.54.6.6 2011/10/22 21:16:59 bouyer Exp $ */
/*
*
@@ -29,7 +29,7 @@
#include "opt_xen.h"
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: clock.c,v 1.54.6.5 2011/10/22 19:26:16 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: clock.c,v 1.54.6.6 2011/10/22 21:16:59 bouyer Exp $");
#include <sys/param.h>
#include <sys/cpu.h>
@@ -552,18 +552,6 @@ setstatclockrate(int arg)
void
idle_block(void)
{
-#ifdef MULTIPROCESSOR
- HYPERVISOR_yield();
- __sti();
-#else
- struct cpu_info *ci = curcpu();
- int r;
-
- r = HYPERVISOR_set_timer_op(
- vcpu_system_time[ci->ci_cpuid] + NS_PER_TICK);
- if (r == 0)
- HYPERVISOR_block();
- else
- __sti();
-#endif
+ KASSERT(curcpu()->ci_ipending == 0);
+ HYPERVISOR_block();
}