Dne Út 10. ledna 2012 19:23:24 Petr Tesarik napsal(a): > Dne Út 10. ledna 2012 19:14:32 Petr Tesarik napsal(a): > > Hi folks, > > > > I've just discovered that the crash utility fails to initialize the vm > > subsystem properly on our latest SLES 32-bit kernels. It turns out that > > our kernels are compiled with CONFIG_DISCONTIGMEM=y, which causes pgdat > > structs to be allocated by the remap allocator (cf. > > arch/x86/mm/numa_32.c and also the code in setup_node_data). > > Ah, I forgot a test case. I ran this on kernel-pae-3.0.13-0.5: > > crash> kmem -n > [...] > NODE SIZE PGLIST_DATA BOOTMEM_DATA NODE_ZONES > 1 1048576 f2800080 ---- f2800080 > ^^^^^^^^ > Take this: > > crash> vtop f2800080 > VIRTUAL PHYSICAL > f2800080 1fde00080 > > PAGE DIRECTORY: c08ed000 > PGD: c08ed018 => 8ea001 > PMD: 8eaca0 => 80000001fde001e3 > PAGE: 1fde00000 (2MB) > > PTE PHYSICAL FLAGS > 80000001fde001e3 1fde00000 (PRESENT|RW|ACCESSED|DIRTY|PSE|GLOBAL|NX) > > PAGE PHYSICAL MAPPING INDEX CNT FLAGS BTW the data from struct page is really missing here. I traced this down to an integer overflow in dump_memory_nodes(): node_start_paddr = PTOB(node_start_pfn); David (Mair), could you address this, as already discussed in private mails, please? TIA, Petr Tesarik SUSE Linux -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility