svn commit: r338687 - in head/sys: dev/cpuctl x86/include x86/x86
Alexey Dokuchaev
danfe at FreeBSD.org
Tue Sep 18 08:17:36 UTC 2018
On Fri, Sep 14, 2018 at 05:04:36PM +0000, Mark Johnston wrote:
> New Revision: 338687
> URL: https://svnweb.freebsd.org/changeset/base/338687
>
> Log:
> Log a message after a successful boot-time microcode update.
Unfortunately, this had pessimized things on the unsuccessful side a bit.
(See below.)
> ...
> @@ -130,36 +148,26 @@ ucode_intel_verify(struct ucode_intel_header *hdr, siz
> uint32_t cksum, *data, size;
> int i;
>
> - if (resid < sizeof(struct ucode_intel_header)) {
> - log_err("truncated update header");
> + if (resid < sizeof(struct ucode_intel_header))
> return (1);
> - }
> size = hdr->total_size;
> if (size == 0)
> size = UCODE_INTEL_DEFAULT_DATA_SIZE +
> sizeof(struct ucode_intel_header);
>
> - if (hdr->header_version != 1) {
> - log_err("unexpected header version %u", hdr->header_version);
> + if (hdr->header_version != 1)
> return (1);
> - }
> - if (size % 16 != 0) {
> - log_err("unexpected update size %u", hdr->total_size);
> + if (size % 16 != 0)
> return (1);
> - }
> - if (resid < size) {
> - log_err("truncated update");
> + if (resid < size)
> return (1);
> - }
>
> cksum = 0;
> data = (uint32_t *)hdr;
> for (i = 0; i < size / sizeof(uint32_t); i++)
> cksum += data[i];
> - if (cksum != 0) {
> - log_err("checksum failed");
> + if (cksum != 0)
> return (1);
> - }
> return (0);
Looks like previous error messages were more detailed (truncated header,
unexpected version or size, truncated update, checksum mismatch). Now
it all falls under "microcode verification failed". Was this intentional?
./danfe
More information about the svn-src-all
mailing list