svn commit: r325401 - stable/11/sys/ufs/ffs
Mark Johnston
markj at FreeBSD.org
Sat Nov 4 16:03:08 UTC 2017
Author: markj
Date: Sat Nov 4 16:03:06 2017
New Revision: 325401
URL: https://svnweb.freebsd.org/changeset/base/325401
Log:
MFC r325050:
Remove workqueue items after updating the workqueue tail pointer.
Modified:
stable/11/sys/ufs/ffs/ffs_softdep.c
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/sys/ufs/ffs/ffs_softdep.c
==============================================================================
--- stable/11/sys/ufs/ffs/ffs_softdep.c Sat Nov 4 15:52:16 2017 (r325400)
+++ stable/11/sys/ufs/ffs/ffs_softdep.c Sat Nov 4 16:03:06 2017 (r325401)
@@ -1535,10 +1535,10 @@ remove_from_worklist(wk)
struct ufsmount *ump;
ump = VFSTOUFS(wk->wk_mp);
- WORKLIST_REMOVE(wk);
if (ump->softdep_worklist_tail == wk)
ump->softdep_worklist_tail =
(struct worklist *)wk->wk_list.le_prev;
+ WORKLIST_REMOVE(wk);
ump->softdep_on_worklist -= 1;
}
@@ -1836,11 +1836,11 @@ process_worklist_item(mp, target, flags)
wake_worklist(wk);
add_to_worklist(wk, WK_HEAD);
}
- LIST_REMOVE(&sentinel, wk_list);
/* Sentinal could've become the tail from remove_from_worklist. */
if (ump->softdep_worklist_tail == &sentinel)
ump->softdep_worklist_tail =
(struct worklist *)sentinel.wk_list.le_prev;
+ LIST_REMOVE(&sentinel, wk_list);
PRELE(curproc);
return (matchcnt);
}
@@ -2894,7 +2894,6 @@ remove_from_journal(wk)
if (ump->softdep_journal_tail == wk)
ump->softdep_journal_tail =
(struct worklist *)wk->wk_list.le_prev;
-
WORKLIST_REMOVE(wk);
ump->softdep_on_journal -= 1;
}
More information about the svn-src-stable-11
mailing list