diff options
Diffstat (limited to 'tools/debugger/pdb/Xen_domain.ml')
-rw-r--r-- | tools/debugger/pdb/Xen_domain.ml | 35 |
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" |