Re: x86 remap allocator in kernel 3.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux