Date: Tue, 19 May 2009 03:09:05 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r192366 - user/kmacy/releng_7_2_fcs/sys/kern Message-ID: <200905190309.n4J395gq083139@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kmacy Date: Tue May 19 03:09:04 2009 New Revision: 192366 URL: http://svn.freebsd.org/changeset/base/192366 Log: update arguments to sleepq_resume_thread Modified: user/kmacy/releng_7_2_fcs/sys/kern/subr_sleepqueue.c Modified: user/kmacy/releng_7_2_fcs/sys/kern/subr_sleepqueue.c ============================================================================== --- user/kmacy/releng_7_2_fcs/sys/kern/subr_sleepqueue.c Tue May 19 02:51:30 2009 (r192365) +++ user/kmacy/releng_7_2_fcs/sys/kern/subr_sleepqueue.c Tue May 19 03:09:04 2009 (r192366) @@ -427,7 +427,7 @@ sleepq_catch_signals(void *wchan, int pr */ if (TD_ON_SLEEPQ(td)) { sq = sleepq_lookup(wchan); - if (sleepq_resume_thread(sq, td, -1)) { + if (sleepq_resume_thread(sq, td, 0)) { #ifdef INVARIANTS /* * This thread hasn't gone to sleep yet, so it @@ -475,7 +475,7 @@ sleepq_switch(void *wchan, int pri) if (td->td_flags & TDF_TIMEOUT) { MPASS(TD_ON_SLEEPQ(td)); sq = sleepq_lookup(wchan); - if (sleepq_resume_thread(sq, td, -1)) { + if (sleepq_resume_thread(sq, td, 0)) { #ifdef INVARIANTS /* * This thread hasn't gone to sleep yet, so it @@ -638,6 +638,10 @@ sleepq_timedwait_sig(void *wchan, int pr return (rvalt); } +#ifdef INVARIANTS +extern void kdb_backtrace(void); +#endif + /* * Removes a thread from a sleep queue and makes it * runnable. @@ -691,6 +695,12 @@ sleepq_resume_thread(struct sleepqueue * TD_CLR_SLEEPING(td); /* Adjust priority if requested. */ +#ifdef INVARIANTS + if (!(pri == 0 || (pri >= PRI_MIN && pri <= PRI_MAX))) { + kdb_backtrace(); + printf("pri=%d\n", pri); + } +#endif MPASS(pri == 0 || (pri >= PRI_MIN && pri <= PRI_MAX)); if (pri != 0 && td->td_priority > pri) sched_prio(td, pri); @@ -827,7 +837,7 @@ sleepq_timeout(void *arg) sq = sleepq_lookup(wchan); MPASS(sq != NULL); td->td_flags |= TDF_TIMEOUT; - wakeup_swapper = sleepq_resume_thread(sq, td, -1); + wakeup_swapper = sleepq_resume_thread(sq, td, 0); thread_unlock(td); if (wakeup_swapper) kick_proc0(); @@ -899,7 +909,7 @@ sleepq_remove(struct thread *td, void *w thread_lock(td); MPASS(sq != NULL); MPASS(td->td_wchan == wchan); - wakeup_swapper = sleepq_resume_thread(sq, td, -1); + wakeup_swapper = sleepq_resume_thread(sq, td, 0); thread_unlock(td); sleepq_release(wchan); if (wakeup_swapper) @@ -945,7 +955,7 @@ sleepq_abort(struct thread *td, int intr MPASS(sq != NULL); /* Thread is asleep on sleep queue sq, so wake it up. */ - return (sleepq_resume_thread(sq, td, -1)); + return (sleepq_resume_thread(sq, td, 0)); } #ifdef DDB
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905190309.n4J395gq083139>