problem with 1GB pages?
avg at FreeBSD.org
Mon Nov 14 17:08:15 UTC 2011
on 14/11/2011 19:01 Alan Cox said the following:
> On 11/14/2011 03:19, Andriy Gapon wrote:
>> Please disregard my report.
>> I've tracked the problem to one of the new modules being faulty. But memtest86*
>> tools still don't detect any issues with it. Apparently FreeBSD is a much more
>> thorough memory tester than the specialized tools :-)
>> Apologies for the noise.
> Interesting, nonetheless. I would have never guessed that disabling 1 GB pages
> would mask a problem due to faulty memory.
Apologies for withholding the information - the problems actually reappeared even
with 1GB pages disable, but for some reason or purely by chance it just took
longer than usual. It's then that I started torture tests (libreoffice builds) on
>> on 12/11/2011 12:47 Andriy Gapon said the following:
>>> I have an AMD-based system with a Fam10h CPU (with 1GB pages support), the
>>> system chipset contains an integrated graphics device (that uses a region of the
>>> main memory as a graphics memory). The chipset supports memory hoisting to
>>> compensate for the PCI memory window and the graphics aperture both of which are
>>> located below 4GB.
>>> The latest OS version installed on this system is 9-CURRENT from the middle of
>>> September (r225560), architecture is amd64.
>>> Until recently the system had 4GB of RAM installed and I had no problems with it
>>> Recently though I have added another 4GB of RAM to the system. Before booting
>>> to FreeBSD I tested the memory with multiple passes of memtest86 and
>>> memetest86+, no errors were detected by those.
>>> However with FreeBSD I immediately started getting "flaky memory" symptoms like
>>> multiple internal compiler errors during compilation of non-trivially sized
>>> projects (world, libreoffice).
>>> I re-run memory tests which again revealed nothing and then started playing with
>>> various VM subsystem and memory related knobs in FreeBSD. I recalled that a
>>> long while ago there were some problems with 1GB pages and so their use used to
>>> be disabled. On a hunch I disabled 1GB pages again:
>>> @@ -471,7 +471,7 @@ create_pagetables(vm_paddr_t *firstaddr)
>>> ndmpdp = 4;
>>> DMPDPphys = allocpages(firstaddr, NDMPML4E);
>>> ndm1g = 0;
>>> - if ((amd_feature& AMDID_PAGE1GB) != 0)
>>> + if (0&& (amd_feature& AMDID_PAGE1GB) != 0)
>>> ndm1g = ptoa(Maxmem)>> PDPSHIFT;
>>> if (ndm1g< ndmpdp)
>>> DMPDphys = allocpages(firstaddr, ndmpdp - ndm1g);
>>> And the flakiness went away.
>>> Not sure what kind of useful information I should provide with this report.
>>> Here's couple of things that I think could be of use.
>>> - memcontrol list output
>>> - BIOS memory map
>>> SMAP type=01 base=0000000000000000 end=000000000009f800 len=000000000009f800
>>> SMAP type=02 base=00000000000f0000 end=0000000000100000 len=0000000000010000
>>> SMAP type=02 base=00000000fec00000 end=0000000100000000 len=0000000001400000
>>> SMAP type=02 base=00000000e0000000 end=00000000f0000000 len=0000000010000000
>>> SMAP type=02 base=000000000009f800 end=00000000000a0000 len=0000000000000800
>>> SMAP type=02 base=00000000afdf0000 end=00000000afe00000 len=0000000000010000
>>> SMAP type=01 base=0000000000100000 end=00000000afde0000 len=00000000afce0000
>>> SMAP type=03 base=00000000afde3000 end=00000000afdf0000 len=000000000000d000
>>> SMAP type=04 base=00000000afde0000 end=00000000afde3000 len=0000000000003000
>>> SMAP type=01 base=0000000100000000 end=0000000230000000 len=0000000130000000
>>> - dmesg snippet
>>> CPU: AMD Athlon(tm) II X2 250 Processor (3013.78-MHz K8-class CPU)
>>> Origin = "AuthenticAMD" Id = 0x100f62 Family = 10 Model = 6 Stepping = 2
>>> AMD Features=0xee500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM,3DNow!+,3DNow!>
>>> TSC: P-state invariant
>>> real memory = 8589934592 (8192 MB)
>>> avail memory = 7617662976 (7264 MB)
>>> - Top Of Memory MSR
>>> MSR 0xc001001a: 0x00000000 0xd0000000
>>> - Top Of Memory 2 MSR
>>> MSR 0xc001001d: 0x00000002 0x30000000
>>> - System configuration MSR
>>> MSR 0xc0010010: 0x00000000 0x00760600
>>> Please let me know if you have any ideas or requests for additional information
>>> or testing.
>>> Thank you.
More information about the freebsd-current