WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-api

[Xen-API] [PATCH] Add a method to trigger a sleep button push in a domai

To: xen-api@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-API] [PATCH] Add a method to trigger a sleep button push in a domain
From: Paul Durrant <paul.durrant@xxxxxxxxxx>
Date: Tue, 5 Jan 2010 17:04:08 +0000
Cc:
Delivery-date: Tue, 05 Jan 2010 09:04:29 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-api-request@lists.xensource.com?subject=help>
List-id: Discussion of API issues surrounding Xen <xen-api.lists.xensource.com>
List-post: <mailto:xen-api@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-api>, <mailto:xen-api-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-api>, <mailto:xen-api-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-api-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Paul Durrant <paul.durrant@xxxxxxxxxx>
# Date 1262711029 0
# Node ID bda191b339eb09cc526032aa9f135a0928e2926e
# Parent  aad2380e0a84178812a98ac2e902703eeb2e2d6e
Add a method to trigger a sleep button push in a domain

signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>

diff -r aad2380e0a84 -r bda191b339eb domain-trigger-sleep
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/domain-trigger-sleep      Tue Jan 05 17:03:49 2010 +0000
@@ -0,0 +1,74 @@
+diff -r 0cad02e3383b xc/xc.h
+--- a/xc/xc.h  Wed Dec 23 10:58:05 2009 +0000
++++ b/xc/xc.h  Wed Dec 23 11:00:17 2009 +0000
+@@ -185,6 +185,7 @@
+ int xc_domain_set_timer_mode(int handle, unsigned int domid, int mode);
+ int xc_domain_get_acpi_s_state(int handle, unsigned int domid);
+ int xc_domain_trigger_power(int handle, unsigned int domid);
++int xc_domain_trigger_sleep(int handle, unsigned int domid);
+ 
+ #if XEN_SYSCTL_INTERFACE_VERSION >= 6
+ #define SAFEDIV(a, b)                                 (((b) >= 0) ? (a) / (b) 
: (a))
+diff -r 0cad02e3383b xc/xc.ml
+--- a/xc/xc.ml Wed Dec 23 10:58:05 2009 +0000
++++ b/xc/xc.ml Wed Dec 23 11:00:17 2009 +0000
+@@ -254,6 +254,7 @@
+ external domain_get_acpi_s_state: handle -> domid -> int = 
"stub_xc_domain_get_acpi_s_state"
+ 
+ external domain_trigger_power: handle -> domid -> unit = 
"stub_xc_domain_trigger_power"
++external domain_trigger_sleep: handle -> domid -> unit = 
"stub_xc_domain_trigger_sleep"
+ 
+ (** check if some hvm domain got pv driver or not *)
+ external hvm_check_pvdriver: handle -> domid -> bool
+diff -r 0cad02e3383b xc/xc.mli
+--- a/xc/xc.mli        Wed Dec 23 10:58:05 2009 +0000
++++ b/xc/xc.mli        Wed Dec 23 11:00:17 2009 +0000
+@@ -168,6 +168,8 @@
+ 
+ external domain_trigger_power: handle -> domid -> unit
+   = "stub_xc_domain_trigger_power"
++external domain_trigger_sleep: handle -> domid -> unit
++  = "stub_xc_domain_trigger_sleep"
+ 
+ external hvm_check_pvdriver : handle -> domid -> bool
+   = "stub_xc_hvm_check_pvdriver"
+diff -r 0cad02e3383b xc/xc_lib.c
+--- a/xc/xc_lib.c      Wed Dec 23 10:58:05 2009 +0000
++++ b/xc/xc_lib.c      Wed Dec 23 11:00:17 2009 +0000
+@@ -1562,6 +1562,19 @@
+     return ret;
+ }
+ 
++int xc_domain_trigger_sleep(int handle, unsigned int domid)
++{
++    int ret;
++
++    DECLARE_DOMCTL(XEN_DOMCTL_sendtrigger, domid);
++    domctl.u.sendtrigger.trigger = XEN_DOMCTL_SENDTRIGGER_SLEEP;
++
++      ret = do_domctl(handle, &domctl);
++      if (ret != 0)
++              xc_error_set("sleep button failed: %s", xc_error_get());
++    return ret;
++}
++
+ /*
+  * Local variables:
+  *  indent-tabs-mode: t
+diff -r 0cad02e3383b xc/xc_stubs.c
+--- a/xc/xc_stubs.c    Wed Dec 23 10:58:05 2009 +0000
++++ b/xc/xc_stubs.c    Wed Dec 23 11:00:17 2009 +0000
+@@ -1216,6 +1216,13 @@
+       CAMLreturn(Val_unit);
+ }
+ 
++CAMLprim value stub_xc_domain_trigger_sleep(value handle, value domid)
++{
++      CAMLparam2(handle, domid);
++      xc_domain_trigger_sleep(_H(handle), _D(domid));
++      CAMLreturn(Val_unit);
++}
++
+ /*
+  * Local variables:
+  *  indent-tabs-mode: t
diff -r aad2380e0a84 -r bda191b339eb series
--- a/series    Tue Dec 22 16:22:25 2009 +0000
+++ b/series    Tue Jan 05 17:03:49 2010 +0000
@@ -1,2 +1,3 @@
 dummy
 domain-trigger-power
+domain-trigger-sleep

_______________________________________________
xen-api mailing list
xen-api@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/mailman/listinfo/xen-api

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-API] [PATCH] Add a method to trigger a sleep button push in a domain, Paul Durrant <=