[for-4.13] docs: Extend with details about runtime microcode loading
diff mbox series

Message ID 20191012181859.11110-1-andrew.cooper3@citrix.com
State New
Headers show
Series
  • [for-4.13] docs: Extend with details about runtime microcode loading
Related show

Commit Message

Andrew Cooper Oct. 12, 2019, 6:18 p.m. UTC
The xen-ucode utility is new with the late loading improvements in 4.13.
Update the documentation suitably.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: George Dunlap <George.Dunlap@eu.citrix.com>
CC: Ian Jackson <ian.jackson@citrix.com>
CC: Jan Beulich <JBeulich@suse.com>
CC: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Tim Deegan <tim@xen.org>
CC: Wei Liu <wl@xen.org>
CC: Julien Grall <julien@xen.org>
CC: Juergen Gross <jgross@suse.com>
CC: Lars Kurth <lars.kurth@citrix.com>

For 4.13.  This is documentation concerning new work.

The additions for choosing the application policy, and logic to rescan
CPUID/MSRs and start using the new functionatly will have to wait for 4.14 at
this point.

If anyone is curious about the wording of the warning, it should come as no
surprise that an individual blob of microcode might contain more than one
thing.  On anything semi-modern system, there is Core microcode (the pipeline
itself), and Uncore microcode (the "rest" of the integrated functionality on
the chip), as well as other ancillary pieces.
---
 docs/admin-guide/microcode-loading.rst | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

Comments

Jürgen Groß Oct. 14, 2019, 1:44 p.m. UTC | #1
On 12.10.19 20:18, Andrew Cooper wrote:
> The xen-ucode utility is new with the late loading improvements in 4.13.
> Update the documentation suitably.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Release-acked-by: Juergen Gross <jgross@suse.com>


Juergen
Jan Beulich Oct. 23, 2019, 1:56 p.m. UTC | #2
On 12.10.2019 20:18, Andrew Cooper wrote:
> The xen-ucode utility is new with the late loading improvements in 4.13.
> Update the documentation suitably.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>

Acked-by: Jan Beulich <jbeulich@suse.com>

Patch
diff mbox series

diff --git a/docs/admin-guide/microcode-loading.rst b/docs/admin-guide/microcode-loading.rst
index 8265b917a9..e83cadd2c2 100644
--- a/docs/admin-guide/microcode-loading.rst
+++ b/docs/admin-guide/microcode-loading.rst
@@ -103,3 +103,32 @@  which contains contains one of these two files::
 The ``ucode=scan`` command line option will cause Xen to search through all
 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
+--------------------------
+
+.. warning::
+
+   If at all possible, microcode updates should be done by firmware updates,
+   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.
+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.
+
+If these checks pass, the entire system will be rendezvoused and an update
+will be initiated on all CPUs in parallel.  As with boot time loading,
+diagnostics will be put out onto the console::
+
+  [root@host ~]# xl dmesg | grep microcode
+  (XEN) microcode: CPU0 updated from revision 0x1a to 0x25, date = 2018-04-02
+  (XEN) microcode: CPU2 updated from revision 0x1a to 0x25, date = 2018-04-02
+  (XEN) microcode: CPU4 updated from revision 0x1a to 0x25, date = 2018-04-02
+  (XEN) microcode: CPU6 updated from revision 0x1a to 0x25, date = 2018-04-02
+  (XEN) 4 cores are to update their microcode
+  (XEN) microcode: CPU0 updated from revision 0x25 to 0x27, date = 2019-02-26
+  (XEN) microcode: CPU4 updated from revision 0x25 to 0x27, date = 2019-02-26
+  (XEN) microcode: CPU2 updated from revision 0x25 to 0x27, date = 2019-02-26
+  (XEN) microcode: CPU6 updated from revision 0x25 to 0x27, date = 2019-02-26