]> www.infradead.org Git - mtd-utils.git/commitdiff
ubifs-utils: Move 'debug_level' into ubifs_info structure
authorZhihao Cheng <chengzhihao1@huawei.com>
Mon, 11 Nov 2024 08:36:36 +0000 (16:36 +0800)
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>
Mon, 11 Nov 2024 09:32:45 +0000 (10:32 +0100)
Embed new member 'debug_level' into 'ubifs_info' structure, then global
variable 'debug_level' can be removed from mkfs.ubifs.c. Next patches
will import UBIFS libs from linux kernel, which could print messages
with different levels, then 'debug_level' can be used to control which
level messages should be printed.

Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
ubifs-utils/common/defs.h
ubifs-utils/common/ubifs.h
ubifs-utils/mkfs.ubifs/mkfs.ubifs.c

index 3dafc6dd032205e8c92f62e67bc21507c65b131e..cafc94af862d44c92485989b5064aabfec1a9a3f 100644 (file)
@@ -23,9 +23,7 @@ extern struct ubifs_info info_;
 
 enum { MKFS_PROGRAM_TYPE = 0 };
 
-extern int debug_level;
-
-#define dbg_msg(lvl, fmt, ...) do {if (debug_level >= lvl)                \
+#define dbg_msg(lvl, fmt, ...) do {if (info_.debug_level >= lvl)       \
        printf("%s: %s: " fmt "\n", PROGRAM_NAME, __FUNCTION__, ##__VA_ARGS__); \
 } while(0)
 
index 2b0ffe565fbc8e8352646ad9b7167167d939741f..58aaba9b01b55448f380516f4782e3933856e812 100644 (file)
@@ -273,6 +273,8 @@ struct ubifs_znode
  * @highest_inum: highest used inode number
  * @max_sqnum: current global sequence number
  *
+ * @debug_level: level of debug messages, 0 - none, 1 - statistics,
+ *              2 - files, 3 - more details
  * @program_type: used to identify the type of current program
  * @program_name: program name
  *
@@ -363,6 +365,7 @@ struct ubifs_info
        ino_t highest_inum;
        unsigned long long max_sqnum;
 
+       int debug_level;
        int program_type;
        const char *program_name;
 
index 22969f93cb537563db3e2933d5381e85e0b179ab..f66c6a46815cd79986ebbc9b68831eccbc944a9b 100644 (file)
@@ -138,8 +138,6 @@ struct ubifs_info info_;
 static struct ubifs_info *c = &info_;
 static libubi_t ubi;
 
-/* Debug levels are: 0 (none), 1 (statistics), 2 (files) ,3 (more details) */
-int debug_level;
 int verbose;
 int yes;
 
@@ -671,9 +669,9 @@ static int get_options(int argc, char**argv)
                        common_print_version();
                        exit(EXIT_SUCCESS);
                case 'g':
-                       debug_level = strtol(optarg, &endp, 0);
+                       c->debug_level = strtol(optarg, &endp, 0);
                        if (*endp != '\0' || endp == optarg ||
-                           debug_level < 0 || debug_level > 3)
+                           c->debug_level < 0 || c->debug_level > 3)
                                return errmsg("bad debugging level '%s'",
                                               optarg);
                        break;