architecture and node name for virtual machines running under
libvirt."
-let verbose, images = Virt_mem.start usage
+let _, images = Virt_mem.start usage
let () =
(* Print new_utsname structure from bitstring. *)
with
Not_found -> str
in
+ (* Expect the first (sysname) field to always be "Linux", which is
+ * also a good way to tell if we're synchronized to the right bit of
+ * memory.
+ *)
bitmatch bs with
- | { sysname : 65*8 : string;
+ | { "Linux\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000" : 65*8 : string;
nodename : 65*8 : string;
release : 65*8 : string;
version : 65*8 : string;
machine : 65*8 : string;
domainname : 65*8 : string } ->
- printf "%s: %s %s %s %s %s %s\n"
+ printf "%s: Linux %s %s %s %s %s\n"
name
- (truncate sysname) (truncate nodename) (truncate release)
+ (truncate nodename) (truncate release)
(truncate version) (truncate machine) (truncate domainname)
| { _ } ->
eprintf (f_"%s: unexpected system_utsname in kernel image\n")
*)
try
let addr = lookup_ksym "init_uts_ns" in
- if verbose then printf "init_uts_ns at %Lx\n" addr;
let bs = Bitmatch.bitstring_of_string (get_bytes mem addr (65*6+4)) in
(bitmatch bs with
*)
try
let addr = lookup_ksym "system_utsname" in
- if verbose then printf "system_utsname at %Lx\n" addr;
let bs =
Bitmatch.bitstring_of_string (get_bytes mem addr (65*6)) in