[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



Hi,

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".
(URL: 
https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/xeon-e7-v4-spec-update.pdf)

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 = 
2018-04-03
     [    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).

Cheers,

--
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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