aboutsummaryrefslogtreecommitdiffstats
path: root/tools/debugger/pdb/Xen_domain.ml
diff options
context:
space:
mode:
Diffstat (limited to 'tools/debugger/pdb/Xen_domain.ml')
-rw-r--r--tools/debugger/pdb/Xen_domain.ml35
1 files changed, 35 insertions, 0 deletions
diff --git a/tools/debugger/pdb/Xen_domain.ml b/tools/debugger/pdb/Xen_domain.ml
new file mode 100644
index 0000000000..d014466448
--- /dev/null
+++ b/tools/debugger/pdb/Xen_domain.ml
@@ -0,0 +1,35 @@
+
+type context_t =
+{
+ mutable domain : int;
+ mutable evtchn : int;
+ mutable pdb_front_ring : int32
+}
+
+let default_context = { domain = 0; evtchn = 0; pdb_front_ring = 0l }
+
+let new_context dom evtchn ring =
+ {domain = dom; evtchn = evtchn; pdb_front_ring = ring}
+
+let set_domain ctx value =
+ ctx.domain <- value
+
+let set_evtchn ctx value =
+ ctx.evtchn <- value
+
+let set_ring ctx value =
+ ctx.pdb_front_ring <- value
+
+let get_domain ctx =
+ ctx.domain
+
+let get_evtchn ctx =
+ ctx.evtchn
+
+let get_ring ctx =
+ ctx.pdb_front_ring
+
+let string_of_context ctx =
+ Printf.sprintf "{xen domain assist} domain: %d" ctx.domain
+
+external process_response : int32 -> unit = "process_handle_response"