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); -
| KOSAKI Motohiro | [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| Nick Piggin | [patch 3/6] mm: fix fault vs invalidate race for linear mappings |
| Stefan Richter | Re: [PATCH 0/24] make atomic_read() behave consistently across all architectures |
| Ingo Molnar | [bug] stuck localhost TCP connections, v2.6.26-rc3+ |
git: | |
| Peter Zijlstra | Re: [PATCH 3/3] Convert the UDP hash lock to RCU |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | Re: 2.6.25-rc8: FTP transfer errors |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Doug Evans | Re: Stabilizing Linux |
| Robert Blum | And another version of the INFO sheet |
| Marc CORSINI | find-1.2 (binaries only) |
| Yanek Martinson | Re: Porting g++ 1.40.3 |
