diff options
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 1c876e27ff93..7a54e62763c5 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -552,6 +552,23 @@ struct sched_info { | |||
552 | extern struct file_operations proc_schedstat_operations; | 552 | extern struct file_operations proc_schedstat_operations; |
553 | #endif | 553 | #endif |
554 | 554 | ||
555 | #ifdef CONFIG_TASK_DELAY_ACCT | ||
556 | struct task_delay_info { | ||
557 | spinlock_t lock; | ||
558 | unsigned int flags; /* Private per-task flags */ | ||
559 | |||
560 | /* For each stat XXX, add following, aligned appropriately | ||
561 | * | ||
562 | * struct timespec XXX_start, XXX_end; | ||
563 | * u64 XXX_delay; | ||
564 | * u32 XXX_count; | ||
565 | * | ||
566 | * Atomicity of updates to XXX_delay, XXX_count protected by | ||
567 | * single lock above (split into XXX_lock if contention is an issue). | ||
568 | */ | ||
569 | }; | ||
570 | #endif | ||
571 | |||
555 | enum idle_type | 572 | enum idle_type |
556 | { | 573 | { |
557 | SCHED_IDLE, | 574 | SCHED_IDLE, |
@@ -945,6 +962,9 @@ struct task_struct { | |||
945 | * cache last used pipe for splice | 962 | * cache last used pipe for splice |
946 | */ | 963 | */ |
947 | struct pipe_inode_info *splice_pipe; | 964 | struct pipe_inode_info *splice_pipe; |
965 | #ifdef CONFIG_TASK_DELAY_ACCT | ||
966 | struct task_delay_info *delays; | ||
967 | #endif | ||
948 | }; | 968 | }; |
949 | 969 | ||
950 | static inline pid_t process_group(struct task_struct *tsk) | 970 | static inline pid_t process_group(struct task_struct *tsk) |