aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sched.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-04-08 04:35:30 -0400
committerIngo Molnar <mingo@elte.hu>2009-04-08 04:35:30 -0400
commit5ea472a77f8e4811ceee3f44a9deda6ad6e8b789 (patch)
treea9ec5019e2b666a19874fc344ffb0dd5da6bce94 /include/linux/sched.h
parent6c009ecef8cca28c7c09eb16d0802e37915a76e1 (diff)
parent577c9c456f0e1371cbade38eaf91ae8e8a308555 (diff)
Merge commit 'v2.6.30-rc1' into perfcounters/core
Conflicts: arch/powerpc/include/asm/systbl.h arch/powerpc/include/asm/unistd.h include/linux/init_task.h Merge reason: the conflicts are non-trivial: PowerPC placement of sys_perf_counter_open has to be mixed with the new preadv/pwrite syscalls. Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h23
1 files changed, 15 insertions, 8 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 7ed41f7c5ace..8a8b84390813 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -302,17 +302,11 @@ extern int proc_dosoftlockup_thresh(struct ctl_table *table, int write,
302 struct file *filp, void __user *buffer, 302 struct file *filp, void __user *buffer,
303 size_t *lenp, loff_t *ppos); 303 size_t *lenp, loff_t *ppos);
304extern unsigned int softlockup_panic; 304extern unsigned int softlockup_panic;
305extern unsigned long sysctl_hung_task_check_count;
306extern unsigned long sysctl_hung_task_timeout_secs;
307extern unsigned long sysctl_hung_task_warnings;
308extern int softlockup_thresh; 305extern int softlockup_thresh;
309#else 306#else
310static inline void softlockup_tick(void) 307static inline void softlockup_tick(void)
311{ 308{
312} 309}
313static inline void spawn_softlockup_task(void)
314{
315}
316static inline void touch_softlockup_watchdog(void) 310static inline void touch_softlockup_watchdog(void)
317{ 311{
318} 312}
@@ -321,6 +315,15 @@ static inline void touch_all_softlockup_watchdogs(void)
321} 315}
322#endif 316#endif
323 317
318#ifdef CONFIG_DETECT_HUNG_TASK
319extern unsigned int sysctl_hung_task_panic;
320extern unsigned long sysctl_hung_task_check_count;
321extern unsigned long sysctl_hung_task_timeout_secs;
322extern unsigned long sysctl_hung_task_warnings;
323extern int proc_dohung_task_timeout_secs(struct ctl_table *table, int write,
324 struct file *filp, void __user *buffer,
325 size_t *lenp, loff_t *ppos);
326#endif
324 327
325/* Attach to any functions which should be ignored in wchan output. */ 328/* Attach to any functions which should be ignored in wchan output. */
326#define __sched __attribute__((__section__(".sched.text"))) 329#define __sched __attribute__((__section__(".sched.text")))
@@ -1258,9 +1261,8 @@ struct task_struct {
1258/* ipc stuff */ 1261/* ipc stuff */
1259 struct sysv_sem sysvsem; 1262 struct sysv_sem sysvsem;
1260#endif 1263#endif
1261#ifdef CONFIG_DETECT_SOFTLOCKUP 1264#ifdef CONFIG_DETECT_HUNG_TASK
1262/* hung task detection */ 1265/* hung task detection */
1263 unsigned long last_switch_timestamp;
1264 unsigned long last_switch_count; 1266 unsigned long last_switch_count;
1265#endif 1267#endif
1266/* CPU-specific state of this task */ 1268/* CPU-specific state of this task */
@@ -1297,6 +1299,11 @@ struct task_struct {
1297/* Protection of (de-)allocation: mm, files, fs, tty, keyrings */ 1299/* Protection of (de-)allocation: mm, files, fs, tty, keyrings */
1298 spinlock_t alloc_lock; 1300 spinlock_t alloc_lock;
1299 1301
1302#ifdef CONFIG_GENERIC_HARDIRQS
1303 /* IRQ handler threads */
1304 struct irqaction *irqaction;
1305#endif
1306
1300 /* Protection of the PI data structures: */ 1307 /* Protection of the PI data structures: */
1301 spinlock_t pi_lock; 1308 spinlock_t pi_lock;
1302 1309