Zhang, Jingke wrote:
> 1. Could not create kvm guest with memory >=2040
> http://otc-qa.sh.intel.com/kvm/bugzilla/show_bug.cgi?id=6
> https://sourceforge.net/tracker/index.php?func=detail&aid=1736307&group_
> id=180599&atid=893831
>
This is only on an i386 host, right? In x86_64 this should wo
Haydn Solomon wrote:
> Ok. I've tested the list of bios images for booting vista premium 32
> bit. The results are as follows:
>
Sorry, I regenerated the bios images incorrectly, so some of these
images are stale. Unfortunately, this includes the images at the
working->nonworking crossover.
I
Am Samstag, 25. August 2007 schrieb Dor Laor:
> + * Permission is hereby granted, free of charge, to any person
> obtaining a copy
Hi Dor,
some of your patch lines seem line-wrapped. Is there place where I can
download the whole series? Thanks
Christian
This problem is already reported here:
http://sourceforge.net/tracker/index.php?func=detail&aid=1780032&group_id=180599&atid=893831
--
-Alexey Eremenko "Technologov"
-
This SF.net email is sponsored by: Splunk Inc.
Still gre
Am Samstag, 25. August 2007 schrieb Dor Laor:
> + asm (" call hypercall_addr\n"
Hi Dor,
This cannot work, because hypercall_addr is currently not defined in todays
kvm.git:
# grep -R hypercall_addr *
drivers/kvm/kvm.h:unsigned char *hypercall_addr);
#
IIRC there was a defin
Am Samstag, 25. August 2007 schrieb Dor Laor:
> +static inline int
> +__hypercall2(unsigned int nr, unsigned long p1, unsigned long p2)
> +{
> + int ret;
> + asm (" call hypercall_addr\n"
[...]
> + return ret;
Hello Dor,
Linux system calls return long. I think hypercalls should behave
I've never really thought much about them until now. What's the case
for supporting userspace hypercalls?
The current way the code works is a little scary. Hypercalls that
aren't handled by kernelspace are deferred to userspace. Of course,
kernelspace has no idea whether userspace is actually u
Since a hypercall may span two pages and is a gva, we need a function to write
to a gva that may span multiple pages. emulator_write_phys() seems like the
logical choice for this.
Signed-off-by: Anthony Liguori <[EMAIL PROTECTED]>
diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kvm_main.c
inde
Anthony Liguori wrote:
> This patch refactors the current hypercall infrastructure to better support
> live
> migration and SMP. It eliminates the hypercall page by trapping the UD
> exception that would occur if you used the wrong hypercall instruction for the
> underlying architecture and repla
Anthony Liguori wrote:
> I've never really thought much about them until now. What's the case
> for supporting userspace hypercalls?
>
> The current way the code works is a little scary. Hypercalls that
> aren't handled by kernelspace are deferred to userspace. Of course,
> kernelspace has no id
Avi Kivity wrote:
> This means a pvnet driver can be used either directly
> with a virtual interface on the host, or having some userspace
> processing in qemu.
Also, 'qmu -net user -net model=pv' if you're unlucky enough not to have
root.
--
Any sufficiently difficult bug is indistinguishabl
This patch refactors the current hypercall infrastructure to better support live
migration and SMP. It eliminates the hypercall page by trapping the UD
exception that would occur if you used the wrong hypercall instruction for the
underlying architecture and replacing it with the right one lazily.
Anthony Liguori wrote:
> Since a hypercall may span two pages and is a gva, we need a function to write
> to a gva that may span multiple pages. emulator_write_phys() seems like the
> logical choice for this.
>
> @@ -962,8 +962,35 @@ static int emulator_write_std(unsigned long addr,
>
Avi Kivity wrote:
> Anthony Liguori wrote:
>> I've never really thought much about them until now. What's the case
>> for supporting userspace hypercalls?
>>
>> The current way the code works is a little scary. Hypercalls that
>> aren't handled by kernelspace are deferred to userspace. Of course
Avi Kivity wrote:
>
> Thinking a little more about this, it isn't about handling hypercalls
> in userspace, but about handling a virtio sync() in userspace.
>
> So how about having a KVM_HC_WAKE_CHANNEL hypercall (similar to Xen's
> event channel, but assymetric) that has a channel parameter. Th
No problem, glad I can contribute to this wonderful project in any way I
can. I've retested the bios images and below shows results. Please bear in
mind that I only tested for successful boot and didn't complete the install.
bios-kvm-35-3-g599a0fb.binblue screen
bios-kvm-35-4-gb70bff2.bin
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig
index f952493..ceacc66 100644
--- a/arch/i386/Kconfig
+++ b/arch/i386/Kconfig
@@ -237,6 +237,13 @@ config VMI
at the moment), by linking the kernel to a GPL-ed ROM module
provided by the hypervisor.
+config KVM_GUEST
+ b
This patchset refactors KVM's paravirtualization support to better support
guest SMP and cross platform migration. It also introduces a bare-bones KVM
paravirt_ops implementation.
I've tested this on VT and it works nicely. I'm having trouble getting a
bzImage to boot on SVM so I haven't been ab
On Mon, 2007-08-27 at 19:06 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > void kvm_emulate_cpuid(struct kvm_vcpu *vcpu)
> > {
> > int i;
> > @@ -1632,6 +1575,12 @@ void kvm_emulate_cpuid(struct kvm_vcpu *vcpu)
> > vcpu->regs[VCPU_REGS_RBX] = 0;
> > vcpu->regs[VCPU_REGS_RCX] =
Anthony Liguori wrote:
> On Mon, 2007-08-27 at 18:45 +0300, Avi Kivity wrote:
>
>> Anthony Liguori wrote:
>>
>>> Since a hypercall may span two pages and is a gva, we need a function to
>>> write
>>> to a gva that may span multiple pages. emulator_write_phys() seems like the
>>> logical c
Haydn Solomon wrote:
>
> bios-kvm-35-24-ga7b3e17.binblue screen
Thanks.
This is
> commit a7b3e1705b99677365050aae6dc1da0279fc42a2
> Author: Igor Lvovsky <[EMAIL PROTECTED]>
> Date: Sun Aug 19 15:00:12 2007 +0300
>
> kvm: bios: update FACP revision to 2
>
> Windows requires ACPI ref
On Mon, 2007-08-27 at 19:47 +0300, Avi Kivity wrote:
> Avi Kivity wrote:
> >
> > Thinking a little more about this, it isn't about handling hypercalls
> > in userspace, but about handling a virtio sync() in userspace.
> >
> > So how about having a KVM_HC_WAKE_CHANNEL hypercall (similar to Xen's
Anthony Liguori wrote:
> On Mon, 2007-08-27 at 19:47 +0300, Avi Kivity wrote:
>
>> Avi Kivity wrote:
>>
>>> Thinking a little more about this, it isn't about handling hypercalls
>>> in userspace, but about handling a virtio sync() in userspace.
>>>
>>> So how about having a KVM_HC_WAKE_CHA
On Mon, 2007-08-27 at 20:26 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > On Mon, 2007-08-27 at 18:45 +0300, Avi Kivity wrote:
> >
> >> Anthony Liguori wrote:
> >>
> >>> Since a hypercall may span two pages and is a gva, we need a function to
> >>> write
> >>> to a gva that may sp
On Mon, 2007-08-27 at 20:36 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > On Mon, 2007-08-27 at 19:47 +0300, Avi Kivity wrote:
> >
> >> Avi Kivity wrote:
> >>
> >>> Thinking a little more about this, it isn't about handling hypercalls
> >>> in userspace, but about handling a virti
Anthony Liguori wrote:
>I've tested this on VT and it works nicely.
Excuse me, but you said several months ago something about "kvm-xen",
which doesn't requires VT CPUs.
Will you publish or merge that technology ? (as I don't have
VT-capable CPU at Home)
=
Anthony Liguori wrote:
> On Mon, 2007-08-27 at 20:26 +0300, Avi Kivity wrote:
>
>> Anthony Liguori wrote:
>>
>>> On Mon, 2007-08-27 at 18:45 +0300, Avi Kivity wrote:
>>>
>>>
Anthony Liguori wrote:
> Since a hypercall may span two pages and is a gva
Anthony Liguori wrote:
> On Mon, 2007-08-27 at 20:36 +0300, Avi Kivity wrote:
>
>> Anthony Liguori wrote:
>>
>>> On Mon, 2007-08-27 at 19:47 +0300, Avi Kivity wrote:
>>>
>>>
Avi Kivity wrote:
> Thinking a little more about this, it isn't about hand
On Mon, 2007-08-27 at 20:51 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > On Mon, 2007-08-27 at 20:36 +0300, Avi Kivity wrote:
> >
> > Yes, that would be better except that the latency may be unacceptable.
> >
> >
>
> Hmm. Good point. I keep saying kvm can have great I/O because th
On Mon, 2007-08-27 at 18:45 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > Since a hypercall may span two pages and is a gva, we need a function to
> > write
> > to a gva that may span multiple pages. emulator_write_phys() seems like the
> > logical choice for this.
> >
> > @@ -962,8 +962
On Mon, 2007-08-27 at 18:45 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > Since a hypercall may span two pages and is a gva, we need a function to
> > write
> > to a gva that may span multiple pages. emulator_write_phys() seems like the
> > logical choice for this.
> >
> > @@ -962,8 +962
Those who deny freedom to others, deserve it not for themselves.
The happiest conversation is that of which nothing is distinctly remembered but a general effect of pleasing impression.
Can anything be so elegant as to have few wants, and to serve them one's self?
Love is a state in which a
Hi,
I just got this warning when doing a 'rmmod kvm-intel':
=
[ INFO: inconsistent lock state ]
2.6.23-rc3-libata-g28e8351a-dirty #93
-
inconsistent {hardirq-on-W} -> {in-hardirq-W} usage.
udevd/2800 [HC1[1]:SC0[0]:HE0:SE1] takes:
(k
高*级*文*秘*职*业*化*训*练
中 国 ・上 海・ 2007 年 09 月 8-9 日
中 国 ・北 京・ 2007 年 09 月 1-2 日
中 国 ・深 圳・ 2007 年 10 月 20-21 日
━━━
● 授 课 对 象
企业中层行政管理干部和文秘工作人员,包括办公室主任、行政部经理、董事长秘书、
总经理秘书、行政助理、行政主管、行政部门文员等
A very simple paravirt_ops implementation for KVM. Future patches will add
more sophisticated optimizations. The goal of having this presenting this now
is to validate the new hypercall infrastructure and to make my patch queue
smaller.
Signed-off-by: Anthony Liguori <[EMAIL PROTECTED]>
diff --
This patchset refactors KVM's paravirtualization support to better support
guest SMP and cross platform migration. It also introduces a bare-bones KVM
paravirt_ops implementation.
I've tested this on VT and it works nicely. I'm having trouble getting a
bzImage to boot on SVM so I haven't been ab
This patch refactors the current hypercall infrastructure to better support live
migration and SMP. It eliminates the hypercall page by trapping the UD
exception that would occur if you used the wrong hypercall instruction for the
underlying architecture and replacing it with the right one lazily.
This adds a CPUID entry for the paravirtualization feature bitmap. We can do
this unconditionally because the guest requires that both the feature CPUID
entry and the signature CPUID entry exists to enable paravirtualization.
This means that guest will never enable paravirtualization if either us
Anthony Liguori wrote:
> This adds a CPUID entry for the paravirtualization feature bitmap. We can do
> this unconditionally because the guest requires that both the feature CPUID
> entry and the signature CPUID entry exists to enable paravirtualization.
>
> This means that guest will never enable
On 8/27/07, Avi Kivity <[EMAIL PROTECTED]> wrote:
> Anthony Liguori wrote:
> > On Mon, 2007-08-27 at 20:36 +0300, Avi Kivity wrote:
> >> userspace can
> >> attach a signal to the eventfd if it wants a synchronous exit (does
> >> eventfd allow fcntl(F_SETOWN)?)
> >
> > Which would address the laten
Luca wrote:
> On 8/27/07, Avi Kivity <[EMAIL PROTECTED]> wrote:
>
>> Anthony Liguori wrote:
>>
>>> On Mon, 2007-08-27 at 20:36 +0300, Avi Kivity wrote:
>>>
userspace can
attach a signal to the eventfd if it wants a synchronous exit (does
eventfd allow fcntl(F_SETOWN)?
On Mon, 2007-08-27 at 22:54 +0300, Avi Kivity wrote:
> Anthony Liguori wrote:
> > This adds a CPUID entry for the paravirtualization feature bitmap. We can
> > do
> > this unconditionally because the guest requires that both the feature CPUID
> > entry and the signature CPUID entry exists to ena
On Mon, 2007-08-27 at 23:01 +0300, Avi Kivity wrote:
> Luca wrote:
> >> if it isn't guaranteed to be the current thread, we're back
> >> with scheduler involvement, and possibly cacheline bouncing.
> >>
> >
> > It's possible to use pthread_sigmask() to block the signal on all
> > threads but
Using the KVM git tree on a 32-bit host, I can't boot a kernel with
-kernel. a wrmsr() to EFER is resulting in the guest getting a GP. The
very curious thing is the call is wrmsr_safe() so I don't think it
should be failing. Moreover, if I allow wrmsr to succeed, the guest
just hangs.
I know th
On Fri, 2007-08-24 at 16:57 -0700, Dor Laor wrote:
> The hypercalls can be called with various parameters number.
> Both x86_64 and i386 are supported.
>
> Signed-off-by: Dor Laor <[EMAIL PROTECTED]>
> ---
> +static inline int
> +__hypercall6(unsigned int nr, unsigned long p1, unsigned long p2,
>
On Fri, 2007-08-24 at 16:58 -0700, Dor Laor wrote:
> diff --git a/drivers/kvm/svm.c b/drivers/kvm/svm.c
> index cc674bf..9bfd11e 100644
> --- a/drivers/kvm/svm.c
> +++ b/drivers/kvm/svm.c
> @@ -1022,6 +1022,11 @@ static int halt_interception(struct vcpu_svm
> *svm, struct kvm_run *kvm_run)
>
> s
FWIW, I don't see 2/4 of this series.
Regards,
Anthony Liguori
On Fri, 2007-08-24 at 16:56 -0700, Dor Laor wrote:
> The following patch set add some hypercall functionality:
> - Improve/ease userspace hypercall handling
> - Add hypercall functions for x86_64 and i386.
> - Add registration mecha
Ignore my last email about this patch not existing :-)
Regards,
Anthony Liguori
On Fri, 2007-08-24 at 16:58 -0700, Dor Laor wrote:
> Since some hypercalls can be handled in userspace, it needs
> to include kvm_para too. Chande kernel types into user and
> add includes for them and for page_size
I don't really like the idea of having other modules register
hypercalls. The hypercall address space is fixed and should be
maintained by KVM.
I think things like virtio are rare and important enough, that it
warrants having kvm.ko know enough about them to provide a higher level
registration me
(Responding from the beach ;)
I've already done a good portion of what is being discussed here in my pvio
series. Please review it and give me your feedback.
For instance, you will see the single hypercall passing the channel id down.
-Original Message-
From: Avi Kivity <[EMAIL PROT
Anthony Liguori wrote:
> Using the KVM git tree on a 32-bit host, I can't boot a kernel with
> -kernel. a wrmsr() to EFER is resulting in the guest getting a GP. The
> very curious thing is the call is wrmsr_safe() so I don't think it
> should be failing. Moreover, if I allow wrmsr to succeed, t
51 matches
Mail list logo