On (01/08/07 22:52), Torsten Kaiser didst pronounce:Well.... That doesn't make a whole pile of sense unless the memory map is not present. Looking at your boot log, we see this gem Node 1 spans a region with a nice little hole in the middle of DMA32. In our test machines, we wouldn't see a hole like this, at least that I can recall so it would appear to work on some machines. On SPARSEMEM, sparse_init() is responsible for allocating memmap for each section. In 2.6.22-rc6-mm1, it allocated the memory if the section was *valid*. In 2.6.23-rc1-mm1, it allocates the memory if the section is *present* due to the patch sparsemem-record-when-a-section-has-a-valid-mem_map.patch[1]. Much later in the init process, memmap is initialised based on spanned memory, not present memory so initialisation will init memmap that resides in holes if a zone spans that area in a node which is the case on this machine. I think this is why it kablamos - it's inits memmap that wasn't allocated because it's not present and the suprise is that it doesn't blow up sooner. Please try the patch below Torsten, thanks. [1] yeah, I acked this patch and I had read through it. My bad if the patch below does fix the problem diff -rup -X /usr/src/patchset-0.6/bin//dontdiff linux-2.6.23-rc1-mm2-clean/mm/sparse.c linux-2.6.23-rc1-mm2-present_revert/mm/sparse.c --- linux-2.6.23-rc1-mm2-clean/mm/sparse.c 2007-08-01 10:09:39.000000000 +0100 +++ linux-2.6.23-rc1-mm2-present_revert/mm/sparse.c 2007-08-02 00:27:00.000000000 +0100 @@ -483,7 +483,7 @@ void __init sparse_init(void) unsigned long *usemap; for (pnum = 0; pnum < NR_MEM_SECTIONS; pnum++) { - if (!present_section_nr(pnum)) + if (!valid_section_nr(pnum)) continue; map = sparse_early_mem_map_alloc(pnum); -
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Andrew Morton | -mm merge plans for 2.6.23 |
| James Bottomley | [Ksummit-2008-discuss] Fixing the Kernel Janitors project |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
git: | |
| Gerrit Renker | [PATCH 18/37] dccp: Support for Mandatory options |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | Re: [GIT]: Networking |
| Tantilov, Emil S | WARNING: at include/net/sock.h:417 udp_lib_unhash |
