Re: [PATCH] sched: Avoid unnecessarily moving highest priority task move_tasks()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Apr 21, 2006 at 02:22:57PM +1000, Peter Williams wrote:
> @@ -2052,7 +2055,13 @@ static int move_tasks(runqueue_t *this_r
>  
>  	rem_load_move = max_load_move;
>  	pinned = 1;
> -	this_min_prio = this_rq->curr->prio;
> +	this_best_prio = rq_best_prio(this_rq);
> +	busiest_best_prio = rq_best_prio(busiest);
> +	/*
> +	 * Enable handling of the case where there is more than one task
> +	 * with the best priority.
> +	 */
> +	busiest_best_prio_seen = busiest_best_prio == busiest->curr->prio;

>From this hunk, it seems like we don't want to override the skip of highest 
priority task as long as there is one such task in active list(even though
there may be few such tasks on expired list). Right? And why?

If we fix the above, we don't need busiest_best_prio_seen. Once we move one 
highest priority task, we are changing this_best_prio anyhow right?

This patch doesn't address the issue where we can skip the highest priority 
task movement if there is only one such task on the busy runqueue
(and is on the expired list..)

I can send a fix if I understand your intention for the above hunk.

thanks,
suresh
-
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/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux