[OE-core] [PATCH resend] qemuboot.conf: make cpus match built artifacts

Martin Kelly mkelly at xevo.com
Mon May 22 17:29:02 UTC 2017


(friendly ping)

On 05/02/2017 12:20 PM, Martin Kelly wrote:
> Currently, the qemu CPUs for are specified as generic, but the built
> artifacts are not. For example, we build x86-64 artifacts targeting
> core2duo but run them in qemu with generic qemu/kvm CPUs. This causes
> some packages that take advantage of the host architecture to crash
> because they try to use CPU features not advertised by qemu. As an
> example, Qt uses ssse3. When artifacts linked against Qt and built
> targeting core2duo attempt to run on a generic qemu/kvm CPU, we get
> the following crash:
>
> Incompatible processor. This Qt build requires the following features:
>      ssse3
>
> We could fix this by making packages like Qt not take advantage of CPU
> features. However, we will probably keep facing similar issues over
> time, so it's better to resolve them in a more enduring way.
>
> Fix this by making the qemu -cpu arguments match the built artifacts.
>
> Signed-off-by: Martin Kelly <mkelly at xevo.com>
> ---
>
> I sent this to poky at yoctoproject.org but it should have gone to OE-core,
> so I'm resending it now to restart the discussion on the right mailing
> list. There were some comments about it in a previous mail thread on the
> poky mailing list:
>
> https://lists.yoctoproject.org/pipermail/poky/2017-April/010956.html
>
>  meta/conf/machine/include/qemuboot-x86.inc | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/meta/conf/machine/include/qemuboot-x86.inc b/meta/conf/machine/include/qemuboot-x86.inc
> index 06ac983..acd03a1 100644
> --- a/meta/conf/machine/include/qemuboot-x86.inc
> +++ b/meta/conf/machine/include/qemuboot-x86.inc
> @@ -1,12 +1,12 @@
>  # For runqemu
>  IMAGE_CLASSES += "qemuboot"
>  QB_SYSTEM_NAME_x86 = "qemu-system-i386"
> -QB_CPU_x86 = "-cpu qemu32"
> -QB_CPU_KVM_x86 = "-cpu kvm32"
> +QB_CPU_x86 = "-cpu pentium2"
> +QB_CPU_KVM_x86 = "-cpu pentium2"
>
>  QB_SYSTEM_NAME_x86-64 = "qemu-system-x86_64"
>  QB_CPU_x86-64 = "-cpu core2duo"
> -QB_CPU_KVM_x86-64 = "-cpu kvm64"
> +QB_CPU_KVM_x86-64 = "-cpu core2duo"
>
>  QB_AUDIO_DRV = "alsa"
>  QB_AUDIO_OPT = "-soundhw ac97,es1370"
>



More information about the Openembedded-core mailing list