On Wed, 2020-04-22 at 11:57 +0200, Greg Kroah-Hartman wrote:
From: Randy Dunlap rdunlap@infradead.org
[ Upstream commit 44a52022e7f15cbaab957df1c14f7a4f527ef7cf ]
When EXT2_ATTR_DEBUG is not defined, modify the 2 debug macros to use the no_printk() macro instead of <nothing>. This fixes gcc warnings when -Wextra is used:
../fs/ext2/xattr.c:252:42: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body] ../fs/ext2/xattr.c:258:42: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body] ../fs/ext2/xattr.c:330:42: warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body] ../fs/ext2/xattr.c:872:45: warning: suggest braces around empty body in an ‘else’ statement [-Wempty-body]
I have verified that the only object code change (with gcc 7.5.0) is the reversal of some instructions from 'cmp a,b' to 'cmp b,a'.
It'd be better to use the ext4 style defines:
fs/ext4/xattr.c:# define ea_idebug(inode, fmt, ...) \ fs/ext4/xattr.c- printk(KERN_DEBUG "inode %s:%lu: " fmt "\n", \ fs/ext4/xattr.c- inode->i_sb->s_id, inode->i_ino, ##__VA_ARGS__) fs/ext4/xattr.c:# define ea_bdebug(bh, fmt, ...) \ fs/ext4/xattr.c- printk(KERN_DEBUG "block %pg:%lu: " fmt "\n", \ fs/ext4/xattr.c- bh->b_bdev, (unsigned long)bh->b_blocknr, ##__VA_ARGS__) -- fs/ext4/xattr.c:# define ea_idebug(inode, fmt, ...) no_printk(fmt, ##__VA_ARGS__) fs/ext4/xattr.c:# define ea_bdebug(bh, fmt, ...) no_printk(fmt, ##__VA_ARGS__)
So the output logging won't be split across multiple lines.
diff --git a/fs/ext2/xattr.c b/fs/ext2/xattr.c
[]
@@ -55,6 +55,7 @@ #include <linux/buffer_head.h> #include <linux/init.h> +#include <linux/printk.h> #include <linux/slab.h> #include <linux/mbcache.h> #include <linux/quotaops.h> @@ -85,8 +86,8 @@ printk("\n"); \ } while (0) #else -# define ea_idebug(f...) -# define ea_bdebug(f...) +# define ea_idebug(inode, f...) no_printk(f) +# define ea_bdebug(bh, f...) no_printk(f) #endif static int ext2_xattr_set2(struct inode *, struct buffer_head *,
--- fs/ext2/xattr.c | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-)
diff --git a/fs/ext2/xattr.c b/fs/ext2/xattr.c index 943cc46..7740582 100644 --- a/fs/ext2/xattr.c +++ b/fs/ext2/xattr.c @@ -72,21 +72,15 @@ #define IS_LAST_ENTRY(entry) (*(__u32 *)(entry) == 0)
#ifdef EXT2_XATTR_DEBUG -# define ea_idebug(inode, f...) do { \ - printk(KERN_DEBUG "inode %s:%ld: ", \ - inode->i_sb->s_id, inode->i_ino); \ - printk(f); \ - printk("\n"); \ - } while (0) -# define ea_bdebug(bh, f...) do { \ - printk(KERN_DEBUG "block %pg:%lu: ", \ - bh->b_bdev, (unsigned long) bh->b_blocknr); \ - printk(f); \ - printk("\n"); \ - } while (0) +# define ea_idebug(inode, fmt, ...) \ + printk(KERN_DEBUG "inode %s:%lu: " fmt "\n", \ + inode->i_sb->s_id, inode->i_ino, ##__VA_ARGS__) +# define ea_bdebug(bh, fmt, ...) \ + printk(KERN_DEBUG "block %pg:%lu: " fmt "\n", \ + bh->b_bdev, (unsigned long)bh->b_blocknr, ##__VA_ARGS__) #else -# define ea_idebug(inode, f...) no_printk(f) -# define ea_bdebug(bh, f...) no_printk(f) +# define ea_idebug(inode, fmt, ...) no_printk(fmt, ##__VA_ARGS__) +# define ea_bdebug(bh, fmt, ...) no_printk(fmt, ##__VA_ARGS__) #endif
static int ext2_xattr_set2(struct inode *, struct buffer_head *,