From fd38ef9564528b3d4ddbe4aa9b31f8a7999f956f Mon Sep 17 00:00:00 2001
From: Manuel Franceschini <manuel.franceschini@gmail.com>
Date: Mon, 28 Apr 2008 12:15:38 +0000
Subject: [PATCH] Add check for major/minor in _FormatBlockDevInfo

bdev.FileStorage does not have major or minor fields, so gnt-instance
info for file backed instances fails with a TypeError. This patch
adds checks to prevent that and print 'N/A' instead.

Reviewed-by: imsnah
---
 scripts/gnt-instance | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/scripts/gnt-instance b/scripts/gnt-instance
index 43c4506ee..720c90c8f 100755
--- a/scripts/gnt-instance
+++ b/scripts/gnt-instance
@@ -539,7 +539,17 @@ def _FormatBlockDevInfo(buf, dev, indent_level):
       buf.write("not active\n")
     else:
       (path, major, minor, syncp, estt, degr, ldisk) = status
-      buf.write("%s (%d:%d)" % (path, major, minor))
+      if major is None:
+        major_string = "N/A"
+      else:
+        major_string = str(major)
+
+      if minor is None:
+        minor_string = "N/A"
+      else:
+        minor_string = str(minor)
+
+      buf.write("%s (%s:%s)" % (path, major_string, minor_string))
       if dtype in (constants.LD_MD_R1, constants.LD_DRBD7, constants.LD_DRBD8):
         if syncp is not None:
           sync_text = "*RECOVERING* %5.2f%%," % syncp
-- 
GitLab