aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/debug_locks.h5
-rw-r--r--include/linux/sched.h10
2 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/debug_locks.h b/include/linux/debug_locks.h
index 1678a5de7013..f4a5871767f5 100644
--- a/include/linux/debug_locks.h
+++ b/include/linux/debug_locks.h
@@ -47,6 +47,7 @@ struct task_struct;
47 47
48#ifdef CONFIG_LOCKDEP 48#ifdef CONFIG_LOCKDEP
49extern void debug_show_all_locks(void); 49extern void debug_show_all_locks(void);
50extern void __debug_show_held_locks(struct task_struct *task);
50extern void debug_show_held_locks(struct task_struct *task); 51extern void debug_show_held_locks(struct task_struct *task);
51extern void debug_check_no_locks_freed(const void *from, unsigned long len); 52extern void debug_check_no_locks_freed(const void *from, unsigned long len);
52extern void debug_check_no_locks_held(struct task_struct *task); 53extern void debug_check_no_locks_held(struct task_struct *task);
@@ -55,6 +56,10 @@ static inline void debug_show_all_locks(void)
55{ 56{
56} 57}
57 58
59static inline void __debug_show_held_locks(struct task_struct *task)
60{
61}
62
58static inline void debug_show_held_locks(struct task_struct *task) 63static inline void debug_show_held_locks(struct task_struct *task)
59{ 64{
60} 65}
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 288245f83bd4..0846f1f9e196 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -258,12 +258,17 @@ extern void account_process_tick(struct task_struct *task, int user);
258extern void update_process_times(int user); 258extern void update_process_times(int user);
259extern void scheduler_tick(void); 259extern void scheduler_tick(void);
260 260
261extern void sched_show_task(struct task_struct *p);
262
261#ifdef CONFIG_DETECT_SOFTLOCKUP 263#ifdef CONFIG_DETECT_SOFTLOCKUP
262extern void softlockup_tick(void); 264extern void softlockup_tick(void);
263extern void spawn_softlockup_task(void); 265extern void spawn_softlockup_task(void);
264extern void touch_softlockup_watchdog(void); 266extern void touch_softlockup_watchdog(void);
265extern void touch_all_softlockup_watchdogs(void); 267extern void touch_all_softlockup_watchdogs(void);
266extern int softlockup_thresh; 268extern int softlockup_thresh;
269extern unsigned long sysctl_hung_task_check_count;
270extern unsigned long sysctl_hung_task_timeout_secs;
271extern long sysctl_hung_task_warnings;
267#else 272#else
268static inline void softlockup_tick(void) 273static inline void softlockup_tick(void)
269{ 274{
@@ -1041,6 +1046,11 @@ struct task_struct {
1041/* ipc stuff */ 1046/* ipc stuff */
1042 struct sysv_sem sysvsem; 1047 struct sysv_sem sysvsem;
1043#endif 1048#endif
1049#ifdef CONFIG_DETECT_SOFTLOCKUP
1050/* hung task detection */
1051 unsigned long last_switch_timestamp;
1052 unsigned long last_switch_count;
1053#endif
1044/* CPU-specific state of this task */ 1054/* CPU-specific state of this task */
1045 struct thread_struct thread; 1055 struct thread_struct thread;
1046/* filesystem information */ 1056/* filesystem information */