diff options
author | Martin Kelly <mkelly@xevo.com> | 2018-04-30 10:35:36 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-05-24 17:16:29 +0100 |
commit | 8c10e2e2c91f252103a03ca1920c3882ae2f815c (patch) | |
tree | e15eb55800feb20cda3309a9c515e37c8cac485c /documentation/dev-manual/dev-manual-qemu.xml | |
parent | a6b54193de7145090777b2e86a6af456bc34956a (diff) | |
download | poky-8c10e2e2c91f252103a03ca1920c3882ae2f815c.tar.gz |
dev-manual: New section in QEMU for workaround under KVM
As suggested in a recent mail thread by Martin Jansa, there are cases in
which QEMU under KVM will crash because of CPU feature incompatibilities
between compiled binaries and the host CPU under which qemu is run.
Although this is hard to fully escape, we should document the issue to
help people work around it. I have taked Martin's suggested patch
and did some rewording for the new section.
(From yocto-docs rev: 6c625fcf631a82529bc58ec8fb0c18dbe13188d2)
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual/dev-manual-qemu.xml')
-rw-r--r-- | documentation/dev-manual/dev-manual-qemu.xml | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/documentation/dev-manual/dev-manual-qemu.xml b/documentation/dev-manual/dev-manual-qemu.xml index f4719ebc3c..4e7b5de4e8 100644 --- a/documentation/dev-manual/dev-manual-qemu.xml +++ b/documentation/dev-manual/dev-manual-qemu.xml | |||
@@ -343,6 +343,40 @@ | |||
343 | </para> | 343 | </para> |
344 | </section> | 344 | </section> |
345 | 345 | ||
346 | <section id='qemu-kvm-cpu-compatibility'> | ||
347 | <title>QEMU CPU Compatibility Under KVM</title> | ||
348 | |||
349 | <para> | ||
350 | By default, the QEMU build compiles for and targets 64-bit and x86 | ||
351 | <trademark class='registered'>Intel</trademark> <trademark class='trademark'>Core</trademark>2 | ||
352 | Duo processors and 32-bit x86 | ||
353 | <trademark class='registered'>Intel</trademark> <trademark class='registered'>Pentium</trademark> | ||
354 | II processors. | ||
355 | QEMU builds for and targets these CPU types because they display | ||
356 | a broad range of CPU feature compatibility with many commonly | ||
357 | used CPUs. | ||
358 | </para> | ||
359 | |||
360 | <para> | ||
361 | Despite this broad range of compatibility, the CPUs could support | ||
362 | a feature that your host CPU does not support. | ||
363 | Although this situation is not a problem when QEMU uses software | ||
364 | emulation of the feature, it can be a problem when QEMU is | ||
365 | running with KVM enabled. | ||
366 | Specifically, software compiled with a certain CPU feature crashes | ||
367 | when run on a CPU under KVM that does not support that feature. | ||
368 | To work around this problem, you can override QEMU's runtime CPU | ||
369 | setting by changing the <filename>QB_CPU_KVM</filename> | ||
370 | variable in <filename>qemuboot.conf</filename> in the | ||
371 | <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory's</ulink> | ||
372 | <filename>deploy/image</filename> directory. | ||
373 | This setting specifies a <filename>-cpu</filename> option | ||
374 | passed into QEMU in the <filename>runqemu</filename> script. | ||
375 | Running <filename>qemu -cpu help</filename> returns a list of | ||
376 | available supported CPU types. | ||
377 | </para> | ||
378 | </section> | ||
379 | |||
346 | <section id='qemu-dev-performance'> | 380 | <section id='qemu-dev-performance'> |
347 | <title>QEMU Performance</title> | 381 | <title>QEMU Performance</title> |
348 | 382 | ||