#define BUFSIZ 8192
#endif
+#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jbd-debug */
+int journal_enable_debug = -1;
+#endif
+
ss_request_table *extra_cmds;
const char *debug_prog_name;
int sci_idx;
* Configuration via a conf file would be
* nice
*/
- tdb_dir = getenv("E2FSPROGS_UNDO_DIR");
+ tdb_dir = ss_safe_getenv("E2FSPROGS_UNDO_DIR");
if (!tdb_dir)
tdb_dir = "/var/lib/e2fsprogs";
const char *opt_string = "niwcR:f:b:s:Vd:Dz:";
char *undo_file = NULL;
#endif
+#ifdef CONFIG_JBD_DEBUG
+ char *jbd_debug;
+#endif
if (debug_prog_name == 0)
#ifdef READ_ONLY
fprintf (stderr, "%s %s (%s)\n", debug_prog_name,
E2FSPROGS_VERSION, E2FSPROGS_DATE);
+#ifdef CONFIG_JBD_DEBUG
+ jbd_debug = ss_safe_getenv("DEBUGFS_JBD_DEBUG");
+ if (jbd_debug) {
+ int res = sscanf(jbd_debug, "%d", &journal_enable_debug);
+
+ if (res != 1) {
+ fprintf(stderr,
+ "DEBUGFS_JBD_DEBUG \"%s\" not an integer\n\n",
+ jbd_debug);
+ exit(1);
+ }
+ }
+#endif
while ((c = getopt (argc, argv, opt_string)) != EOF) {
switch (c) {
case 'R':
e2fsck_t e2fsck_global_ctx; /* Try your very best not to use this! */
-#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jfs-debug */
+#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jbd-debug */
int journal_enable_debug = -1;
#endif
} while (0)
#else
#ifdef __GNUC__
+#ifdef __KERNEL__
#define jbd_debug(f, a...) /**/
#else
+extern int journal_enable_debug;
+#define jbd_debug(n, f, a...) \
+ do { \
+ if ((n) <= journal_enable_debug) { \
+ printf("(%s, %d): %s: ", \
+ __FILE__, __LINE__, __func__); \
+ printf(f, ## a); \
+ } \
+ } while (0)
+#endif /*__KERNEL__ */
+#else
#define jbd_debug(f, ...) /**/
#endif
#endif
errcode_t ext2fs_run_ext3_journal(ext2_filsys *fs);
+#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jbd-debug */
+int journal_enable_debug = -1;
+#endif
+
/* ACL translation stuff */
#ifdef TRANSLATE_LINUX_ACLS
/*
void do_findfs(int argc, char **argv);
#endif
+#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jbd-debug */
+int journal_enable_debug = -1;
+#endif
+
static void usage(void)
{
fprintf(stderr,