]> git.karo-electronics.de Git - linux-beck.git/commitdiff
Merge commit 'v2.6.31-rc8' into sched/core
authorIngo Molnar <mingo@elte.hu>
Wed, 2 Sep 2009 06:20:32 +0000 (08:20 +0200)
committerIngo Molnar <mingo@elte.hu>
Wed, 2 Sep 2009 06:20:35 +0000 (08:20 +0200)
Merge reason: bump from rc5 to rc8, but also pick up TP_perf_assign()
              API, a patch will be queued that depends on it.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
1  2 
include/linux/sched.h

diff --combined include/linux/sched.h
index 7bc2d9290837abda7c440bce40c3adcde7eaf790,0f1ea4a6695763debe7a6e87bf586c36efcc0c76..e209ae0e7a8a6238701abdf0a972fe8fb5ade3c9
@@@ -38,8 -38,6 +38,8 @@@
  #define SCHED_BATCH           3
  /* SCHED_ISO: reserved but not implemented yet */
  #define SCHED_IDLE            5
 +/* Can be ORed in to make sure the process is reverted back to SCHED_NORMAL on fork */
 +#define SCHED_RESET_ON_FORK     0x40000000
  
  #ifdef __KERNEL__
  
@@@ -1047,6 -1045,7 +1047,6 @@@ struct sched_class 
                              struct rq *busiest, struct sched_domain *sd,
                              enum cpu_idle_type idle);
        void (*pre_schedule) (struct rq *this_rq, struct task_struct *task);
 -      int (*needs_post_schedule) (struct rq *this_rq);
        void (*post_schedule) (struct rq *this_rq);
        void (*task_wake_up) (struct rq *this_rq, struct task_struct *task);
  
@@@ -1199,6 -1198,7 +1199,7 @@@ struct task_struct 
         * a short time
         */
        unsigned char fpu_counter;
+       s8 oomkilladj; /* OOM kill score adjustment (bit shift). */
  #ifdef CONFIG_BLK_DEV_IO_TRACE
        unsigned int btrace_seq;
  #endif
        unsigned did_exec:1;
        unsigned in_execve:1;   /* Tell the LSMs that the process is doing an
                                 * execve */
 +
 +      /* Revert to default priority/policy when forking */
 +      unsigned sched_reset_on_fork:1;
 +
        pid_t pid;
        pid_t tgid;
  
 +#ifdef CONFIG_CC_STACKPROTECTOR
        /* Canary value for the -fstack-protector gcc feature */
        unsigned long stack_canary;
 +#endif
  
        /* 
         * pointers to (original) parent process, youngest child, younger sibling,
@@@ -2287,31 -2281,23 +2288,31 @@@ static inline int need_resched(void
   * cond_resched_softirq() will enable bhs before scheduling.
   */
  extern int _cond_resched(void);
 -#ifdef CONFIG_PREEMPT_BKL
 -static inline int cond_resched(void)
 -{
 -      return 0;
 -}
 +
 +#define cond_resched() ({                     \
 +      __might_sleep(__FILE__, __LINE__, 0);   \
 +      _cond_resched();                        \
 +})
 +
 +extern int __cond_resched_lock(spinlock_t *lock);
 +
 +#ifdef CONFIG_PREEMPT
 +#define PREEMPT_LOCK_OFFSET   PREEMPT_OFFSET
  #else
 -static inline int cond_resched(void)
 -{
 -      return _cond_resched();
 -}
 +#define PREEMPT_LOCK_OFFSET   0
  #endif
 -extern int cond_resched_lock(spinlock_t * lock);
 -extern int cond_resched_softirq(void);
 -static inline int cond_resched_bkl(void)
 -{
 -      return _cond_resched();
 -}
 +
 +#define cond_resched_lock(lock) ({                            \
 +      __might_sleep(__FILE__, __LINE__, PREEMPT_LOCK_OFFSET); \
 +      __cond_resched_lock(lock);                              \
 +})
 +
 +extern int __cond_resched_softirq(void);
 +
 +#define cond_resched_softirq() ({                             \
 +      __might_sleep(__FILE__, __LINE__, SOFTIRQ_OFFSET);      \
 +      __cond_resched_softirq();                               \
 +})
  
  /*
   * Does a critical section need to be broken due to another