2011-06-10 06:02:52

by Andreas Dilger

[permalink] [raw]
Subject: [PATCH] debugfs: fix icheck finding blocks used for xattrs

This was an "uninitialized variable" warning, but it turns out to be
a real bug. Without this change, it is not possible to use "icheck"
to find blocks that are used for the i_file_acl (xattr) block.

Signed-off-by: Andreas Dilger <[email protected]>
---
debugfs/icheck.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/debugfs/icheck.c b/debugfs/icheck.c
index 643bc5b..729ac93 100644
--- a/debugfs/icheck.c
+++ b/debugfs/icheck.c
@@ -106,13 +106,15 @@ void do_icheck(int argc, char **argv)
}

while (ino) {
+ blk64_t blk;
+
if (!inode.i_links_count)
goto next;

bw.inode = ino;

- if (ext2fs_file_acl_block(&inode)) {
- blk64_t blk;
+ blk = ext2fs_file_acl_block(&inode);
+ if (blk) {
icheck_proc(current_fs, &blk, 0,
0, 0, &bw);
if (bw.blocks_left == 0)
--
1.7.3.4



2011-06-11 15:31:07

by Theodore Ts'o

[permalink] [raw]
Subject: Re: [PATCH] debugfs: fix icheck finding blocks used for xattrs

On Fri, Jun 10, 2011 at 12:02:50AM -0600, Andreas Dilger wrote:
> This was an "uninitialized variable" warning, but it turns out to be
> a real bug. Without this change, it is not possible to use "icheck"
> to find blocks that are used for the i_file_acl (xattr) block.
>
> Signed-off-by: Andreas Dilger <[email protected]>

Applied to the next branch, thanks.

- Ted