Instead of calling NBD.connect directly, use our helper function
Utils.with_nbd_connect_unix.  This changes the semantics slightly
since errors in shutdown/close will no longer be ignored, but I would
argue that we want to see those errors since they would indicate
something going wrong in the NBD server that we'd probably want to
know about.
---
 output/output.ml | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/output/output.ml b/output/output.ml
index 2e51743ba2..943c9e8b32 100644
--- a/output/output.ml
+++ b/output/output.ml
@@ -58,13 +58,7 @@ let get_disks dir =
   let rec loop acc i =
     let socket = sprintf "%s/in%d" dir i in
     if Sys.file_exists socket then (
-      let nbd = NBD.create () in
-      NBD.connect_unix nbd socket;
-      let size = NBD.get_size nbd in
-      (try
-         NBD.shutdown nbd;
-         NBD.close nbd
-       with NBD.Error _ -> ());
+      let size : int64 = Utils.with_nbd_connect_unix ~socket NBD.get_size in
       loop ((i, size) :: acc) (i+1)
     )
     else
-- 
2.32.0