kernel memory checks on boot vs. boot time

Andriy Gapon avg at freebsd.org
Wed Mar 23 22:46:33 UTC 2011


on 23/03/2011 21:28 Peter Wemm said the following:
> Part of the reason for this "check" is a sanity check to make sure we
> enumerated memory correctly and that we have at least got basic ram
> functionality.  The existence of hw.physmem complicates this.  On
> machines where hw.physmem could be used to tell the kernel that there
> was more ram present than the kernel enumerates (old bioses etc), this
> was kind of important to sanity check.
> 
> Even though modern hardware will fail windows compliance tests if the
> SMAP etc is wrong, never underestimate the ability of bios makers to
> find new and bizarre ways of screwing things up.
> 
> I'd kinda like to keep a basic "is this real, non mirrored ram?" test
> there.  eg: the 2-pass step of writing physical address into each page
> and then checking that they are still there on the second pass.
> 
> Oh, did I mention the machine where the ACPI bios info tells the OS
> that the current state is S3 (suspended to ram) instead of S0?
> 
> When the kernel blows up at boot without a message.. we get the blame,
> not the bios maker.

I hear what you are saying, but is there any other OS that takes this level of
responsibility?  Should we either?
I mean, hardware and BIOS vendors can screw up things in very creative ways and
it's impossible to protect against that.  When we are bug-compatible with some
other OS, then it's one thing; but when we try to to be even "better" than that,
that's quite another thing.

-- 
Andriy Gapon


More information about the freebsd-arch mailing list