]> xenbits.xensource.com Git - xenclient/toolstack.git/commitdiff
Added get-acpi-state command
authorTomasz Wroblewski <tomasz.wroblewski@citrix.com>
Mon, 16 Nov 2009 15:50:06 +0000 (15:50 +0000)
committerTomasz Wroblewski <tomasz.wroblewski@citrix.com>
Mon, 16 Nov 2009 15:50:06 +0000 (15:50 +0000)
xenvm/tasks.ml
xenvm/xenvm.ml

index 5a7fab517f18023bedacf57898776b4be899f77b..edba10e9c505e19a5d8c9fa9ded43404ae07e3a3 100644 (file)
@@ -28,6 +28,7 @@ type action =
        | Checkpoint
        | GetDomid
        | GetStatus
+       | GetAcpiState
        | GetVNC
        | Get
        | Set
@@ -93,6 +94,8 @@ let actions_table = [
        (S3Suspend,  mk_desc_args "s3suspend" [ "timeout", O, ArgInt ]);
        (GetDomid,   mk_desc_nb "get-domid");
        (GetStatus,  mk_desc_nb "get-status");
+        (GetAcpiState, mk_desc_nb "get-acpi-state");
+
        (GetVNC,     mk_desc_nb "get-vnc");
        (Trigger,    mk_desc_args "trigger" [ "params", R, ArgString ]);
        (Device,     mk_desc_args "device" [ "type", R, ArgString;
index 387c4e2e6104c8c3f07c4977287f940620a0bf07..37883bd3670bb0a6fa52fc5be4329d9d43f20415 100644 (file)
@@ -456,6 +456,9 @@ let do_task state (task, args) =
                Xenvmlib.Ok
        | Tasks.GetDomid -> Xenvmlib.Msg (string_of_int state.vm_domid)
        | Tasks.GetStatus -> Xenvmlib.Msg (string_of_vmlifestate state.vm_lifestate)
+       | Tasks.GetAcpiState ->
+               let acpi = with_xc (fun xc -> Xc.domain_get_acpi_s_state xc state.vm_domid) in
+               Xenvmlib.Msg (string_of_int acpi)
        | Tasks.GetVNC -> Xenvmlib.Msg (string_of_int state.vm_vnc_port)
        | Tasks.AddDisk ->
                let path = Tasks.args_get_string args "path" in