/*
* Debug
*/
-#define FDISK_DEBUG_INIT (1 << 1)
-#define FDISK_DEBUG_CXT (1 << 2)
-#define FDISK_DEBUG_LABEL (1 << 3)
-#define FDISK_DEBUG_ASK (1 << 4)
-#define FDISK_DEBUG_FRONTEND (1 << 5)
-#define FDISK_DEBUG_PART (1 << 6)
-#define FDISK_DEBUG_PARTTYPE (1 << 7)
-#define FDISK_DEBUG_TAB (1 << 8)
-#define FDISK_DEBUG_SCRIPT (1 << 9)
-#define FDISK_DEBUG_ALL 0xFFFF
+#define LIBFDISK_DEBUG_HELP (1 << 0)
+#define LIBFDISK_DEBUG_INIT (1 << 1)
+#define LIBFDISK_DEBUG_CXT (1 << 2)
+#define LIBFDISK_DEBUG_LABEL (1 << 3)
+#define LIBFDISK_DEBUG_ASK (1 << 4)
+#define LIBFDISK_DEBUG_PART (1 << 6)
+#define LIBFDISK_DEBUG_PARTTYPE (1 << 7)
+#define LIBFDISK_DEBUG_TAB (1 << 8)
+#define LIBFDISK_DEBUG_SCRIPT (1 << 9)
+#define LIBFDISK_DEBUG_ALL 0xFFFF
UL_DEBUG_DECLARE_MASK(libfdisk);
-#define DBG(m, x) __UL_DBG(libfdisk, FDISK_DEBUG_, m, x)
-#define ON_DBG(m, x) __UL_DBG_CALL(libfdisk, FDISK_DEBUG_, m, x)
-#define DBG_FLUSH __UL_DBG_FLUSH(libfdisk, FDISK_DEBUG_)
+#define DBG(m, x) __UL_DBG(libfdisk, LIBFDISK_DEBUG_, m, x)
+#define ON_DBG(m, x) __UL_DBG_CALL(libfdisk, LIBFDISK_DEBUG_, m, x)
+#define DBG_FLUSH __UL_DBG_FLUSH(libfdisk, LIBFDISK_DEBUG_)
#ifdef TEST_PROGRAM
struct fdisk_test {
UL_DEBUG_DEFINE_MASK(libfdisk);
UL_DEBUG_DEFINE_MASKNAMES(libfdisk) =
{
- { "all", FDISK_DEBUG_ALL },
- { "ask", FDISK_DEBUG_ASK},
- { "cxt", FDISK_DEBUG_CXT },
- { "frontend", FDISK_DEBUG_FRONTEND },
- { "init", FDISK_DEBUG_INIT },
- { "label", FDISK_DEBUG_LABEL },
- { "part", FDISK_DEBUG_PART },
- { "parttype", FDISK_DEBUG_PARTTYPE },
- { "script", FDISK_DEBUG_SCRIPT},
- { "tab", FDISK_DEBUG_TAB},
+ { "all", LIBFDISK_DEBUG_ALL, "info about all subsystems" },
+ { "ask", LIBFDISK_DEBUG_ASK, "fdisk dialogs" },
+ { "help", LIBFDISK_DEBUG_HELP, "this help" },
+ { "cxt", LIBFDISK_DEBUG_CXT, "library context (handler)" },
+ { "label", LIBFDISK_DEBUG_LABEL, "disk label utils" },
+ { "part", LIBFDISK_DEBUG_PART, "partition utils" },
+ { "parttype", LIBFDISK_DEBUG_PARTTYPE,"partition type utils" },
+ { "script", LIBFDISK_DEBUG_SCRIPT, "sfdisk-like scripts" },
+ { "tab", LIBFDISK_DEBUG_TAB, "table utils"},
{ NULL, 0 }
};
/**
* @mask: debug mask (0xffff to enable full debuging)
*
* If the @mask is not specified then this function reads
- * FDISK_DEBUG environment variable to get the mask.
+ * LIBFDISK_DEBUG environment variable to get the mask.
*
* Already initialized debugging stuff cannot be changed. It does not
* have effect to call this function twice.
*/
void fdisk_init_debug(int mask)
{
- __UL_INIT_DEBUG(libfdisk, FDISK_DEBUG_, mask, LIBFDISK_DEBUG);
+ if (libfdisk_debug_mask)
+ return;
+
+ __UL_INIT_DEBUG(libfdisk, LIBFDISK_DEBUG_, mask, LIBFDISK_DEBUG);
+
+
+ if (libfdisk_debug_mask != LIBFDISK_DEBUG_INIT
+ && libfdisk_debug_mask != (LIBFDISK_DEBUG_HELP|LIBFDISK_DEBUG_INIT)) {
+
+ DBG(INIT, ul_debug("library debug mask: 0x%04x", libfdisk_debug_mask));
+ }
+
+ ON_DBG(HELP, ul_debug_print_masks("LIBFDISK_DEBUG",
+ UL_DEBUG_MASKNAMES(libfdisk)));
}