deadline.c (71d29747b0e26f36a50e6a65dc0191ca742b9222) | deadline.c (821aecd09e5ad2f8d4c3d8195333d272b392f7d3) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Deadline Scheduling Class (SCHED_DEADLINE) 4 * 5 * Earliest Deadline First (EDF) + Constant Bandwidth Server (CBS). 6 * 7 * Tasks that periodically executes their instances for less than their 8 * runtime won't miss any of their deadlines. --- 1947 unchanged lines hidden (view full) --- 1956 start_hrtick_dl(rq, p); 1957 1958 if (rq->curr->sched_class != &dl_sched_class) 1959 update_dl_rq_load_avg(rq_clock_pelt(rq), rq, 0); 1960 1961 deadline_queue_push_tasks(rq); 1962} 1963 | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Deadline Scheduling Class (SCHED_DEADLINE) 4 * 5 * Earliest Deadline First (EDF) + Constant Bandwidth Server (CBS). 6 * 7 * Tasks that periodically executes their instances for less than their 8 * runtime won't miss any of their deadlines. --- 1947 unchanged lines hidden (view full) --- 1956 start_hrtick_dl(rq, p); 1957 1958 if (rq->curr->sched_class != &dl_sched_class) 1959 update_dl_rq_load_avg(rq_clock_pelt(rq), rq, 0); 1960 1961 deadline_queue_push_tasks(rq); 1962} 1963 |
1964static struct sched_dl_entity *pick_next_dl_entity(struct rq *rq, 1965 struct dl_rq *dl_rq) | 1964static struct sched_dl_entity *pick_next_dl_entity(struct dl_rq *dl_rq) |
1966{ 1967 struct rb_node *left = rb_first_cached(&dl_rq->root); 1968 1969 if (!left) 1970 return NULL; 1971 1972 return __node_2_dle(left); 1973} 1974 1975static struct task_struct *pick_task_dl(struct rq *rq) 1976{ 1977 struct sched_dl_entity *dl_se; 1978 struct dl_rq *dl_rq = &rq->dl; 1979 struct task_struct *p; 1980 1981 if (!sched_dl_runnable(rq)) 1982 return NULL; 1983 | 1965{ 1966 struct rb_node *left = rb_first_cached(&dl_rq->root); 1967 1968 if (!left) 1969 return NULL; 1970 1971 return __node_2_dle(left); 1972} 1973 1974static struct task_struct *pick_task_dl(struct rq *rq) 1975{ 1976 struct sched_dl_entity *dl_se; 1977 struct dl_rq *dl_rq = &rq->dl; 1978 struct task_struct *p; 1979 1980 if (!sched_dl_runnable(rq)) 1981 return NULL; 1982 |
1984 dl_se = pick_next_dl_entity(rq, dl_rq); | 1983 dl_se = pick_next_dl_entity(dl_rq); |
1985 BUG_ON(!dl_se); 1986 p = dl_task_of(dl_se); 1987 1988 return p; 1989} 1990 1991static struct task_struct *pick_next_task_dl(struct rq *rq) 1992{ --- 1049 unchanged lines hidden --- | 1984 BUG_ON(!dl_se); 1985 p = dl_task_of(dl_se); 1986 1987 return p; 1988} 1989 1990static struct task_struct *pick_next_task_dl(struct rq *rq) 1991{ --- 1049 unchanged lines hidden --- |