Jeff Roberson c5aa6b581d - Pass the priority argument from *sleep() into sleepq and down into
sched_sleep().  This removes extra thread_lock() acquisition and
   allows the scheduler to decide what to do with the static boost.
 - Change the priority arguments to cv_* to match sleepq/msleep/etc.
   where 0 means no priority change.  Catch -1 in cv_broadcastpri() and
   convert it to 0 for now.
 - Set a flag when sleeping in a way that is compatible with swapping
   since direct priority comparisons are meaningless now.
 - Add a sysctl to ule, kern.sched.static_boost, that defaults to on which
   controls the boost behavior.  Turning it off gives better performance
   in some workloads but needs more investigation.
 - While we're modifying sleepq, change signal and broadcast to both
   return with the lock held as the lock was held on enter.

Reviewed by:	jhb, peter
2008-03-12 06:31:06 +00:00
..
2008-03-02 07:41:10 +00:00
2007-11-15 14:16:20 +00:00
2008-03-07 15:27:08 +00:00
2008-02-17 02:46:54 +00:00
2007-12-17 08:09:37 +00:00
2007-04-23 12:53:00 +00:00
2007-12-14 21:30:51 +00:00
2008-03-02 07:41:10 +00:00
2008-03-02 07:41:10 +00:00
2008-02-04 12:25:13 +00:00
2008-02-04 12:25:13 +00:00