iget: stop AFFS from using iget() and read_inode()
Stop the AFFS filesystem from using iget() and read_inode(). Replace affs_read_inode() with affs_iget(), and call that instead of iget(). affs_iget() then uses iget_locked() directly and returns a proper error code instead of an inode in the event of an error. affs_fill_super() returns any error incurred when getting the root inode instead of EINVAL. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: David Howells <dhowells@redhat.com> Cc: Roman Zippel <zippel@linux-m68k.org> Acked-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:

committed by
Linus Torvalds

parent
69840b0d06
commit
210f855963
@@ -170,9 +170,11 @@ affs_remove_link(struct dentry *dentry)
|
||||
if (!link_bh)
|
||||
goto done;
|
||||
|
||||
dir = iget(sb, be32_to_cpu(AFFS_TAIL(sb, link_bh)->parent));
|
||||
if (!dir)
|
||||
dir = affs_iget(sb, be32_to_cpu(AFFS_TAIL(sb, link_bh)->parent));
|
||||
if (IS_ERR(dir)) {
|
||||
retval = PTR_ERR(dir);
|
||||
goto done;
|
||||
}
|
||||
|
||||
affs_lock_dir(dir);
|
||||
affs_fix_dcache(dentry, link_ino);
|
||||
|
Reference in New Issue
Block a user