kern_synch.c (99942) | kern_synch.c (100209) |
---|---|
1/*- 2 * Copyright (c) 1982, 1986, 1990, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * (c) UNIX System Laboratories, Inc. 5 * All or some portions of this file are derived from material licensed 6 * to the University of California by American Telephone and Telegraph 7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8 * the permission of UNIX System Laboratories, Inc. --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)kern_synch.c 8.9 (Berkeley) 5/19/95 | 1/*- 2 * Copyright (c) 1982, 1986, 1990, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * (c) UNIX System Laboratories, Inc. 5 * All or some portions of this file are derived from material licensed 6 * to the University of California by American Telephone and Telegraph 7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8 * the permission of UNIX System Laboratories, Inc. --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)kern_synch.c 8.9 (Berkeley) 5/19/95 |
39 * $FreeBSD: head/sys/kern/kern_synch.c 99942 2002-07-14 03:43:33Z julian $ | 39 * $FreeBSD: head/sys/kern/kern_synch.c 100209 2002-07-17 02:23:44Z gallatin $ |
40 */ 41 42#include "opt_ddb.h" 43#include "opt_ktrace.h" 44 45#include <sys/param.h> 46#include <sys/systm.h> 47#include <sys/condvar.h> --- 424 unchanged lines hidden (view full) --- 472 td->td_flags |= TDF_INMSLEEP; 473 thread_schedule_upcall(td, td->td_kse); 474 td->td_flags &= ~TDF_INMSLEEP; 475 } 476 mtx_unlock_spin(&sched_lock); 477 } 478 } 479 mtx_lock_spin(&sched_lock); | 40 */ 41 42#include "opt_ddb.h" 43#include "opt_ktrace.h" 44 45#include <sys/param.h> 46#include <sys/systm.h> 47#include <sys/condvar.h> --- 424 unchanged lines hidden (view full) --- 472 td->td_flags |= TDF_INMSLEEP; 473 thread_schedule_upcall(td, td->td_kse); 474 td->td_flags &= ~TDF_INMSLEEP; 475 } 476 mtx_unlock_spin(&sched_lock); 477 } 478 } 479 mtx_lock_spin(&sched_lock); |
480 if (cold || panicstr) { | 480 if (cold ) { |
481 /* | 481 /* |
482 * After a panic, or during autoconfiguration, 483 * just give interrupts a chance, then just return; 484 * don't run any other procs or panic below, | 482 * During autoconfiguration, just give interrupts 483 * a chance, then just return. 484 * Don't run any other procs or panic below, |
485 * in case this is the idle process and already asleep. 486 */ 487 if (mtx != NULL && priority & PDROP) 488 mtx_unlock(mtx); 489 mtx_unlock_spin(&sched_lock); 490 return (0); 491 } 492 --- 593 unchanged lines hidden --- | 485 * in case this is the idle process and already asleep. 486 */ 487 if (mtx != NULL && priority & PDROP) 488 mtx_unlock(mtx); 489 mtx_unlock_spin(&sched_lock); 490 return (0); 491 } 492 --- 593 unchanged lines hidden --- |