From: Avi Kivity <avi@redhat.com>
To: Daniele Carollo <carollo.dani@gmail.com>
Cc: kvm@vger.kernel.org, Sasha Levin <levinsasha928@gmail.com>
Subject: Re: monitor flag on native kvm tool guest
Date: Thu, 01 Dec 2011 15:48:20 +0200 [thread overview]
Message-ID: <4ED785A4.50308@redhat.com> (raw)
In-Reply-To: <CAMEokbRH9ZyhzNnSb0TQz-sdGJcjhppg9X=R3nhurjDY2WQANA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 930 bytes --]
On 12/01/2011 03:37 PM, Daniele Carollo wrote:
> Hi,
> my name's Daniele and I'm using the native linux kvm tool.
> If I try to execute it in this way ./kvm run -d ~/linux-0.2.img I get
> a kernel panic like this: http://paste.org/41673
> Only using the addictional option -p "idle=halt" I can run a virtual machine.
> Printing cat /proc/cpuinfo on the host i get http://paste.org/41663
> and on the guest http://paste.org/41664
> Sashal from the native linux kvm tool team noticed that there is the
> monitor cpu flag even on the guest.
>
from cpuid.c:
/* cpuid 1.ecx */
const u32 kvm_supported_word4_x86_features =
F(XMM3) | F(PCLMULQDQ) | 0 /* DTES64, MONITOR */ |
so either the masking later on is subtly wrong, or kvm tool doesn't pass
it on correctly, or Linux ignores it.
Please run the attached program on the host and post its output.
--
error compiling committee.c: too many arguments to function
[-- Attachment #2: show-supported-cpuid.c --]
[-- Type: text/x-csrc, Size: 763 bytes --]
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <errno.h>
#include <linux/kvm.h>
int main(void)
{
struct kvm_cpuid2 *cpuid;
int kvm, r = 0, i, j;
kvm = open("/dev/kvm", O_RDWR);
cpuid = malloc(sizeof(*cpuid) + sizeof(struct kvm_cpuid_entry2) * 100);
cpuid->nent = 100;
r = ioctl(kvm, KVM_GET_SUPPORTED_CPUID, cpuid);
if (r) {
printf("KVM_GET_SUPPORTED_CPUID returned %d with errno %d\n", r, errno);
return 1;
}
for (j = 0; j < cpuid->nent; ++j) {
struct kvm_cpuid_entry2 *e = &cpuid->entries[j];
printf("func %08x ind %08x flags %08x -> %08x %08x %08x %08x\n",
e->function, e->index, e->flags,
e->eax, e->ebx, e->ecx, e->edx);
}
free(cpuid);
close(kvm);
return 0;
}
next prev parent reply other threads:[~2011-12-01 13:48 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CAMEokbTT2hDRr_o5VNpBS4hQPKaLR1gRLZF9b_6wOEHU3-J_oA@mail.gmail.com>
2011-12-01 13:37 ` monitor flag on native kvm tool guest Daniele Carollo
2011-12-01 13:48 ` Avi Kivity [this message]
2011-12-01 13:50 ` Sasha Levin
2011-12-01 13:53 ` Avi Kivity
2011-12-01 13:54 ` Daniele Carollo
2011-12-01 13:58 ` 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=4ED785A4.50308@redhat.com \
--to=avi@redhat.com \
--cc=carollo.dani@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=levinsasha928@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.