let (name2, (start2, size2)) = unpack_area a2 in
name=name2 && start >= start2 && Int64.add start size <= Int64.add start2 size2
-exception PVS_DONT_MATCH
+exception PVS_DONT_MATCH of string * string
(* assumes all areas stem from the same pv *)
let normalize_single_pv areas =
let merge1 (a1, acc) a2 =
let (name, (start1, size1)) = unpack_area a1
and (name2, (start2, size2)) = unpack_area a2 in
- if (name != name2) then raise PVS_DONT_MATCH
+ if (name <> name2) then raise (PVS_DONT_MATCH (name, name2))
else if (Int64.add start1 size1) = start2 then
(make_area name start1 (Int64.add size1 size2), acc)
else
lv_deactivate_internal None dm_name)
let lv_change_internal dm_name dm_map dereference_table =
- Camldm.reload dm_name dm_map dereference_table;
- Camldm.suspend dm_name;
- Camldm.resume dm_name
+ if not !Constants.dummy_mode then begin
+ Camldm.reload dm_name dm_map dereference_table;
+ Camldm.suspend dm_name;
+ Camldm.resume dm_name
+ end
let with_active_lv vg lv use_tmp fn =
let name = dm_name_of vg lv in