Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Apr 2003 22:46:43 -0800 (PST)
From:      Jeff Roberson <jeff@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern sched_ule.c
Message-ID:  <200304020646.h326khcj032938@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
jeff        2003/04/01 22:46:43 PST

  FreeBSD src repository

  Modified files:
    sys/kern             sched_ule.c 
  Log:
   - Add in support for KSEs with 0 slice values on the run queue.  If we try
     to select a KSE with a slice of 0 we will update its slice and insert it
     onto the next queue.
   - Pass the KSE instead of the ksegrp into sched_slice().  This more
     accurately reflects the behavior of the code.  Slices are granted to kses.
   - Add a function kseq_nice_min() which finds the smallest nice value
     assigned to the kseg of any KSE on the queue.
   - Rewrite the logic in sched_slice().  Add a large comment describing the
     new slice selection scheme.  To summarize, slices are assigned based on
     the nice value.  Priorities are still calculated based on the nice and
     interactivity of a process.  Slice sizes of 0 may be granted for KSEs
     whos nice is 20 or futher away from the lowest nice on the run queue.
     Other nice values are scaled across the range [min, min+20].  This fixes
     ULEs bad behavior with positively niced processes.
  
  Revision  Changes    Path
  1.17      +91 -35    src/sys/kern/sched_ule.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304020646.h326khcj032938>