git.annexia.org
/
virt-df.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Generate uniquifier so that private data functions will work.
[virt-df.git]
/
lib
/
diskimage_lvm2.ml
diff --git
a/lib/diskimage_lvm2.ml
b/lib/diskimage_lvm2.ml
index
2c2fa60
..
da61600
100644
(file)
--- a/
lib/diskimage_lvm2.ml
+++ b/
lib/diskimage_lvm2.ml
@@
-107,7
+107,7
@@
let rec probe dev =
let uuid, _ = read_pv_label dev in
if !debug then
eprintf "LVM2 detected PV UUID %s\n%!" uuid;
let uuid, _ = read_pv_label dev in
if !debug then
eprintf "LVM2 detected PV UUID %s\n%!" uuid;
- { pv_cb = callbacks; pv_uuid = uuid; pv_dev = dev }
+ { pv_cb = callbacks
()
; pv_uuid = uuid; pv_dev = dev }
with exn ->
if !debug then prerr_endline (Printexc.to_string exn);
raise Not_found
with exn ->
if !debug then prerr_endline (Printexc.to_string exn);
raise Not_found
@@
-423,7
+423,7
@@
and list_lvs pvs =
(* Finally we can set up devices for the LVs. *)
let lvs =
List.map (
(* Finally we can set up devices for the LVs. *)
let lvs =
List.map (
- fun (vgname, (pvuuid, vgmeta, pvdevs, extent_size, lvs)) ->
+ fun (vgname, (pvuuid
s
, vgmeta, pvdevs, extent_size, lvs)) ->
try
List.map (
fun (lvname, segments) ->
try
List.map (
fun (lvname, segments) ->
@@
-456,11
+456,14
@@
and list_lvs pvs =
*)
and offset_is_free _ _ = false
*)
and offset_is_free _ _ = false
-and callbacks = {
- lvm_cb_name = id;
- lvm_cb_list_lvs = list_lvs;
- lvm_cb_offset_is_free = offset_is_free;
-}
+and callbacks =
+ let i = ref 0 in
+ fun () -> {
+ lvm_cb_uq = (incr i; !i);
+ lvm_cb_name = id;
+ lvm_cb_list_lvs = list_lvs;
+ lvm_cb_offset_is_free = offset_is_free;
+ }
(* Register the plugin. *)
let () = register_plugin ~lvm:probe id
(* Register the plugin. *)
let () = register_plugin ~lvm:probe id