2006-05-24 04:24:19

by Florin Malita

[permalink] [raw]
Subject: [PATCH] affs: possible null pointer dereference in affs_rename()

If affs_bread() fails, the exit path calls mark_buffer_dirty_inode()
with a NULL argument.

Coverity CID: 312.

Signed-off-by: Florin Malita <[email protected]>
---

diff --git a/fs/affs/namei.c b/fs/affs/namei.c
index d4c2d63..a42143c 100644
--- a/fs/affs/namei.c
+++ b/fs/affs/namei.c
@@ -416,10 +416,9 @@ affs_rename(struct inode *old_dir, struc
return retval;
}

- retval = -EIO;
bh = affs_bread(sb, old_dentry->d_inode->i_ino);
if (!bh)
- goto done;
+ return -EIO;

/* Remove header from its parent directory. */
affs_lock_dir(old_dir);