kern_condvar.c (99247) | kern_condvar.c (100209) |
---|---|
1/*- 2 * Copyright (c) 2000 Jake Burkholder <jake@freebsd.org>. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * | 1/*- 2 * Copyright (c) 2000 Jake Burkholder <jake@freebsd.org>. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/sys/kern/kern_condvar.c 99247 2002-07-02 05:33:46Z julian $ | 26 * $FreeBSD: head/sys/kern/kern_condvar.c 100209 2002-07-17 02:23:44Z gallatin $ |
27 */ 28 29#include "opt_ktrace.h" 30 31#include <sys/param.h> 32#include <sys/systm.h> 33#include <sys/lock.h> 34#include <sys/mutex.h> --- 200 unchanged lines hidden (view full) --- 235#ifdef KTRACE 236 if (KTRPOINT(td, KTR_CSW)) 237 ktrcsw(1, 0); 238#endif 239 CV_ASSERT(cvp, mp, td); 240 WITNESS_SLEEP(0, &mp->mtx_object); 241 WITNESS_SAVE(&mp->mtx_object, mp); 242 | 27 */ 28 29#include "opt_ktrace.h" 30 31#include <sys/param.h> 32#include <sys/systm.h> 33#include <sys/lock.h> 34#include <sys/mutex.h> --- 200 unchanged lines hidden (view full) --- 235#ifdef KTRACE 236 if (KTRPOINT(td, KTR_CSW)) 237 ktrcsw(1, 0); 238#endif 239 CV_ASSERT(cvp, mp, td); 240 WITNESS_SLEEP(0, &mp->mtx_object); 241 WITNESS_SAVE(&mp->mtx_object, mp); 242 |
243 if (cold || panicstr) { | 243 if (cold ) { |
244 /* | 244 /* |
245 * After a panic, or during autoconfiguration, just give 246 * interrupts a chance, then just return; don't run any other 247 * thread or panic below, in case this is the idle process and 248 * already asleep. | 245 * During autoconfiguration, just give interrupts 246 * a chance, then just return. Don't run any other 247 * thread or panic below, in case this is the idle 248 * process and already asleep. |
249 */ 250 return; 251 } 252 253 mtx_lock_spin(&sched_lock); 254 255 CV_WAIT_VALIDATE(cvp, mp); 256 --- 390 unchanged lines hidden --- | 249 */ 250 return; 251 } 252 253 mtx_lock_spin(&sched_lock); 254 255 CV_WAIT_VALIDATE(cvp, mp); 256 --- 390 unchanged lines hidden --- |