[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: [PATCH]mini-os: Using new hypercall interfaces



This patch looks all fine. Tested on both 32 and 64 bit machines.

Keir could you apply please.

Thanks.
Grerog

Dietmar Hahn wrote:
Hi Gregor,

You've dropped 'data' from bind_evtchn() call in your changes to
events.c. That breaks our API, where event handler gets void* to some
piece of data supplied when binding a channel. It looks to me that no
changes to events.c are required whatsoever.
Sorry, my fault. I overlooked last changes to the HYPERVISOR_event_channel_op() hypercall :-(.
I resend the patch only with the changed hypercall HYPERVISOR_sched_op().
Thanks.

Dietmar.


------------------------------------------------------------------------

# HG changeset patch
# User dietmar.hahn@xxxxxxxxxxxxxxxxxxx
# Date 1164268700 -3600
# Node ID 85056d526e1496d0f3a2449b51e4ba6a2361baec
# Parent  2ef0f17a9af9b6b3b2f76460e0f9da5112c0bd79
Switched to new interface for HYPERVISOR_sched_op().

Signed-off-by: Dietmar Hahn <dietmar.hahn@xxxxxxxxxxxxxxxxxxx>

diff -r 2ef0f17a9af9 -r 85056d526e14 
extras/mini-os/include/x86/x86_32/hypercall-x86_32.h
--- a/extras/mini-os/include/x86/x86_32/hypercall-x86_32.h      Wed Nov 22 
18:36:48 2006 +0000
+++ b/extras/mini-os/include/x86/x86_32/hypercall-x86_32.h      Thu Nov 23 
08:58:20 2006 +0100
@@ -167,7 +167,7 @@ HYPERVISOR_fpu_taskswitch(
static inline int
 HYPERVISOR_sched_op(
-       int cmd, unsigned long arg)
+       int cmd, void *arg)
 {
        return _hypercall2(int, sched_op, cmd, arg);
 }
diff -r 2ef0f17a9af9 -r 85056d526e14 
extras/mini-os/include/x86/x86_64/hypercall-x86_64.h
--- a/extras/mini-os/include/x86/x86_64/hypercall-x86_64.h      Wed Nov 22 
18:36:48 2006 +0000
+++ b/extras/mini-os/include/x86/x86_64/hypercall-x86_64.h      Thu Nov 23 
08:58:20 2006 +0100
@@ -171,7 +171,7 @@ HYPERVISOR_fpu_taskswitch(
static inline int
 HYPERVISOR_sched_op(
-       int cmd, unsigned long arg)
+       int cmd, void *arg)
 {
        return _hypercall2(int, sched_op, cmd, arg);
 }
diff -r 2ef0f17a9af9 -r 85056d526e14 extras/mini-os/kernel.c
--- a/extras/mini-os/kernel.c   Wed Nov 22 18:36:48 2006 +0000
+++ b/extras/mini-os/kernel.c   Thu Nov 23 08:58:20 2006 +0100
@@ -159,5 +159,9 @@ void do_exit(void)
 void do_exit(void)
 {
     printk("Do_exit called!\n");
-    for ( ;; ) HYPERVISOR_sched_op(SCHEDOP_shutdown, SHUTDOWN_crash);
+    for( ;; )
+    {
+        struct sched_shutdown sched_shutdown = { .reason = SHUTDOWN_crash };
+        HYPERVISOR_sched_op(SCHEDOP_shutdown, &sched_shutdown);
+    }
 }

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.