|
|
|
|
|
|
|
|
|
|
xen-devel
RE: [Xen-devel] credit scheduler issues in 64bit hypervisor
>> This is caused by a vmcs bug, the root cause is on x86_64, a
>VMX domain
>> is killed without any vmentry (caused by "Error: Device 768
>(vbd) could
>> not be connected. Hotplug scripts not working."), but then a
>VMCLEAR is
>> still executed on its unlaunched VMCS.
>> the following patch fixes it.
>>
>> Signed-off-by: Xin Li <xin.b.li@xxxxxxxxx>
>
>This patch is itself buggy: Just because a VMCS hasn't been launched
>doesn't mean it hasn't been activated on some CPU. I think the
>original
>bug would be better fixed by only calling vmx_clear_vmcs() in
>vmx_destroy_vmcs() if arch_vmx->vmcs != NULL. Even better would be not
>to allocate the VMCS so darn late.
>
Yes, such a fix should work.
diff -r 130a5badf2b7 xen/arch/x86/hvm/vmx/vmcs.c
--- a/xen/arch/x86/hvm/vmx/vmcs.c Fri Jun 30 22:02:58 2006 +0100
+++ b/xen/arch/x86/hvm/vmx/vmcs.c Sun Jul 02 22:33:47 2006 +0800
@@ -495,6 +511,9 @@ void vmx_destroy_vmcs(struct vcpu *v)
void vmx_destroy_vmcs(struct vcpu *v)
{
struct arch_vmx_struct *arch_vmx = &v->arch.hvm_vmx;
+
+ if ( arch_vmx->vmcs == NULL )
+ return;
vmx_clear_vmcs(v);
Hmm, I still prefer allocating VMCS just before launching, can you
explain your concerns?
thanks
-Xin
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Rik van Riel
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Li, Xin B
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Li, Xin B
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Li, Xin B
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor,
Li, Xin B <=
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Li, Xin B
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Li, Xin B
- RE: [Xen-devel] credit scheduler issues in 64bit hypervisor, Li, Xin B
|
|
|
|
|