Skip to content

Commit

Permalink
[XFS] Add a stack trace in the case of xfs_forced_shutdown.
Browse files Browse the repository at this point in the history
SGI-PV: 929558
SGI-Modid: xfs-linux-melb:xfs-kern:203701a

Signed-off-by: Ryan Hankins <hankins@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
  • Loading branch information
Ryan Hankins authored and Nathan Scott committed Jan 11, 2006
1 parent 77a7cce commit 0733af2
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions fs/xfs/xfs_trans.c
Original file line number Diff line number Diff line change
Expand Up @@ -1014,6 +1014,7 @@ xfs_trans_cancel(
xfs_log_item_t *lip;
int i;
#endif
xfs_mount_t *mp = tp->t_mountp;

/*
* See if the caller is being too lazy to figure out if
Expand All @@ -1027,8 +1028,9 @@ xfs_trans_cancel(
* corruption and decide to give up.
*/
if ((tp->t_flags & XFS_TRANS_DIRTY) &&
!XFS_FORCED_SHUTDOWN(tp->t_mountp))
xfs_force_shutdown(tp->t_mountp, XFS_CORRUPT_INCORE);
!XFS_FORCED_SHUTDOWN(mp))
XFS_ERROR_REPORT("xfs_trans_cancel", XFS_ERRLEVEL_LOW, mp);
xfs_force_shutdown(mp, XFS_CORRUPT_INCORE);
#ifdef DEBUG
if (!(flags & XFS_TRANS_ABORT)) {
licp = &(tp->t_items);
Expand All @@ -1040,15 +1042,15 @@ xfs_trans_cancel(
}

lip = lidp->lid_item;
if (!XFS_FORCED_SHUTDOWN(tp->t_mountp))
if (!XFS_FORCED_SHUTDOWN(mp))
ASSERT(!(lip->li_type == XFS_LI_EFD));
}
licp = licp->lic_next;
}
}
#endif
xfs_trans_unreserve_and_mod_sb(tp);
XFS_TRANS_UNRESERVE_AND_MOD_DQUOTS(tp->t_mountp, tp);
XFS_TRANS_UNRESERVE_AND_MOD_DQUOTS(mp, tp);

if (tp->t_ticket) {
if (flags & XFS_TRANS_RELEASE_LOG_RES) {
Expand All @@ -1057,7 +1059,7 @@ xfs_trans_cancel(
} else {
log_flags = 0;
}
xfs_log_done(tp->t_mountp, tp->t_ticket, NULL, log_flags);
xfs_log_done(mp, tp->t_ticket, NULL, log_flags);
}

/* mark this thread as no longer being in a transaction */
Expand Down

0 comments on commit 0733af2

Please sign in to comment.