#include "bitops.h" /* $(top_srcdir)/include/ */
#include "blkdev.h"
+#include "debug.h"
#include "blkid.h"
#include "list.h"
#define BLKID_DEBUG_INIT 0x8000
#define BLKID_DEBUG_ALL 0xFFFF
+#define BLKID_DEF_FLAG(m) UL_DEFINE_FLAG(BLKID_DEBUG_, m)
+
#ifdef CONFIG_BLKID_DEBUG
-extern int libblkid_debug_mask;
+
+UL_DEBUG_DECLARE_MASK(libblkid);
extern void blkid_debug_dump_dev(blkid_dev dev);
extern void blkid_debug_dump_tag(blkid_tag tag);
-# define DBG(m,x) do { \
- if ((BLKID_DEBUG_ ## m) & libblkid_debug_mask) { \
- fprintf(stderr, "%d: libblkid: %8s: ", getpid(), # m); \
- x; \
- } \
- } while (0)
+#define DBG(m, x) do { __UL_DBG(libblkid, BLKID_DEBUG_, m, x); } while (0)
+#define INIT_DBG(m) do { __UL_INIT_DEBUG(libblkid, BLKID_DEBUG_, m, LIBBLKID_DEBUG); } while (0)
+
static inline void __attribute__ ((__format__ (__printf__, 1, 2)))
blkid_debug(const char *mesg, ...)
#else /* !CONFIG_BLKID_DEBUG */
# define DBG(m,x) do { ; } while (0)
+# define INIT_DBG(m) do { ; } while (0)
#endif /* CONFIG_BLKID_DEBUG */
/* devno.c */
#include "blkidP.h"
-int libblkid_debug_mask;
+UL_DEBUG_DEFINE_MASK(libblkid);
/**
* blkid_init_debug:
*/
void blkid_init_debug(int mask)
{
- if (libblkid_debug_mask & BLKID_DEBUG_INIT)
- return;
- if (!mask) {
- char *str = getenv("LIBBLKID_DEBUG");
- if (str)
- libblkid_debug_mask = strtoul(str, 0, 0);
- } else
- libblkid_debug_mask = mask;
-
- libblkid_debug_mask |= BLKID_DEBUG_INIT;
+ INIT_DBG(mask);
if (libblkid_debug_mask != BLKID_DEBUG_INIT) {
const char *ver = NULL;
const char *date = NULL;
- DBG(INIT, blkid_debug("library debug mask: 0x%04x",
- libblkid_debug_mask));
-
blkid_get_library_version(&ver, &date);
DBG(INIT, blkid_debug("library version: %s [%s]", ver, date));
}