Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 89416
b: refs/heads/master
c: cb6edc2
h: refs/heads/master
v: v3
  • Loading branch information
David Chinner authored and Lachlan McIlroy committed Apr 18, 2008
1 parent 716b45d commit 4fa84a4
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 4 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: 31d5577b35d8397dea19f2ba7550e9225605a785
refs/heads/master: cb6edc26c386d2268dcf61bcdec02b6fb50b6ba2
15 changes: 12 additions & 3 deletions trunk/fs/xfs/quota/xfs_qm_syscalls.c
Original file line number Diff line number Diff line change
Expand Up @@ -279,9 +279,12 @@ xfs_qm_scall_quotaoff(

/*
* Write the LI_QUOTAOFF log record, and do SB changes atomically,
* and synchronously.
* and synchronously. If we fail to write, we should abort the
* operation as it cannot be recovered safely if we crash.
*/
xfs_qm_log_quotaoff(mp, &qoffstart, flags);
error = xfs_qm_log_quotaoff(mp, &qoffstart, flags);
if (error)
goto out_error;

/*
* Next we clear the XFS_MOUNT_*DQ_ACTIVE bit(s) in the mount struct
Expand Down Expand Up @@ -337,7 +340,12 @@ xfs_qm_scall_quotaoff(
* So, we have QUOTAOFF start and end logitems; the start
* logitem won't get overwritten until the end logitem appears...
*/
xfs_qm_log_quotaoff_end(mp, qoffstart, flags);
error = xfs_qm_log_quotaoff_end(mp, qoffstart, flags);
if (error) {
/* We're screwed now. Shutdown is the only option. */
xfs_force_shutdown(mp, SHUTDOWN_CORRUPT_INCORE);
goto out_error;
}

/*
* If quotas is completely disabled, close shop.
Expand All @@ -361,6 +369,7 @@ xfs_qm_scall_quotaoff(
XFS_PURGE_INODE(XFS_QI_GQIP(mp));
XFS_QI_GQIP(mp) = NULL;
}
out_error:
mutex_unlock(&(XFS_QI_QOFFLOCK(mp)));

return (error);
Expand Down

0 comments on commit 4fa84a4

Please sign in to comment.