diff options
Diffstat (limited to 'sys/ufs')
-rw-r--r-- | sys/ufs/ffs/ffs_softdep.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/ufs/ffs/ffs_softdep.c b/sys/ufs/ffs/ffs_softdep.c index fca4d25..d2f6015 100644 --- a/sys/ufs/ffs/ffs_softdep.c +++ b/sys/ufs/ffs/ffs_softdep.c @@ -5269,7 +5269,7 @@ loop: goto restart; FREE_LOCK(&lk); if ((error = bwrite(nbp)) != 0) { - break; + goto loop_end; } ACQUIRE_LOCK(&lk); goto restart; @@ -5300,7 +5300,7 @@ loop: flush_pagedep_deps(vp, wk->wk_mp, &pagedep->pd_diraddhd[i]))) { FREE_LOCK(&lk); - break; + goto loop_end; } } continue; @@ -5352,6 +5352,7 @@ loop: TYPENAME(wk->wk_type)); /* NOTREACHED */ } + loop_end: /* We reach here only in error and unlocked */ if (error == 0) panic("softdep_sync_metadata: zero error"); |