linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* Redundant zonelist initialization
@ 2003-05-08 11:23 Andi Kleen
  2003-05-08 12:22 ` Martin J. Bligh
  0 siblings, 1 reply; 4+ messages in thread
From: Andi Kleen @ 2003-05-08 11:23 UTC (permalink / raw)
  To: linux-mm; +Cc: akpm

When booting 2.5.69 on a 4 Node CONFIG_DISCONTIGMEM machine I get:

Building zonelist for node : 0
Building zonelist for node : 1
Building zonelist for node : 2
Building zonelist for node : 3
Building zonelist for node : 0
Building zonelist for node : 0
Building zonelist for node : 0
Building zonelist for node : 0

Why does it initialize the zonelist for node 0 five times?

-Andi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>

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

* Re: Redundant zonelist initialization
  2003-05-08 11:23 Redundant zonelist initialization Andi Kleen
@ 2003-05-08 12:22 ` Martin J. Bligh
  2003-05-08 14:52   ` Andi Kleen
  0 siblings, 1 reply; 4+ messages in thread
From: Martin J. Bligh @ 2003-05-08 12:22 UTC (permalink / raw)
  To: Andi Kleen, linux-mm; +Cc: akpm


--On Thursday, May 08, 2003 13:23:39 +0200 Andi Kleen <ak@muc.de> wrote:

> When booting 2.5.69 on a 4 Node CONFIG_DISCONTIGMEM machine I get:
> 
> Building zonelist for node : 0
> Building zonelist for node : 1
> Building zonelist for node : 2
> Building zonelist for node : 3
> Building zonelist for node : 0
> Building zonelist for node : 0
> Building zonelist for node : 0
> Building zonelist for node : 0
> 
> Why does it initialize the zonelist for node 0 five times?

Looks like you have numnodes wrong ...

void __init build_all_zonelists(void)
{
        int i;

        for(i = 0 ; i < numnodes ; i++)
                build_zonelists(NODE_DATA(i));
}



--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>

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

* Re: Redundant zonelist initialization
  2003-05-08 12:22 ` Martin J. Bligh
@ 2003-05-08 14:52   ` Andi Kleen
  2003-05-08 22:41     ` Martin J. Bligh
  0 siblings, 1 reply; 4+ messages in thread
From: Andi Kleen @ 2003-05-08 14:52 UTC (permalink / raw)
  To: Martin J. Bligh; +Cc: Andi Kleen, linux-mm, akpm

On Thu, May 08, 2003 at 02:22:47PM +0200, Martin J. Bligh wrote:
> 
> 
> --On Thursday, May 08, 2003 13:23:39 +0200 Andi Kleen <ak@muc.de> wrote:
> 
> > When booting 2.5.69 on a 4 Node CONFIG_DISCONTIGMEM machine I get:
> > 
> > Building zonelist for node : 0
> > Building zonelist for node : 1
> > Building zonelist for node : 2
> > Building zonelist for node : 3
> > Building zonelist for node : 0
> > Building zonelist for node : 0
> > Building zonelist for node : 0
> > Building zonelist for node : 0
> > 
> > Why does it initialize the zonelist for node 0 five times?
> 
> Looks like you have numnodes wrong ...
> 
> void __init build_all_zonelists(void)
> {
>         int i;
> 
>         for(i = 0 ; i < numnodes ; i++)
>                 build_zonelists(NODE_DATA(i));
> }

Only with new mathematics :-) How can any value for numnodes explain 
such a sequence ? 

I think it actually comes from the two loops calling build_zonelist_node 
in build_zonelists(). But I'm not sure why it produces such a strange sequence.

-Andi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>

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

* Re: Redundant zonelist initialization
  2003-05-08 14:52   ` Andi Kleen
@ 2003-05-08 22:41     ` Martin J. Bligh
  0 siblings, 0 replies; 4+ messages in thread
From: Martin J. Bligh @ 2003-05-08 22:41 UTC (permalink / raw)
  To: Andi Kleen; +Cc: linux-mm, akpm

>> > When booting 2.5.69 on a 4 Node CONFIG_DISCONTIGMEM machine I get:
>> > 
>> > Building zonelist for node : 0
>> > Building zonelist for node : 1
>> > Building zonelist for node : 2
>> > Building zonelist for node : 3
>> > Building zonelist for node : 0
>> > Building zonelist for node : 0
>> > Building zonelist for node : 0
>> > Building zonelist for node : 0
>> > 
>> > Why does it initialize the zonelist for node 0 five times?
>> 
>> Looks like you have numnodes wrong ...
>> 
>> void __init build_all_zonelists(void)
>> {
>>         int i;
>> 
>>         for(i = 0 ; i < numnodes ; i++)
>>                 build_zonelists(NODE_DATA(i));
>> }
> 
> Only with new mathematics :-) How can any value for numnodes explain 
> such a sequence ? 

I was thinking of "numnodes = 8", and just screwed up data for the last
few. Not quite sure how you'd avoid derefing a NULL ptr though, I guess.
 
> I think it actually comes from the two loops calling build_zonelist_node 
> in build_zonelists(). 

I don't see how it can - that printk is before the loops.

static void __init build_zonelists(pg_data_t *pgdat)
{
        int i, j, k, node, local_node;

        local_node = pgdat->node_id;
        printk("Building zonelist for node : %d\n", local_node);

> But I'm not sure why it produces such a strange sequence.

Throw a few printks in there, should tell you easily enough. 
I'll bet you a couple of beers on it being numnodes ;-)

M.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>

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

end of thread, other threads:[~2003-05-08 22:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-08 11:23 Redundant zonelist initialization Andi Kleen
2003-05-08 12:22 ` Martin J. Bligh
2003-05-08 14:52   ` Andi Kleen
2003-05-08 22:41     ` Martin J. Bligh

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