[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210616045334.1655288-2-ebiggers@kernel.org>
Date: Tue, 15 Jun 2021 21:53:29 -0700
From: Eric Biggers <ebiggers@...nel.org>
To: linux-ext4@...r.kernel.org
Subject: [PATCH 1/6] libext2fs: improve jbd_debug() implementation
From: Eric Biggers <ebiggers@...gle.com>
Make jbd_debug() do format string checking (but still get compiled away
to nothing) when --enable-jbd-debug isn't specified, similar to
commit d556435156b7 ("jbd2: avoid -Wempty-body warnings") on the kernel
side. This should prevent --enable-jbd-debug from getting broken due to
bad jbd_debug() statements. It also eliminates a -Wunused-variable
warning where a variable was only used in a jbd_debug() statement.
Also remove an alternative definition of jbd_debug() that was
conditional on CONFIG_JBD_DEBUG && !CONFIG_JBD_DEBUG, so was dead code.
Signed-off-by: Eric Biggers <ebiggers@...gle.com>
---
debugfs/journal.c | 4 ----
e2fsck/journal.c | 4 ----
lib/ext2fs/kernel-jbd.h | 26 +++++---------------------
3 files changed, 5 insertions(+), 29 deletions(-)
diff --git a/debugfs/journal.c b/debugfs/journal.c
index e8872f05..686d0eb0 100644
--- a/debugfs/journal.c
+++ b/debugfs/journal.c
@@ -26,9 +26,7 @@
#include "uuid/uuid.h"
#include "journal.h"
-#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jfs-debug */
static int bh_count = 0;
-#endif
#if EXT2_FLAT_INCLUDES
#include "blkid.h"
@@ -135,10 +133,8 @@ struct buffer_head *getblk(kdev_t kdev, unsigned long long blocknr,
if (retval)
return NULL;
-#ifdef CONFIG_JBD_DEBUG
if (journal_enable_debug >= 3)
bh_count++;
-#endif
jfs_debug(4, "getblk for block %llu (%d bytes)(total %d)\n",
blocknr, blocksize, bh_count);
diff --git a/e2fsck/journal.c b/e2fsck/journal.c
index a425bbd1..a0a4d968 100644
--- a/e2fsck/journal.c
+++ b/e2fsck/journal.c
@@ -27,9 +27,7 @@
#include "problem.h"
#include "uuid/uuid.h"
-#ifdef CONFIG_JBD_DEBUG /* Enabled by configure --enable-jfs-debug */
static int bh_count = 0;
-#endif
/*
* Define USE_INODE_IO to use the inode_io.c / fileio.c codepaths.
@@ -129,10 +127,8 @@ struct buffer_head *getblk(kdev_t kdev, unsigned long long blocknr,
if (!bh)
return NULL;
-#ifdef CONFIG_JBD_DEBUG
if (journal_enable_debug >= 3)
bh_count++;
-#endif
jfs_debug(4, "getblk for block %llu (%d bytes)(total %d)\n",
blocknr, blocksize, bh_count);
diff --git a/lib/ext2fs/kernel-jbd.h b/lib/ext2fs/kernel-jbd.h
index 2978ccb6..c94de237 100644
--- a/lib/ext2fs/kernel-jbd.h
+++ b/lib/ext2fs/kernel-jbd.h
@@ -26,7 +26,6 @@
#define journal_oom_retry 0
-#ifdef __STDC__
#ifdef CONFIG_JBD_DEBUG
/*
* Define JBD_EXPENSIVE_CHECKING to enable more expensive internal
@@ -35,7 +34,11 @@
*/
#define JBD_EXPENSIVE_CHECKING
extern int journal_enable_debug;
+#else
+#define journal_enable_debug (-1)
+#endif /* !CONFIG_JBD_DEBUG */
+#ifdef __STDC__
#define jbd_debug(n, f, a...) \
do { \
if ((n) <= journal_enable_debug) { \
@@ -45,27 +48,8 @@ extern int journal_enable_debug;
} \
} while (0)
#else
-#ifdef __GNUC__
-#if defined(__KERNEL__) || !defined(CONFIG_JBD_DEBUG)
-#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
-#else
#define jbd_debug(x) /* AIX doesn't do STDC */
-#endif
+#endif /* !__STDC__ */
extern void * __jbd_kmalloc (char *where, size_t size, int flags, int retry);
#define jbd_kmalloc(size, flags) \
--
2.32.0.272.g935e593368-goog
Powered by blists - more mailing lists