Date: Mon, 14 Nov 2011 19:08:01 +0200 From: Andriy Gapon <avg@FreeBSD.org> To: Alan Cox <alc@rice.edu> Cc: Alan Cox <alc@FreeBSD.org>, FreeBSD current <freebsd-current@FreeBSD.org> Subject: Re: problem with 1GB pages? Message-ID: <4EC14AF1.60907@FreeBSD.org> In-Reply-To: <4EC1497B.20409@rice.edu> References: <4EBE4ECC.4060007@FreeBSD.org> <4EC0DD1D.9050704@FreeBSD.org> <4EC1497B.20409@rice.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
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 individual modules. >> on 12/11/2011 12:47 Andriy Gapon said the following: >>> Introduction. >>> 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 >>> whatsoever. >>> >>> 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 >>> http://people.freebsd.org/~avg/8gb%2b512mb.memcontrol.list.txt >>> >>> - 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 >>> >>> Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT> >>> >>> Features2=0x802009<SSE3,MON,CX16,POPCNT> >>> AMD Features=0xee500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM,3DNow!+,3DNow!> >>> AMD >>> Features2=0x37ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,IBS,SKINIT,WDT> >>> >>> 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. >> > -- Andriy Gapon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4EC14AF1.60907>