Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Aug 2014 19:07:15 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 192487] New: cpucontrol uses unsafe procedure to detect current microcode version
Message-ID:  <bug-192487-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192487

            Bug ID: 192487
           Summary: cpucontrol uses unsafe procedure to detect current
                    microcode version
           Product: Base System
           Version: 11.0-CURRENT
          Hardware: Any
                OS: Any
            Status: Needs Triage
          Severity: Affects Many People
          Priority: ---
         Component: bin
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: hmh+freebsd@hmh.eng.br

The Intel SDM, vol 3A, section 9.11.7.1, defines a procedure that should be
followed to ensure a valid response from the System Processor when it is
queried about the running microcode revision.

The userspace cpucontrol utility fails to follow this procedure. cpucontrol
fails to pre-init MSR 0x8B (MSR_BIOS_SIGN) with zero and issue a cpuid(1),
before it can get valid data from that same MSR.

Please refer to example 9-9 in the Intel SDM vol 3A page 9-36.

I have no idea how important this procedure is on current Intel processors, but
the impact of getting garbage from MSR_BIOS_SIGN includes either incorrectly
downgrading, or incorrectly refusing to upgrade microcode.

The bug is in file: usr.sbin/cpucontrol/intel.c

-- 
You are receiving this mail because:
You are the assignee for the bug.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-192487-8>