kern_thread.c (183911) | kern_thread.c (183929) |
---|---|
1/*- 2 * Copyright (C) 2001 Julian Elischer <julian@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 --- 15 unchanged lines hidden (view full) --- 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 26 * DAMAGE. 27 */ 28 29#include "opt_witness.h" 30 31#include <sys/cdefs.h> | 1/*- 2 * Copyright (C) 2001 Julian Elischer <julian@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 --- 15 unchanged lines hidden (view full) --- 24 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 26 * DAMAGE. 27 */ 28 29#include "opt_witness.h" 30 31#include <sys/cdefs.h> |
32__FBSDID("$FreeBSD: head/sys/kern/kern_thread.c 183911 2008-10-15 06:31:37Z davidxu $"); | 32__FBSDID("$FreeBSD: head/sys/kern/kern_thread.c 183929 2008-10-16 04:17:17Z davidxu $"); |
33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/kernel.h> 37#include <sys/lock.h> 38#include <sys/mutex.h> 39#include <sys/proc.h> 40#include <sys/resourcevar.h> --- 526 unchanged lines hidden (view full) --- 567 wakeup_swapper |= 568 thread_unsuspend_one(td2); 569 if (TD_ON_SLEEPQ(td2) && 570 (td2->td_flags & TDF_SINTR)) 571 wakeup_swapper |= 572 sleepq_abort(td2, EINTR); 573 break; 574 case SINGLE_BOUNDARY: | 33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/kernel.h> 37#include <sys/lock.h> 38#include <sys/mutex.h> 39#include <sys/proc.h> 40#include <sys/resourcevar.h> --- 526 unchanged lines hidden (view full) --- 567 wakeup_swapper |= 568 thread_unsuspend_one(td2); 569 if (TD_ON_SLEEPQ(td2) && 570 (td2->td_flags & TDF_SINTR)) 571 wakeup_swapper |= 572 sleepq_abort(td2, EINTR); 573 break; 574 case SINGLE_BOUNDARY: |
575 if (TD_IS_SUSPENDED(td2) && 576 !(td2->td_flags & TDF_BOUNDARY)) 577 wakeup_swapper |= 578 thread_unsuspend_one(td2); 579 if (TD_ON_SLEEPQ(td2) && 580 (td2->td_flags & TDF_SINTR)) 581 wakeup_swapper |= 582 sleepq_abort(td2, ERESTART); |
|
575 break; | 583 break; |
576 default: | 584 default: |
577 if (TD_IS_SUSPENDED(td2)) { 578 thread_unlock(td2); 579 continue; 580 } 581 /* 582 * maybe other inhibited states too? 583 */ 584 if ((td2->td_flags & TDF_SINTR) && --- 308 unchanged lines hidden --- | 585 if (TD_IS_SUSPENDED(td2)) { 586 thread_unlock(td2); 587 continue; 588 } 589 /* 590 * maybe other inhibited states too? 591 */ 592 if ((td2->td_flags & TDF_SINTR) && --- 308 unchanged lines hidden --- |