diff options
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 68a504f6e474..b161ef8a902e 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -472,11 +472,15 @@ struct sched_dl_entity { | |||
472 | * has not been executed yet. This flag is useful to avoid race | 472 | * has not been executed yet. This flag is useful to avoid race |
473 | * conditions between the inactive timer handler and the wakeup | 473 | * conditions between the inactive timer handler and the wakeup |
474 | * code. | 474 | * code. |
475 | * | ||
476 | * @dl_overrun tells if the task asked to be informed about runtime | ||
477 | * overruns. | ||
475 | */ | 478 | */ |
476 | unsigned int dl_throttled : 1; | 479 | unsigned int dl_throttled : 1; |
477 | unsigned int dl_boosted : 1; | 480 | unsigned int dl_boosted : 1; |
478 | unsigned int dl_yielded : 1; | 481 | unsigned int dl_yielded : 1; |
479 | unsigned int dl_non_contending : 1; | 482 | unsigned int dl_non_contending : 1; |
483 | unsigned int dl_overrun : 1; | ||
480 | 484 | ||
481 | /* | 485 | /* |
482 | * Bandwidth enforcement timer. Each -deadline task has its | 486 | * Bandwidth enforcement timer. Each -deadline task has its |
@@ -551,6 +555,14 @@ struct task_struct { | |||
551 | unsigned long wakee_flip_decay_ts; | 555 | unsigned long wakee_flip_decay_ts; |
552 | struct task_struct *last_wakee; | 556 | struct task_struct *last_wakee; |
553 | 557 | ||
558 | /* | ||
559 | * recent_used_cpu is initially set as the last CPU used by a task | ||
560 | * that wakes affine another task. Waker/wakee relationships can | ||
561 | * push tasks around a CPU where each wakeup moves to the next one. | ||
562 | * Tracking a recently used CPU allows a quick search for a recently | ||
563 | * used CPU that may be idle. | ||
564 | */ | ||
565 | int recent_used_cpu; | ||
554 | int wake_cpu; | 566 | int wake_cpu; |
555 | #endif | 567 | #endif |
556 | int on_rq; | 568 | int on_rq; |
@@ -1427,6 +1439,7 @@ extern int idle_cpu(int cpu); | |||
1427 | extern int sched_setscheduler(struct task_struct *, int, const struct sched_param *); | 1439 | extern int sched_setscheduler(struct task_struct *, int, const struct sched_param *); |
1428 | extern int sched_setscheduler_nocheck(struct task_struct *, int, const struct sched_param *); | 1440 | extern int sched_setscheduler_nocheck(struct task_struct *, int, const struct sched_param *); |
1429 | extern int sched_setattr(struct task_struct *, const struct sched_attr *); | 1441 | extern int sched_setattr(struct task_struct *, const struct sched_attr *); |
1442 | extern int sched_setattr_nocheck(struct task_struct *, const struct sched_attr *); | ||
1430 | extern struct task_struct *idle_task(int cpu); | 1443 | extern struct task_struct *idle_task(int cpu); |
1431 | 1444 | ||
1432 | /** | 1445 | /** |
@@ -1484,6 +1497,11 @@ static inline struct thread_info *task_thread_info(struct task_struct *task) | |||
1484 | extern struct task_struct *find_task_by_vpid(pid_t nr); | 1497 | extern struct task_struct *find_task_by_vpid(pid_t nr); |
1485 | extern struct task_struct *find_task_by_pid_ns(pid_t nr, struct pid_namespace *ns); | 1498 | extern struct task_struct *find_task_by_pid_ns(pid_t nr, struct pid_namespace *ns); |
1486 | 1499 | ||
1500 | /* | ||
1501 | * find a task by its virtual pid and get the task struct | ||
1502 | */ | ||
1503 | extern struct task_struct *find_get_task_by_vpid(pid_t nr); | ||
1504 | |||
1487 | extern int wake_up_state(struct task_struct *tsk, unsigned int state); | 1505 | extern int wake_up_state(struct task_struct *tsk, unsigned int state); |
1488 | extern int wake_up_process(struct task_struct *tsk); | 1506 | extern int wake_up_process(struct task_struct *tsk); |
1489 | extern void wake_up_new_task(struct task_struct *tsk); | 1507 | extern void wake_up_new_task(struct task_struct *tsk); |