summaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_vnodeops.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2009-02-04 09:34:20 +0100
committerChristoph Hellwig <hch@brick.lst.de>2009-02-04 09:34:20 +0100
commitcb3f35bb3bf0759e00cd4f68155da9b636421f84 (patch)
tree08b307dff77bf567ff2cb7a624010c4654690eaa /fs/xfs/xfs_vnodeops.c
parentxfs: make sure to free the real-time inodes in the mount error path (diff)
downloadlinux-cb3f35bb3bf0759e00cd4f68155da9b636421f84.tar.xz
linux-cb3f35bb3bf0759e00cd4f68155da9b636421f84.zip
xfs: tiny cleanup for xfs_link
The source and target inodes are guaranteed to never be the same by the VFS, so no need to check for that (and we would get into bad trouble later anyway if that were the case). Also clean up the error handling to use two gotos instead of nested conditions. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Felix Blyakher <felixb@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_vnodeops.c')
-rw-r--r--fs/xfs/xfs_vnodeops.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c
index 0e55c5d7db5f..4229408664ea 100644
--- a/fs/xfs/xfs_vnodeops.c
+++ b/fs/xfs/xfs_vnodeops.c
@@ -2004,8 +2004,10 @@ xfs_link(
/* Return through std_return after this point. */
error = XFS_QM_DQATTACH(mp, sip, 0);
- if (!error && sip != tdp)
- error = XFS_QM_DQATTACH(mp, tdp, 0);
+ if (error)
+ goto std_return;
+
+ error = XFS_QM_DQATTACH(mp, tdp, 0);
if (error)
goto std_return;