On Wed, 25 Feb 2015 22:26:44 -0500
Steven Rostedt <[email protected]> wrote:

> +static int find_next_push_cpu(struct rq *rq)
> +{
> +     struct rq *next_rq;
> +     int cpu;
> +
> +     while (1) {
> +             cpu = rto_next_cpu(rq);
> +             if (cpu >= nr_cpu_ids)
> +                     break;
> +             next_rq = cpu_rq(cpu);
> +
> +             /* Make sure the next rq can push to this rq */
> +             if (next_rq->rt.highest_prio.next <
> +                 rq->rt.highest_prio.curr &&

> +                 next_rq->rt.highest_prio.next <
> +                 rq->rt.highest_prio.next)

OK, this second comparison is not needed. I was looking at the code in
more detail, and see that the .curr is updated when a new task is
enqueued, and it does not represent the task currently running, but the
highest priority task that is on the rq.

I'll be sending a v4 soon with this update.

-- Steve

> +                     break;
> +     }
> +
> +     return cpu;
> +}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to