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