diff options
| author | Dan McDonald <danmcd@joyent.com> | 2021-07-07 10:12:37 -0400 |
|---|---|---|
| committer | Dan McDonald <danmcd@joyent.com> | 2021-07-07 10:12:41 -0400 |
| commit | d18a74b88693eb1597200dd2e5abe0727bc11ad9 (patch) | |
| tree | 548750903500994239f19cd50b3cb7869c08bef4 /usr/src/uts/i86pc/os/microcode.c | |
| parent | 4b6776536738b147f6c57dadedcfcfc0ac0a3a9b (diff) | |
| parent | ffc946bc87951cc850a82348f705c4081080f818 (diff) | |
| download | illumos-joyent-d18a74b88693eb1597200dd2e5abe0727bc11ad9.tar.gz | |
[illumos-gate merge]
commit ffc946bc87951cc850a82348f705c4081080f818
13900 Update Intel microcode to 20210608
commit afcdc73a9924f4ee06d1c0e75823ab1db7d742c3
13901 Incorrect calculation of Intel microcode extended patch signature checksum
commit b3d11974d0ef0679e47da102fafb125bb1d94470
13929 SMB encryption does not work with macOS 11.4
commit 74e12c43fe52f2c30f36e65a4d0fb0e8dfd7068a
3163 nss: need local netgroup implementation
commit 1a065e93eee983124652c3eb0cfdcb4776cd89ab
12782 GRUB should pass pool and vdev GUIDs in $ZFS-BOOTFS
commit 3a18338393f3485e50eae6288b6a9ab89e9f715a
13890 Some manual pages miss spaces next to formatting
commit 88e8a81ba29ce242b8e7eade29af1f3d301ac525
13889 ctfdump -c should sort output stably
commit 7781236b33d51a2eb1e29bf336bdba8ddfcfff6e
13884 dis(1) should pick stable names for symbols
commit 1e9e241fbdc7ae75a7b37c1e7afc8c96d2f43e1e
13905 zfs holds is quadratic
commit 6b641d7a35808436d7283b7057a01791e2e2a4e2
13861 bhyve apicv logic could take more care
Conflicts:
exception_lists/copyright
exception_lists/keywords
exception_lists/wscheck
manifest
Diffstat (limited to 'usr/src/uts/i86pc/os/microcode.c')
| -rw-r--r-- | usr/src/uts/i86pc/os/microcode.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/usr/src/uts/i86pc/os/microcode.c b/usr/src/uts/i86pc/os/microcode.c index d07a79bf18..cbcecadbef 100644 --- a/usr/src/uts/i86pc/os/microcode.c +++ b/usr/src/uts/i86pc/os/microcode.c @@ -25,6 +25,7 @@ * * Copyright 2012 Nexenta Systems, Inc. All rights reserved. * Copyright (c) 2018, Joyent, Inc. + * Copyright 2021 OmniOS Community Edition (OmniOSce) Association. */ #include <sys/asm_linkage.h> @@ -609,18 +610,18 @@ ucode_locate_intel(cpu_t *cp, cpu_ucode_info_t *uinfop, ucode_file_t *ufp) rc = EM_FILESIZE; } else if (ucode_checksum_intel(0, ext_size, (uint8_t *)(ucodefp->uf_ext_table))) { - rc = EM_CHECKSUM; + rc = EM_EXTCHECKSUM; } else { int i; - ext_size -= UCODE_EXT_TABLE_SIZE_INTEL; - for (i = 0; i < ucodefp->uf_ext_table->uet_count; - i++) { - if (ucode_checksum_intel(0, - UCODE_EXT_SIG_SIZE_INTEL, - (uint8_t *)(&(ucodefp->uf_ext_table-> - uet_ext_sig[i])))) { - rc = EM_CHECKSUM; + for (i = 0; i < ucodefp->uf_ext_table->uet_count; i++) { + ucode_ext_sig_intel_t *sig; + + sig = &ucodefp->uf_ext_table->uet_ext_sig[i]; + + if (ucode_checksum_intel_extsig(uhp, + sig) != 0) { + rc = EM_SIGCHECKSUM; break; } } |
