On 16 November 2013 17:49, Eitan Adler <lists_at_eitanadler.com> wrote: > On Sat, Nov 16, 2013 at 4:12 PM, Zach Crum <crum.zach_at_gmail.com> wrote: >> This setting is not listed in /boot/defaults/loader.conf. Is it supposed to >> be singular or plural? > > Plural. > > I will commit the patch. The FAQ update patch looks fine. > Does any know of cases where this memory test actually catches errors? > How important is it? The boot time test is primarily of historical significance, and doesn't really provide value on contemporary systems. It's mainly a workaround for ancient broken BIOSes that might return bogus memory map data. I intend to commit the patch below that disables it by default. The variable name is "hw.memtest.tests" as it's intended to be extended to a bitmap of tests to run at boot, with other bits representing more comprehensive tests. -Ed commit 58f501f70427ce2aeb9c8b18d2b7bec543818dae Author: Ed Maste <emaste_at_freebsd.org> Date: Thu Nov 21 12:31:06 2013 -0500 Disable amd64 boot time memory test by default The page presence memory test takes a long time on large memory systems and has little value on contemporary amd64 hardware. diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c index 7f05d58..df03e55 100644 --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c _at__at_ -1476,13 +1476,15 _at__at_ getmemsize(caddr_t kmdp, u_int64_t first) Maxmem = atop(physmem_tunable); /* - * By default enable the memory test on real hardware, and disable - * it if we appear to be running in a VM. This avoids touching all - * pages unnecessarily, which doesn't matter on real hardware but is - * bad for shared VM hosts. Use a general name so that - * one could eventually do more with the code than just disable it. + * The boot memory test is disabled by default, as it takes a + * significant amount of time on large-memory systems, and is + * unfriendly to virtual machines as it unnecessarily touches all + * pages. + * + * A general name is used as the code may be extended to support + * additional tests beyond the current "page present" test. */ - memtest = (vm_guest > VM_GUEST_NO) ? 0 : 1; + memtest = 0; TUNABLE_ULONG_FETCH("hw.memtest.tests", &memtest); /*Received on Thu Nov 21 2013 - 16:42:44 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:44 UTC