Various task updates relating to VM locking task:

- Break out lockmgr exclusive and sx/mutex tasks from one another, and
  leave the original (completed) movement of mutex pool initialization
  task as it's own thing.

- Create the task for moving to purely exclusive locks in VM rather than
  lockmgr shared locks.  This task will involve implementation, then testing
  to see if it actually hurts.  If this is possible, it will greatly
  simplify the transition to new locking primitives.  Assign this to
  green since he's expressed willingness to work on it.

- Create the task for moving from lockmgr to either mutexes or exclusive
  sxlocks for VM.  At that point, it should be possible to start pushing
  Giant down into VM somewhere, subject to lack of locking for a few
  primitives that will still require it, and for VFS/pmap interactions.
This commit is contained in:
Robert Watson 2002-03-18 16:22:42 +00:00
parent 446496e8c6
commit 3f1652ed0c
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=12524

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "..">
<!ENTITY date "$FreeBSD: www/en/smp/index.sgml,v 1.50 2002/03/18 01:58:16 rwatson Exp $">
<!ENTITY date "$FreeBSD: www/en/smp/index.sgml,v 1.51 2002/03/18 13:00:58 rwatson Exp $">
<!ENTITY title "FreeBSD SMP Project">
<!ENTITY email 'freebsd-smp'>
<!ENTITY % includes SYSTEM "../includes.sgml"> %includes;
@ -639,9 +639,7 @@
<tr>
<td> Initialize mutex pools early enough that sx locks can be used
for VM; simplify locking logic in VM to avoid suspect activities
such as lock testing and recursion, and convert vm_map locks to sx
locks from lockmgr locks. </td>
for VM. </td>
<td> &a.green; </td>
<td> 14 March 2002 </td>
<td> &status.done; </td>
@ -1080,10 +1078,20 @@
<tr>
<td> Replace complex shared/exclusive locking scheme in the VM
system with a purely exclusive locking scheme, simplifying locking
and removing potential livelock/deadlock scenarios. </td>
<td> &nbsp; </td>
<td> 17 March 2002 </td>
system with a purely exclusive lockmgr locking scheme, simplifying
locking and removing potential livelock/deadlock scenarios. </td>
<td> &a.green; </td>
<td> 18 March 2002 </td>
<td> &status.new; </td>
</tr>
<tr>
<td> Switch from using lockmgr in VM to using a mutex or exclusive
sxlock. Push down Giant on all VM except for vm_object/VFS and
vm_page/pmap components. </td>
<td> &a.green; </td>
<td> 18 March 2002 </td>
<td> &status.new; </td>
</tr>
<!--