Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 124908
b: refs/heads/master
c: 0e44667
h: refs/heads/master
v: v3
  • Loading branch information
Christoph Hellwig authored and Niv Sardi committed Dec 1, 2008
1 parent e39bff3 commit 89054a7
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 14 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 24f211bad09a31f19dda0c3faffe0244f4f235f5
refs/heads/master: 0e446673a15a4e9c336b67c1a638eb12c21d0993
18 changes: 5 additions & 13 deletions trunk/fs/xfs/xfs_log_recover.c
Original file line number Diff line number Diff line change
Expand Up @@ -3147,13 +3147,12 @@ xlog_recover_process_one_iunlink(
/*
* Get the on disk inode to find the next inode in the bucket.
*/
ASSERT(ip != NULL);
error = xfs_itobp(mp, NULL, ip, &dip, &ibp, XFS_BUF_LOCK);
if (error)
goto fail;
goto fail_iput;

ASSERT(dip != NULL);
ASSERT(ip->i_d.di_nlink == 0);
ASSERT(ip->i_d.di_mode != 0);

/* setup for the next pass */
agino = be32_to_cpu(dip->di_next_unlinked);
Expand All @@ -3165,18 +3164,11 @@ xlog_recover_process_one_iunlink(
*/
ip->i_d.di_dmevmask = 0;

/*
* If this is a new inode, handle it specially. Otherwise, just
* drop our reference to the inode. If there are no other
* references, this will send the inode to xfs_inactive() which
* will truncate the file and free the inode.
*/
if (ip->i_d.di_mode == 0)
xfs_iput_new(ip, 0);
else
IRELE(ip);
IRELE(ip);
return agino;

fail_iput:
IRELE(ip);
fail:
/*
* We can't read in the inode this bucket points to, or this inode
Expand Down

0 comments on commit 89054a7

Please sign in to comment.