diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-06-16 11:17:50 +0200 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-06-16 11:17:50 +0200 | 
| commit | 1791a78c0b10fe548bf08a2ed7f84a4ea1385430 (patch) | |
| tree | 3bc3e71a900a364aaaaf28d553ce44e5dc27092b /include/linux/sched.h | |
| parent | bf07dc864902b3e788de5ab50dc62d5677da90f2 (diff) | |
| parent | 066519068ad2fbe98c7f45552b1f592903a9c8c8 (diff) | |
Merge branch 'linus' into x86/cleanups
Diffstat (limited to 'include/linux/sched.h')
| -rw-r--r-- | include/linux/sched.h | 16 | 
1 files changed, 15 insertions, 1 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 5395a6176f4b..c5d3f847ca8d 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -766,7 +766,6 @@ struct sched_domain {  	struct sched_domain *child;	/* bottom domain must be null terminated */  	struct sched_group *groups;	/* the balancing groups of the domain */  	cpumask_t span;			/* span of all CPUs in this domain */ -	int first_cpu;			/* cache of the first cpu in this domain */  	unsigned long min_interval;	/* Minimum balance interval ms */  	unsigned long max_interval;	/* Maximum balance interval ms */  	unsigned int busy_factor;	/* less balancing by factor if busy */ @@ -1848,7 +1847,9 @@ extern void exit_thread(void);  extern void exit_files(struct task_struct *);  extern void __cleanup_signal(struct signal_struct *);  extern void __cleanup_sighand(struct sighand_struct *); +  extern void exit_itimers(struct signal_struct *); +extern void flush_itimer_signals(void);  extern NORET_TYPE void do_group_exit(int); @@ -2025,6 +2026,19 @@ static inline int fatal_signal_pending(struct task_struct *p)  	return signal_pending(p) && __fatal_signal_pending(p);  } +static inline int signal_pending_state(long state, struct task_struct *p) +{ +	if (!(state & (TASK_INTERRUPTIBLE | TASK_WAKEKILL))) +		return 0; +	if (!signal_pending(p)) +		return 0; + +	if (state & (__TASK_STOPPED | __TASK_TRACED)) +		return 0; + +	return (state & TASK_INTERRUPTIBLE) || __fatal_signal_pending(p); +} +  static inline int need_resched(void)  {  	return unlikely(test_thread_flag(TIF_NEED_RESCHED));  | 
