/src/util-linux/include/debug.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * SPDX-License-Identifier: LGPL-2.1-or-later |
3 | | * |
4 | | * Copyright (C) 2014 Ondrej Oprala <ooprala@redhat.com> |
5 | | * Copyright (C) 2014 Karel Zak <kzak@redhat.com> |
6 | | * |
7 | | * This file may be distributed under the terms of the |
8 | | * GNU Lesser General Public License. |
9 | | */ |
10 | | #ifndef UTIL_LINUX_DEBUG_H |
11 | | #define UTIL_LINUX_DEBUG_H |
12 | | |
13 | | |
14 | | /* |
15 | | * util-linux debug macros |
16 | | * |
17 | | * The debug stuff is based on <name>_debug_mask that controls what outputs is |
18 | | * expected. The mask is usually initialized by <NAME>_DEBUG= env.variable |
19 | | * |
20 | | * After successful initialization the flag <PREFIX>_DEBUG_INIT is always set |
21 | | * to the mask (this flag is required). The <PREFIX> is usually library API |
22 | | * prefix (e.g. MNT_) or program name (e.g. CFDISK_) |
23 | | * |
24 | | * In the code is possible to use |
25 | | * |
26 | | * DBG(FOO, ul_debug("this is output for foo")); |
27 | | * |
28 | | * where for the FOO has to be defined <PREFIX>_DEBUG_FOO. |
29 | | * |
30 | | * It's possible to initialize the mask by comma delimited strings with |
31 | | * subsystem names (e.g. "LIBMOUNT_DEBUG=options,tab"). In this case is |
32 | | * necessary to define mask names array. This functionality is optional. |
33 | | * |
34 | | * It's strongly recommended to use UL_* macros to define/declare/use |
35 | | * the debug stuff. |
36 | | * |
37 | | * See disk-utils/cfdisk.c: cfdisk_init_debug() for programs debug |
38 | | * or libmount/src/init.c: mnt_init_debug() for library debug |
39 | | * |
40 | | */ |
41 | | |
42 | | #include <stdarg.h> |
43 | | #include <string.h> |
44 | | |
45 | | struct ul_debug_maskname { |
46 | | const char *name; |
47 | | int mask; |
48 | | const char *help; |
49 | | }; |
50 | | #define UL_DEBUG_EMPTY_MASKNAMES {{ NULL, 0, NULL }} |
51 | | #define UL_DEBUG_DEFINE_MASKNAMES(m) static const struct ul_debug_maskname m ## _masknames[] |
52 | | #define UL_DEBUG_MASKNAMES(m) m ## _masknames |
53 | | |
54 | 0 | #define UL_DEBUG_MASK(m) m ## _debug_mask |
55 | | #define UL_DEBUG_DEFINE_MASK(m) int UL_DEBUG_MASK(m) |
56 | | #define UL_DEBUG_DECLARE_MASK(m) extern UL_DEBUG_DEFINE_MASK(m) |
57 | | |
58 | | /* |
59 | | * Internal mask flags (above 0xffffff) |
60 | | */ |
61 | 0 | #define __UL_DEBUG_FL_NOADDR (1 << 24) /* Don't print object address */ |
62 | | |
63 | | |
64 | | /* l - library name, p - flag prefix, m - flag postfix, x - function */ |
65 | | #define __UL_DBG(l, p, m, x) \ |
66 | 18.9M | do { \ |
67 | 18.9M | if ((p ## m) & l ## _debug_mask) { \ |
68 | 0 | fprintf(stderr, "%d: %s: %8s: ", getpid(), # l, # m); \ |
69 | 0 | x; \ |
70 | 0 | } \ |
71 | 18.9M | } while (0) |
72 | | |
73 | | #define __UL_DBG_CALL(l, p, m, x) \ |
74 | 1.50k | do { \ |
75 | 1.50k | if ((p ## m) & l ## _debug_mask) { \ |
76 | 0 | x; \ |
77 | 0 | } \ |
78 | 1.50k | } while (0) |
79 | | |
80 | | #define __UL_DBG_FLUSH(l, p) \ |
81 | | do { \ |
82 | | if (l ## _debug_mask && \ |
83 | | l ## _debug_mask != p ## INIT) { \ |
84 | | fflush(stderr); \ |
85 | | } \ |
86 | | } while (0) |
87 | | |
88 | | #define __UL_INIT_DEBUG_FROM_STRING(lib, pref, mask, str) \ |
89 | 6 | do { \ |
90 | 6 | if (lib ## _debug_mask & pref ## INIT) \ |
91 | 6 | ; \ |
92 | 6 | else if (!mask && str) { \ |
93 | 0 | lib ## _debug_mask = ul_debug_parse_mask(lib ## _masknames, str); \ |
94 | 0 | } else \ |
95 | 6 | lib ## _debug_mask = mask; \ |
96 | 6 | if (lib ## _debug_mask) { \ |
97 | 0 | if (getuid() != geteuid() || getgid() != getegid()) { \ |
98 | 0 | lib ## _debug_mask |= __UL_DEBUG_FL_NOADDR; \ |
99 | 0 | fprintf(stderr, "%d: %s: don't print memory addresses (SUID executable).\n", getpid(), # lib); \ |
100 | 0 | } \ |
101 | 0 | } \ |
102 | 6 | lib ## _debug_mask |= pref ## INIT; \ |
103 | 6 | } while (0) |
104 | | |
105 | | |
106 | | #define __UL_INIT_DEBUG_FROM_ENV(lib, pref, mask, env) \ |
107 | 6 | do { \ |
108 | 6 | const char *envstr = mask ? NULL : getenv(# env); \ |
109 | 6 | __UL_INIT_DEBUG_FROM_STRING(lib, pref, mask, envstr); \ |
110 | 6 | } while (0) |
111 | | |
112 | | |
113 | | |
114 | | static inline void __attribute__ ((__format__ (__printf__, 1, 2))) |
115 | | ul_debug(const char *mesg, ...) |
116 | 0 | { |
117 | 0 | va_list ap; |
118 | 0 | va_start(ap, mesg); |
119 | 0 | vfprintf(stderr, mesg, ap); |
120 | 0 | va_end(ap); |
121 | 0 | fputc('\n', stderr); |
122 | 0 | } Unexecuted instantiation: probe.c:ul_debug Unexecuted instantiation: tag.c:ul_debug Unexecuted instantiation: verify.c:ul_debug Unexecuted instantiation: partitions.c:ul_debug Unexecuted instantiation: sgi.c:ul_debug Unexecuted instantiation: solaris_x86.c:ul_debug Unexecuted instantiation: sun.c:ul_debug Unexecuted instantiation: ultrix.c:ul_debug Unexecuted instantiation: unixware.c:ul_debug Unexecuted instantiation: superblocks.c:ul_debug Unexecuted instantiation: swap.c:ul_debug Unexecuted instantiation: sysv.c:ul_debug Unexecuted instantiation: ubi.c:ul_debug Unexecuted instantiation: ubifs.c:ul_debug Unexecuted instantiation: udf.c:ul_debug Unexecuted instantiation: ufs.c:ul_debug Unexecuted instantiation: vdo.c:ul_debug Unexecuted instantiation: vfat.c:ul_debug Unexecuted instantiation: via_raid.c:ul_debug Unexecuted instantiation: vmfs.c:ul_debug Unexecuted instantiation: vxfs.c:ul_debug Unexecuted instantiation: xfs.c:ul_debug Unexecuted instantiation: zfs.c:ul_debug Unexecuted instantiation: zonefs.c:ul_debug Unexecuted instantiation: erofs.c:ul_debug Unexecuted instantiation: topology.c:ul_debug Unexecuted instantiation: dm.c:ul_debug Unexecuted instantiation: evms.c:ul_debug Unexecuted instantiation: ioctl.c:ul_debug Unexecuted instantiation: lvm.c:ul_debug Unexecuted instantiation: md.c:ul_debug Unexecuted instantiation: sysfs.c:ul_debug Unexecuted instantiation: path.c:ul_debug Unexecuted instantiation: init.c:ul_debug Unexecuted instantiation: dev.c:ul_debug Unexecuted instantiation: devname.c:ul_debug Unexecuted instantiation: devno.c:ul_debug Unexecuted instantiation: read.c:ul_debug Unexecuted instantiation: save.c:ul_debug Unexecuted instantiation: aix.c:ul_debug Unexecuted instantiation: atari.c:ul_debug Unexecuted instantiation: bsd.c:ul_debug Unexecuted instantiation: dos.c:ul_debug Unexecuted instantiation: gpt.c:ul_debug Unexecuted instantiation: mac.c:ul_debug Unexecuted instantiation: minix.c:ul_debug Unexecuted instantiation: adaptec_raid.c:ul_debug Unexecuted instantiation: apfs.c:ul_debug Unexecuted instantiation: bcache.c:ul_debug Unexecuted instantiation: befs.c:ul_debug Unexecuted instantiation: bfs.c:ul_debug Unexecuted instantiation: bitlocker.c:ul_debug Unexecuted instantiation: bluestore.c:ul_debug Unexecuted instantiation: btrfs.c:ul_debug Unexecuted instantiation: cs_fvault2.c:ul_debug Unexecuted instantiation: cramfs.c:ul_debug Unexecuted instantiation: ddf_raid.c:ul_debug Unexecuted instantiation: drbd.c:ul_debug Unexecuted instantiation: drbdproxy_datalog.c:ul_debug Unexecuted instantiation: drbdmanage.c:ul_debug Unexecuted instantiation: exfat.c:ul_debug Unexecuted instantiation: exfs.c:ul_debug Unexecuted instantiation: ext.c:ul_debug Unexecuted instantiation: f2fs.c:ul_debug Unexecuted instantiation: gfs.c:ul_debug Unexecuted instantiation: hfs.c:ul_debug Unexecuted instantiation: highpoint_raid.c:ul_debug Unexecuted instantiation: hpfs.c:ul_debug Unexecuted instantiation: iso9660.c:ul_debug Unexecuted instantiation: isw_raid.c:ul_debug Unexecuted instantiation: jfs.c:ul_debug Unexecuted instantiation: jmicron_raid.c:ul_debug Unexecuted instantiation: linux_raid.c:ul_debug Unexecuted instantiation: lsi_raid.c:ul_debug Unexecuted instantiation: luks.c:ul_debug Unexecuted instantiation: mpool.c:ul_debug Unexecuted instantiation: netware.c:ul_debug Unexecuted instantiation: nilfs.c:ul_debug Unexecuted instantiation: ntfs.c:ul_debug Unexecuted instantiation: refs.c:ul_debug Unexecuted instantiation: nvidia_raid.c:ul_debug Unexecuted instantiation: ocfs.c:ul_debug Unexecuted instantiation: promise_raid.c:ul_debug Unexecuted instantiation: reiserfs.c:ul_debug Unexecuted instantiation: romfs.c:ul_debug Unexecuted instantiation: silicon_raid.c:ul_debug Unexecuted instantiation: squashfs.c:ul_debug Unexecuted instantiation: stratis.c:ul_debug Unexecuted instantiation: cache.c:ul_debug Unexecuted instantiation: config.c:ul_debug |
123 | | |
124 | | static inline int ul_debug_parse_mask( |
125 | | const struct ul_debug_maskname flagnames[], |
126 | | const char *mask) |
127 | 0 | { |
128 | 0 | int res; |
129 | 0 | char *ptr; |
130 | | |
131 | | /* let's check for a numeric mask first */ |
132 | 0 | res = strtoul(mask, &ptr, 0); |
133 | | |
134 | | /* perhaps it's a comma-separated string? */ |
135 | 0 | if (ptr && *ptr && flagnames && flagnames[0].name) { |
136 | 0 | char *msbuf, *ms, *name; |
137 | 0 | res = 0; |
138 | |
|
139 | 0 | ms = msbuf = strdup(mask); |
140 | 0 | if (!ms) |
141 | 0 | return res; |
142 | | |
143 | 0 | while ((name = strtok_r(ms, ",", &ptr))) { |
144 | 0 | const struct ul_debug_maskname *d; |
145 | 0 | ms = ptr; |
146 | |
|
147 | 0 | for (d = flagnames; d && d->name; d++) { |
148 | 0 | if (strcmp(name, d->name) == 0) { |
149 | 0 | res |= d->mask; |
150 | 0 | break; |
151 | 0 | } |
152 | 0 | } |
153 | | /* nothing else we can do by OR-ing the mask */ |
154 | 0 | if (res == 0xffff) |
155 | 0 | break; |
156 | 0 | } |
157 | 0 | free(msbuf); |
158 | 0 | } else if (ptr && strcmp(ptr, "all") == 0) |
159 | 0 | res = 0xffff; |
160 | | |
161 | 0 | return res; |
162 | 0 | } Unexecuted instantiation: probe.c:ul_debug_parse_mask Unexecuted instantiation: tag.c:ul_debug_parse_mask Unexecuted instantiation: verify.c:ul_debug_parse_mask Unexecuted instantiation: partitions.c:ul_debug_parse_mask Unexecuted instantiation: sgi.c:ul_debug_parse_mask Unexecuted instantiation: solaris_x86.c:ul_debug_parse_mask Unexecuted instantiation: sun.c:ul_debug_parse_mask Unexecuted instantiation: ultrix.c:ul_debug_parse_mask Unexecuted instantiation: unixware.c:ul_debug_parse_mask Unexecuted instantiation: superblocks.c:ul_debug_parse_mask Unexecuted instantiation: swap.c:ul_debug_parse_mask Unexecuted instantiation: sysv.c:ul_debug_parse_mask Unexecuted instantiation: ubi.c:ul_debug_parse_mask Unexecuted instantiation: ubifs.c:ul_debug_parse_mask Unexecuted instantiation: udf.c:ul_debug_parse_mask Unexecuted instantiation: ufs.c:ul_debug_parse_mask Unexecuted instantiation: vdo.c:ul_debug_parse_mask Unexecuted instantiation: vfat.c:ul_debug_parse_mask Unexecuted instantiation: via_raid.c:ul_debug_parse_mask Unexecuted instantiation: vmfs.c:ul_debug_parse_mask Unexecuted instantiation: vxfs.c:ul_debug_parse_mask Unexecuted instantiation: xfs.c:ul_debug_parse_mask Unexecuted instantiation: zfs.c:ul_debug_parse_mask Unexecuted instantiation: zonefs.c:ul_debug_parse_mask Unexecuted instantiation: erofs.c:ul_debug_parse_mask Unexecuted instantiation: topology.c:ul_debug_parse_mask Unexecuted instantiation: dm.c:ul_debug_parse_mask Unexecuted instantiation: evms.c:ul_debug_parse_mask Unexecuted instantiation: ioctl.c:ul_debug_parse_mask Unexecuted instantiation: lvm.c:ul_debug_parse_mask Unexecuted instantiation: md.c:ul_debug_parse_mask Unexecuted instantiation: sysfs.c:ul_debug_parse_mask Unexecuted instantiation: path.c:ul_debug_parse_mask Unexecuted instantiation: init.c:ul_debug_parse_mask Unexecuted instantiation: dev.c:ul_debug_parse_mask Unexecuted instantiation: devname.c:ul_debug_parse_mask Unexecuted instantiation: devno.c:ul_debug_parse_mask Unexecuted instantiation: read.c:ul_debug_parse_mask Unexecuted instantiation: save.c:ul_debug_parse_mask Unexecuted instantiation: aix.c:ul_debug_parse_mask Unexecuted instantiation: atari.c:ul_debug_parse_mask Unexecuted instantiation: bsd.c:ul_debug_parse_mask Unexecuted instantiation: dos.c:ul_debug_parse_mask Unexecuted instantiation: gpt.c:ul_debug_parse_mask Unexecuted instantiation: mac.c:ul_debug_parse_mask Unexecuted instantiation: minix.c:ul_debug_parse_mask Unexecuted instantiation: adaptec_raid.c:ul_debug_parse_mask Unexecuted instantiation: apfs.c:ul_debug_parse_mask Unexecuted instantiation: bcache.c:ul_debug_parse_mask Unexecuted instantiation: befs.c:ul_debug_parse_mask Unexecuted instantiation: bfs.c:ul_debug_parse_mask Unexecuted instantiation: bitlocker.c:ul_debug_parse_mask Unexecuted instantiation: bluestore.c:ul_debug_parse_mask Unexecuted instantiation: btrfs.c:ul_debug_parse_mask Unexecuted instantiation: cs_fvault2.c:ul_debug_parse_mask Unexecuted instantiation: cramfs.c:ul_debug_parse_mask Unexecuted instantiation: ddf_raid.c:ul_debug_parse_mask Unexecuted instantiation: drbd.c:ul_debug_parse_mask Unexecuted instantiation: drbdproxy_datalog.c:ul_debug_parse_mask Unexecuted instantiation: drbdmanage.c:ul_debug_parse_mask Unexecuted instantiation: exfat.c:ul_debug_parse_mask Unexecuted instantiation: exfs.c:ul_debug_parse_mask Unexecuted instantiation: ext.c:ul_debug_parse_mask Unexecuted instantiation: f2fs.c:ul_debug_parse_mask Unexecuted instantiation: gfs.c:ul_debug_parse_mask Unexecuted instantiation: hfs.c:ul_debug_parse_mask Unexecuted instantiation: highpoint_raid.c:ul_debug_parse_mask Unexecuted instantiation: hpfs.c:ul_debug_parse_mask Unexecuted instantiation: iso9660.c:ul_debug_parse_mask Unexecuted instantiation: isw_raid.c:ul_debug_parse_mask Unexecuted instantiation: jfs.c:ul_debug_parse_mask Unexecuted instantiation: jmicron_raid.c:ul_debug_parse_mask Unexecuted instantiation: linux_raid.c:ul_debug_parse_mask Unexecuted instantiation: lsi_raid.c:ul_debug_parse_mask Unexecuted instantiation: luks.c:ul_debug_parse_mask Unexecuted instantiation: mpool.c:ul_debug_parse_mask Unexecuted instantiation: netware.c:ul_debug_parse_mask Unexecuted instantiation: nilfs.c:ul_debug_parse_mask Unexecuted instantiation: ntfs.c:ul_debug_parse_mask Unexecuted instantiation: refs.c:ul_debug_parse_mask Unexecuted instantiation: nvidia_raid.c:ul_debug_parse_mask Unexecuted instantiation: ocfs.c:ul_debug_parse_mask Unexecuted instantiation: promise_raid.c:ul_debug_parse_mask Unexecuted instantiation: reiserfs.c:ul_debug_parse_mask Unexecuted instantiation: romfs.c:ul_debug_parse_mask Unexecuted instantiation: silicon_raid.c:ul_debug_parse_mask Unexecuted instantiation: squashfs.c:ul_debug_parse_mask Unexecuted instantiation: stratis.c:ul_debug_parse_mask Unexecuted instantiation: cache.c:ul_debug_parse_mask Unexecuted instantiation: config.c:ul_debug_parse_mask |
163 | | |
164 | | static inline void ul_debug_print_masks( |
165 | | const char *env, |
166 | | const struct ul_debug_maskname flagnames[]) |
167 | 0 | { |
168 | 0 | const struct ul_debug_maskname *d; |
169 | |
|
170 | 0 | if (!flagnames) |
171 | 0 | return; |
172 | | |
173 | 0 | fprintf(stderr, "Available \"%s=<name>[,...]|<mask>\" debug masks:\n", |
174 | 0 | env); |
175 | 0 | for (d = flagnames; d && d->name; d++) { |
176 | 0 | if (!d->help) |
177 | 0 | continue; |
178 | 0 | fprintf(stderr, " %-8s [0x%06x] : %s\n", |
179 | 0 | d->name, d->mask, d->help); |
180 | 0 | } |
181 | 0 | } Unexecuted instantiation: probe.c:ul_debug_print_masks Unexecuted instantiation: tag.c:ul_debug_print_masks Unexecuted instantiation: verify.c:ul_debug_print_masks Unexecuted instantiation: partitions.c:ul_debug_print_masks Unexecuted instantiation: sgi.c:ul_debug_print_masks Unexecuted instantiation: solaris_x86.c:ul_debug_print_masks Unexecuted instantiation: sun.c:ul_debug_print_masks Unexecuted instantiation: ultrix.c:ul_debug_print_masks Unexecuted instantiation: unixware.c:ul_debug_print_masks Unexecuted instantiation: superblocks.c:ul_debug_print_masks Unexecuted instantiation: swap.c:ul_debug_print_masks Unexecuted instantiation: sysv.c:ul_debug_print_masks Unexecuted instantiation: ubi.c:ul_debug_print_masks Unexecuted instantiation: ubifs.c:ul_debug_print_masks Unexecuted instantiation: udf.c:ul_debug_print_masks Unexecuted instantiation: ufs.c:ul_debug_print_masks Unexecuted instantiation: vdo.c:ul_debug_print_masks Unexecuted instantiation: vfat.c:ul_debug_print_masks Unexecuted instantiation: via_raid.c:ul_debug_print_masks Unexecuted instantiation: vmfs.c:ul_debug_print_masks Unexecuted instantiation: vxfs.c:ul_debug_print_masks Unexecuted instantiation: xfs.c:ul_debug_print_masks Unexecuted instantiation: zfs.c:ul_debug_print_masks Unexecuted instantiation: zonefs.c:ul_debug_print_masks Unexecuted instantiation: erofs.c:ul_debug_print_masks Unexecuted instantiation: topology.c:ul_debug_print_masks Unexecuted instantiation: dm.c:ul_debug_print_masks Unexecuted instantiation: evms.c:ul_debug_print_masks Unexecuted instantiation: ioctl.c:ul_debug_print_masks Unexecuted instantiation: lvm.c:ul_debug_print_masks Unexecuted instantiation: md.c:ul_debug_print_masks Unexecuted instantiation: sysfs.c:ul_debug_print_masks Unexecuted instantiation: path.c:ul_debug_print_masks Unexecuted instantiation: init.c:ul_debug_print_masks Unexecuted instantiation: dev.c:ul_debug_print_masks Unexecuted instantiation: devname.c:ul_debug_print_masks Unexecuted instantiation: devno.c:ul_debug_print_masks Unexecuted instantiation: read.c:ul_debug_print_masks Unexecuted instantiation: save.c:ul_debug_print_masks Unexecuted instantiation: aix.c:ul_debug_print_masks Unexecuted instantiation: atari.c:ul_debug_print_masks Unexecuted instantiation: bsd.c:ul_debug_print_masks Unexecuted instantiation: dos.c:ul_debug_print_masks Unexecuted instantiation: gpt.c:ul_debug_print_masks Unexecuted instantiation: mac.c:ul_debug_print_masks Unexecuted instantiation: minix.c:ul_debug_print_masks Unexecuted instantiation: adaptec_raid.c:ul_debug_print_masks Unexecuted instantiation: apfs.c:ul_debug_print_masks Unexecuted instantiation: bcache.c:ul_debug_print_masks Unexecuted instantiation: befs.c:ul_debug_print_masks Unexecuted instantiation: bfs.c:ul_debug_print_masks Unexecuted instantiation: bitlocker.c:ul_debug_print_masks Unexecuted instantiation: bluestore.c:ul_debug_print_masks Unexecuted instantiation: btrfs.c:ul_debug_print_masks Unexecuted instantiation: cs_fvault2.c:ul_debug_print_masks Unexecuted instantiation: cramfs.c:ul_debug_print_masks Unexecuted instantiation: ddf_raid.c:ul_debug_print_masks Unexecuted instantiation: drbd.c:ul_debug_print_masks Unexecuted instantiation: drbdproxy_datalog.c:ul_debug_print_masks Unexecuted instantiation: drbdmanage.c:ul_debug_print_masks Unexecuted instantiation: exfat.c:ul_debug_print_masks Unexecuted instantiation: exfs.c:ul_debug_print_masks Unexecuted instantiation: ext.c:ul_debug_print_masks Unexecuted instantiation: f2fs.c:ul_debug_print_masks Unexecuted instantiation: gfs.c:ul_debug_print_masks Unexecuted instantiation: hfs.c:ul_debug_print_masks Unexecuted instantiation: highpoint_raid.c:ul_debug_print_masks Unexecuted instantiation: hpfs.c:ul_debug_print_masks Unexecuted instantiation: iso9660.c:ul_debug_print_masks Unexecuted instantiation: isw_raid.c:ul_debug_print_masks Unexecuted instantiation: jfs.c:ul_debug_print_masks Unexecuted instantiation: jmicron_raid.c:ul_debug_print_masks Unexecuted instantiation: linux_raid.c:ul_debug_print_masks Unexecuted instantiation: lsi_raid.c:ul_debug_print_masks Unexecuted instantiation: luks.c:ul_debug_print_masks Unexecuted instantiation: mpool.c:ul_debug_print_masks Unexecuted instantiation: netware.c:ul_debug_print_masks Unexecuted instantiation: nilfs.c:ul_debug_print_masks Unexecuted instantiation: ntfs.c:ul_debug_print_masks Unexecuted instantiation: refs.c:ul_debug_print_masks Unexecuted instantiation: nvidia_raid.c:ul_debug_print_masks Unexecuted instantiation: ocfs.c:ul_debug_print_masks Unexecuted instantiation: promise_raid.c:ul_debug_print_masks Unexecuted instantiation: reiserfs.c:ul_debug_print_masks Unexecuted instantiation: romfs.c:ul_debug_print_masks Unexecuted instantiation: silicon_raid.c:ul_debug_print_masks Unexecuted instantiation: squashfs.c:ul_debug_print_masks Unexecuted instantiation: stratis.c:ul_debug_print_masks Unexecuted instantiation: cache.c:ul_debug_print_masks Unexecuted instantiation: config.c:ul_debug_print_masks |
182 | | |
183 | | #endif /* UTIL_LINUX_DEBUG_H */ |