cvs commit: src/sys/conf files src/sys/ddb db_ps.c src/sys/i386/i386 trap.c src/sys/kern init_main.c kern_synch.c kern_usched.c lwkt_thread.c usched_bsd4.c usched_dummy.c src/sys/sys globaldata.h thread.h usched.h

Matthew Dillon dillon at crater.dragonflybsd.org
Sun May 28 21:00:36 PDT 2006


dillon      2006/05/28 20:57:21 PDT

DragonFly src repository

  Modified files:
    sys/conf             files 
    sys/ddb              db_ps.c 
    sys/i386/i386        trap.c 
    sys/kern             init_main.c kern_synch.c kern_usched.c 
                         lwkt_thread.c usched_bsd4.c 
    sys/sys              globaldata.h thread.h usched.h 
  Added files:
    sys/kern             usched_dummy.c 
  Log:
  Further isolate the user process scheduler data by moving more variables
  from the globaldata structure to the scheduler module(s).
  
  Make the user process scheduler MP safe.  Make the LWKT 'pull thread'
  (to a different cpu) feature MP safe.  Streamline the user process
  scheduler API.
  
  Do a near complete rewrite of the BSD4 scheduler.  Remote reschedules
  (reschedules to other cpus), cpu pickup of queued processes, and locality
  of reference handling should make the new BSD4 scheduler a lot more
  responsive.
  
  Add a demonstration user process scheduler called 'dummy'
  (kern/usched_dummy.c).  Add a kenv variable 'kern.user_scheduler' that
  can be set to the desired scheduler on boot (i.e. 'bsd4' or 'dummy').
  
  NOTE: Until more of the system is taken out from under the MP lock,
  these changes actually slow things down slightly.  Buildworlds are
  about ~2.7% slower.
  
  Revision  Changes    Path
  1.126     +1 -0      src/sys/conf/files
  1.18      +2 -11     src/sys/ddb/db_ps.c
  1.76      +6 -32     src/sys/i386/i386/trap.c
  1.56      +1 -2      src/sys/kern/init_main.c
  1.63      +4 -4      src/sys/kern/kern_synch.c
  1.3       +12 -2     src/sys/kern/kern_usched.c
  1.97      +47 -19    src/sys/kern/lwkt_thread.c
  1.9       +698 -594  src/sys/kern/usched_bsd4.c
  1.43      +4 -7      src/sys/sys/globaldata.h
  1.82      +2 -1      src/sys/sys/thread.h
  1.10      +4 -2      src/sys/sys/usched.h


http://www.dragonflybsd.org/cvsweb/src/sys/conf/files.diff?r1=1.125&r2=1.126&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/ddb/db_ps.c.diff?r1=1.17&r2=1.18&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/i386/i386/trap.c.diff?r1=1.75&r2=1.76&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/init_main.c.diff?r1=1.55&r2=1.56&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_synch.c.diff?r1=1.62&r2=1.63&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/kern_usched.c.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/lwkt_thread.c.diff?r1=1.96&r2=1.97&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/kern/usched_bsd4.c.diff?r1=1.8&r2=1.9&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/globaldata.h.diff?r1=1.42&r2=1.43&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/thread.h.diff?r1=1.81&r2=1.82&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/sys/usched.h.diff?r1=1.9&r2=1.10&f=u





More information about the Commits mailing list