summaryrefslogtreecommitdiffstats
path: root/fs/gfs2/dir.c
diff options
context:
space:
mode:
authorAdrian Bunk2006-10-19 16:02:07 +0200
committerSteven Whitehouse2006-10-20 15:16:20 +0200
commitb7d8ac3e1779c30ddef0a8f38042076c5007a23d (patch)
tree0c79c3ddb223504789e8f67e609b5924c6cf2ede /fs/gfs2/dir.c
parent[GFS2] fs/gfs2/ops_fstype.c:fill_super_meta(): fix NULL dereference (diff)
downloadkernel-qcow2-linux-b7d8ac3e1779c30ddef0a8f38042076c5007a23d.tar.gz
kernel-qcow2-linux-b7d8ac3e1779c30ddef0a8f38042076c5007a23d.tar.xz
kernel-qcow2-linux-b7d8ac3e1779c30ddef0a8f38042076c5007a23d.zip
[GFS2] gfs2_dir_read_data(): fix uninitialized variable usage
In the "if (extlen)" case, "bh" was used uninitialized. This patch changes the code to what seems to have been intended. Spotted by the Coverity checker. This patch also removes a pointless "bh = NULL" asignment (the variable is never accessed again after this point). Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/dir.c')
-rw-r--r--fs/gfs2/dir.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c
index ead7df066853..e24af28b1a12 100644
--- a/fs/gfs2/dir.c
+++ b/fs/gfs2/dir.c
@@ -315,8 +315,7 @@ static int gfs2_dir_read_data(struct gfs2_inode *ip, char *buf, u64 offset,
if (!ra)
extlen = 1;
bh = gfs2_meta_ra(ip->i_gl, dblock, extlen);
- }
- if (!bh) {
+ } else {
error = gfs2_meta_read(ip->i_gl, dblock, DIO_WAIT, &bh);
if (error)
goto fail;
@@ -330,7 +329,6 @@ static int gfs2_dir_read_data(struct gfs2_inode *ip, char *buf, u64 offset,
extlen--;
memcpy(buf, bh->b_data + o, amount);
brelse(bh);
- bh = NULL;
buf += amount;
copied += amount;
lblock++;