]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge branch 'linus' into core/softlockup
authorIngo Molnar <mingo@elte.hu>
Mon, 16 Jun 2008 09:24:43 +0000 (11:24 +0200)
committerIngo Molnar <mingo@elte.hu>
Mon, 16 Jun 2008 09:24:43 +0000 (11:24 +0200)
1  2 
include/linux/sched.h

diff --combined include/linux/sched.h
index ea26221644e21f7033c094f4e2c0b75c23b66970,c5d3f847ca8d05bd52ca575608c2d428a23d1b28..69760a379b6dc5747703cfb7c9ed818ea8ffb841
@@@ -294,11 -294,10 +294,11 @@@ extern void softlockup_tick(void)
  extern void spawn_softlockup_task(void);
  extern void touch_softlockup_watchdog(void);
  extern void touch_all_softlockup_watchdogs(void);
 -extern unsigned long  softlockup_thresh;
 +extern unsigned int  softlockup_panic;
  extern unsigned long sysctl_hung_task_check_count;
  extern unsigned long sysctl_hung_task_timeout_secs;
  extern unsigned long sysctl_hung_task_warnings;
 +extern int softlockup_thresh;
  #else
  static inline void softlockup_tick(void)
  {
@@@ -767,7 -766,6 +767,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 */
@@@ -1849,7 -1847,9 +1848,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);
  
@@@ -2026,6 -2026,19 +2027,19 @@@ static inline int fatal_signal_pending(
        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));