From: Andre Przywara <andre.przywara@amd.com>
To: QEMU devel <qemu-devel@nongnu.org>, KVM list <kvm@vger.kernel.org>
Subject: tainted Linux kernel in default SMP QEMU/KVM guests
Date: Fri, 19 Mar 2010 13:16:06 +0100 [thread overview]
Message-ID: <4BA36B06.5060002@amd.com> (raw)
Hi,
since the default CPU model for QEMU (qemu64) is an AMD K7, the Linux
kernel complains and taints the kernel when it detects multiple
processors. The reason for this is a check for SMP safe CPUs in
arch/x86/kernel/cpu/amd.c:amd_k7_smp_check(). In recent kernels (since
about 2.6.29) this in only executed in 32bit kernels, since the check
has been #ifdef'ed CONFIG_X86_32.
The failing check triggers a nasty dump along with a call trace and
taints the kernel, this confuses users, so I want to get rid of it.
One can work around it (using -cpu kvm64 or -cpu host), but I want to
avoid it in the default case, too.
I see these possible solutions:
1) Change the default CPUID bits from 6/2/3 to 6/6/1, this passes the
Linux kernel check. But I am not sure if that would introduce
regressions, since some OSes apply quirks if they detect certain models
(like we had with the sysenter issue in the past)
2) Only change the CPUID bits to 6/6/1 if we use SMP. Still has the
above drawback, but would be limited to SMP guests only.
3) Set kvm64/kvm32 as the default CPU model if KVM is enabled. This
would limit the report and taint to TCG, where SMP is rarely used.
Additionally less people (if any) use it for production systems.
4) Make the Linux' kernel quirk dependent on the missing hypervisor bit.
I don't think this will be accepted easily upstream (and I don't want to
support Ingo's recent ideas ;-), also this would not fix older kernels.
I can easily provide patches for all solutions, but I'd like to get
advice from people on which one to pursue.
Regards,
Andre.
--
Andre Przywara
AMD-Operating System Research Center (OSRC), Dresden, Germany
Tel: +49 351 448-3567-12
next reply other threads:[~2010-03-19 12:16 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-19 12:16 Andre Przywara [this message]
2010-03-19 12:58 ` tainted Linux kernel in default SMP QEMU/KVM guests Paolo Bonzini
2010-03-19 13:12 ` Anthony Liguori
2010-03-23 10:45 ` Avi Kivity
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BA36B06.5060002@amd.com \
--to=andre.przywara@amd.com \
--cc=kvm@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox