mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Fix pick_next_highest_task_rt() for cgroups sched: Cleanup: remove unused variable in try_to_wake_up() x86: Fix sched_clock_cpu for systems with unsynchronized TSC
This commit is contained in:
commit
80a186074e
@ -70,7 +70,8 @@ static void __cpuinit early_init_intel(struct cpuinfo_x86 *c)
|
||||
if (c->x86_power & (1 << 8)) {
|
||||
set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC);
|
||||
set_cpu_cap(c, X86_FEATURE_NONSTOP_TSC);
|
||||
sched_clock_stable = 1;
|
||||
if (!check_tsc_unstable())
|
||||
sched_clock_stable = 1;
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -2359,7 +2359,7 @@ static int try_to_wake_up(struct task_struct *p, unsigned int state,
|
||||
{
|
||||
int cpu, orig_cpu, this_cpu, success = 0;
|
||||
unsigned long flags;
|
||||
struct rq *rq, *orig_rq;
|
||||
struct rq *rq;
|
||||
|
||||
if (!sched_feat(SYNC_WAKEUPS))
|
||||
wake_flags &= ~WF_SYNC;
|
||||
@ -2367,7 +2367,7 @@ static int try_to_wake_up(struct task_struct *p, unsigned int state,
|
||||
this_cpu = get_cpu();
|
||||
|
||||
smp_wmb();
|
||||
rq = orig_rq = task_rq_lock(p, &flags);
|
||||
rq = task_rq_lock(p, &flags);
|
||||
update_rq_clock(rq);
|
||||
if (!(p->state & state))
|
||||
goto out;
|
||||
|
@ -1146,7 +1146,12 @@ static struct task_struct *pick_next_highest_task_rt(struct rq *rq, int cpu)
|
||||
if (next && next->prio < idx)
|
||||
continue;
|
||||
list_for_each_entry(rt_se, array->queue + idx, run_list) {
|
||||
struct task_struct *p = rt_task_of(rt_se);
|
||||
struct task_struct *p;
|
||||
|
||||
if (!rt_entity_is_task(rt_se))
|
||||
continue;
|
||||
|
||||
p = rt_task_of(rt_se);
|
||||
if (pick_rt_task(rq, p, cpu)) {
|
||||
next = p;
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user