[PATCH next 2/2] btrfs: extent-tree: Fix error format string

From: Andreas FÃrber
Date: Fri Nov 08 2019 - 16:39:02 EST


From: Andreas FÃrber <afaerber@xxxxxxxx>

sizeof() returns type size_t, thus we need %zu instead of %lu.

This fixes the following build warning on 32-bit arm:

In file included from ../include/linux/printk.h:7,
from ../include/linux/kernel.h:15,
from ../include/asm-generic/bug.h:19,
from ../arch/arm/include/asm/bug.h:60,
from ../include/linux/bug.h:5,
from ../include/linux/thread_info.h:12,
from ../include/asm-generic/current.h:5,
from ./arch/arm/include/generated/asm/current.h:1,
from ../include/linux/sched.h:12,
from ../fs/btrfs/extent-tree.c:6:
../fs/btrfs/extent-tree.c: In function '__btrfs_free_extent':
../include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument of type 'long unsigned int', but argument 8 has type 'unsigned int' [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
../include/linux/kern_levels.h:10:19: note: in expansion of macro 'KERN_SOH'
10 | #define KERN_CRIT KERN_SOH "2" /* critical conditions */
| ^~~~~~~~
../fs/btrfs/ctree.h:2986:24: note: in expansion of macro 'KERN_CRIT'
2986 | btrfs_printk(fs_info, KERN_CRIT fmt, ##args)
| ^~~~~~~~~
../fs/btrfs/extent-tree.c:3207:4: note: in expansion of macro 'btrfs_crit'
3207 | btrfs_crit(info,
| ^~~~~~~~~~
../fs/btrfs/extent-tree.c:3208:83: note: format string is defined here
3208 | "invalid extent item size for key (%llu, %u, %llu) owner %llu, has %u expect >= %lu",
| ~~^
| |
| long unsigned int
| %u

Fixes: 0c171e9095e4 ("btrfs: extent-tree: Kill BUG_ON() in __btrfs_free_extent() and do better comment")
Cc: Qu Wenruo <wqu@xxxxxxxx>
Cc: David Sterba <dsterba@xxxxxxxx>
Signed-off-by: Andreas FÃrber <afaerber@xxxxxxxx>
---
fs/btrfs/extent-tree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 7c7a3e30e917..631c9743ddc7 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -3205,7 +3205,7 @@ static int __btrfs_free_extent(struct btrfs_trans_handle *trans,
struct btrfs_tree_block_info *bi;
if (unlikely(item_size < sizeof(*ei) + sizeof(*bi))) {
btrfs_crit(info,
-"invalid extent item size for key (%llu, %u, %llu) owner %llu, has %u expect >= %lu",
+"invalid extent item size for key (%llu, %u, %llu) owner %llu, has %u expect >= %zu",
key.objectid, key.type, key.offset,
owner_objectid, item_size,
sizeof(*ei) + sizeof(*bi));
--
2.16.4