[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v1 2/2] common/page_alloc: don't idle-scrub before microcode update


On 11/27/18 10:00 AM, Sergey Dyasli wrote:
Some x86 CPUs has errata regarding microcode updates. The most notorious
is Broadwell's BDX90: "Loading Microcode ... May Result in a System Hang".

CPUs are supposed to be idle during initial microcode update. Idle-scrub
changes this, making a CPU to go scrubbing (memset) right after it was
brought up. This can get in a way of microcode update for other CPUs,
which results in a system hang:

     [    0.000000] CPU Vendor: Intel, Family 6 (0x6), Model 71 (0x47), 
Stepping 1 (raw 00040671)
     [    2.598813] HVM: Hardware Assisted Paging (HAP) detected
     [    2.600211] HVM: HAP page sizes: 4kB, 2MB, 1GB
     [    0.000000] microcode: CPU2 updated from revision 0x11 to 0x1e, date = 
     [    0.000000] microcode: CPU4 updated from revision 0x11 to 0x1e, d€ 

Prevent this situation by disabling idle scrubbing until
SYS_STATE_smp_booted is reached.

I am not aware of any issue on Arm that requires delaying the idle scrubbing. It is actually probably better to avoid delaying it as it may take a long time to boot all CPUs on platform with a high number of cores (48 cores or upper).


Julien Grall

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.