From: Andrew Cooper Date: Mon, 1 Jun 2020 13:36:28 +0000 (+0100) Subject: docs/ucode: Extend runtime microcode loading documentation X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=99a76a88d5e7f4693bb6b286e366006e1da1c954;p=people%2Fsstabellini%2Fxen-unstable.git%2F.git docs/ucode: Extend runtime microcode loading documentation Extend the disclaimer about runtime loading. While we've done our best to make the mechaism reliable, the safety of late loading does ultimately depend on the contents of the blobs. Extend the xen-ucode portion with examples of how to use it. Signed-off-by: Andrew Cooper Reviewed-by: Roger Pau Monné Reviewed-by: Jan Beulich Release-acked-by: Paul Durrant --- CC: George Dunlap CC: Ian Jackson CC: Jan Beulich CC: Konrad Rzeszutek Wilk CC: Stefano Stabellini CC: Wei Liu CC: Julien Grall CC: Paul Durrant --- diff --git a/docs/admin-guide/microcode-loading.rst b/docs/admin-guide/microcode-loading.rst index e83cadd2c2..a07e25802f 100644 --- a/docs/admin-guide/microcode-loading.rst +++ b/docs/admin-guide/microcode-loading.rst @@ -105,8 +105,8 @@ modules to find any CPIO archives, and search the archive for the applicable file. Xen will stop searching at the first match. -Run time microcode loading --------------------------- +Runtime microcode loading +------------------------- .. warning:: @@ -114,7 +114,25 @@ Run time microcode loading or at boot time. Not all microcode updates (or parts thereof) can be applied at runtime. -The ``xen-ucode`` utility can be used to initiate a runtime microcode load. + Given the proprietary nature of microcode, we are unable to make any claim + that runtime microcode loading is risk-free. Any runtime microcode loading + needs adequate testing on a development instance before being rolled out to + production systems. + +The ``xen-ucode`` utility can be used to initiate a runtime microcode load:: + + [root@host ~]# xen-ucode + xen-ucode: Xen microcode updating tool + Usage: xen-ucode + [root@host ~]# + +The details of microcode blobs (if even packaged to begin with) are specific +to the dom0 distribution. Consult your dom0 OS documentation for details. +One example with a Linux dom0 on a Haswell system might look like:: + + [root@host ~]# xen-ucode /lib/firmware/intel-ucode/06-3c-03 + [root@host ~]# + It will pass the blob to Xen, which will check to see whether the blob is correct for the processor, and newer than the running microcode.