[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140128065316.GB27636@redhat.com>
Date: Tue, 28 Jan 2014 01:53:16 -0500
From: Dave Jones <davej@...hat.com>
To: Tang Chen <tangchen@...fujitsu.com>
Cc: David Rientjes <rientjes@...gle.com>, tglx@...utronix.de,
mingo@...hat.com, hpa@...or.com, akpm@...ux-foundation.org,
zhangyanfei@...fujitsu.com, guz.fnst@...fujitsu.com,
x86@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] numa, mem-hotplug: Fix stack overflow in numa when
seting kernel nodes to unhotpluggable.
On Tue, Jan 28, 2014 at 01:17:21PM +0800, Tang Chen wrote:
> Seeing from your earlier mail, it crashed at:
>
> while (zonelist_zone_idx(z) > highest_zoneidx)
> de: 3b 77 08 cmp 0x8(%rdi),%esi
>
>
> I stuck this at the top of the function..
>
> printk(KERN_ERR "z:%p nodes:%p highest:%d\n", z, nodes, highest_zoneidx);
>
> and got
>
> z: 1d08 nodes: (null) highest:3
>
>
> nodes=null and highest=3, they are correct. When looking into
> next_zones_zonelist(),
> I cannot see why it crashed. So, can you print the zone id in the
> for_each_zone_zonelist() loop in nr_free_zone_pages() ?
> I want to know why it crashed. A NULL pointer ? Which one ?
It's not so easy further in the function, because the oops scrolls off
any useful printks, there's no scrollback, and no logging..
I even tried adding some udelays to slow things down (and using boot_delay)
but that makes things just hang seemingly indefinitly.
What about that 'z' ptr though ? 0x1d08 seems like a strange address
for us to have a structure at, though I'm not too familiar with the early
boot code, so maybe we do have something down there ?
Dave
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists