public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Information about move_tasks return
@ 2004-11-22 12:16 Cícero
  2004-11-22 16:02 ` Darren Hart
  0 siblings, 1 reply; 4+ messages in thread
From: Cícero @ 2004-11-22 12:16 UTC (permalink / raw)
  To: linux-kernel

hi

I am looking for the result of the function  move_task in

kernel/sched.c , I have observed that it returns an int value and as I
print it with printk.

I have created a int variable 'results_move_task' which capture the result of

move_task and I print it with printk("%d",results_move_task); I
observed that it often returns the value '1' and sometimes it returns
'2' or more. Is it really correct?

[]s

PS:Sorry about my english.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Information about move_tasks return
  2004-11-22 12:16 Cícero
@ 2004-11-22 16:02 ` Darren Hart
  2004-11-23  4:56   ` Randy.Dunlap
  0 siblings, 1 reply; 4+ messages in thread
From: Darren Hart @ 2004-11-22 16:02 UTC (permalink / raw)
  To: Cícero; +Cc: lkml

On Mon, 2004-11-22 at 08:16 -0400, Cícero wrote:
> hi
> 
> I am looking for the result of the function  move_task in
> 
> kernel/sched.c , I have observed that it returns an int value and as I
> print it with printk.
> 
> I have created a int variable 'results_move_task' which capture the result of
> 
> move_task and I print it with printk("%d",results_move_task); I
> observed that it often returns the value '1' and sometimes it returns
> '2' or more. Is it really correct?

/*
 * move_tasks tries to move up to max_nr_move tasks from busiest to this_rq,
 * as part of a balancing operation within "domain". Returns the number of
 * tasks moved.
 *
 * Called with both runqueues locked.
 */
static int move_tasks(runqueue_t *this_rq, int this_cpu, runqueue_t *busiest,
                      unsigned long max_nr_move, struct sched_domain *sd,
                      enum idle_type idle)
{
...


So as the "documentation" states, it returns the number of tasks
actually moved.  For instance, The balancing code may request 4 tasks be
moved, but for various reasons, only 2 were actually moved to other
CPUs, move_tasks() would return 2.

-- 
Darren Hart <darren@dvhart.com>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Information about move_tasks return
  2004-11-22 16:02 ` Darren Hart
@ 2004-11-23  4:56   ` Randy.Dunlap
  0 siblings, 0 replies; 4+ messages in thread
From: Randy.Dunlap @ 2004-11-23  4:56 UTC (permalink / raw)
  To: Darren Hart; +Cc: Cícero, lkml

Darren Hart wrote:
> On Mon, 2004-11-22 at 08:16 -0400, Cícero wrote:
> 
>>hi
>>
>>I am looking for the result of the function  move_task in
>>
>>kernel/sched.c , I have observed that it returns an int value and as I
>>print it with printk.
>>
>>I have created a int variable 'results_move_task' which capture the result of
>>
>>move_task and I print it with printk("%d",results_move_task); I
>>observed that it often returns the value '1' and sometimes it returns
>>'2' or more. Is it really correct?
> 
> 
> /*
>  * move_tasks tries to move up to max_nr_move tasks from busiest to this_rq,
>  * as part of a balancing operation within "domain". Returns the number of
>  * tasks moved.
>  *
>  * Called with both runqueues locked.
>  */
> static int move_tasks(runqueue_t *this_rq, int this_cpu, runqueue_t *busiest,
>                       unsigned long max_nr_move, struct sched_domain *sd,
>                       enum idle_type idle)
> {
> ...
> 
> 
> So as the "documentation" states, it returns the number of tasks
> actually moved.  For instance, The balancing code may request 4 tasks be
> moved, but for various reasons, only 2 were actually moved to other
> CPUs, move_tasks() would return 2.

and there are a few cases/places where the move target count
is limited to only 1.

-- 
~Randy

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Information about move_tasks return
@ 2004-11-30 22:11 Cícero
  0 siblings, 0 replies; 4+ messages in thread
From: Cícero @ 2004-11-30 22:11 UTC (permalink / raw)
  To: linux-kernel

> So as the "documentation" states, it returns the number of tasks
> actually moved.  For instance, The balancing code may request 4 tasks be
> moved, but for various reasons, only 2 were actually moved to other
> CPUs, move_tasks() would return 2.

hi,

Can you speak more about those various reasons? or tell me where I can
find out more information ?


[]s
:wq!

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-11-30 22:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-11-30 22:11 Information about move_tasks return Cícero
  -- strict thread matches above, loose matches on Subject: below --
2004-11-22 12:16 Cícero
2004-11-22 16:02 ` Darren Hart
2004-11-23  4:56   ` Randy.Dunlap

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox