ACK[Trusty]: [PATCH 0/4] Fix for LP:#1791286
Kleber Souza
kleber.souza at canonical.com
Thu Sep 27 14:57:30 UTC 2018
On 09/10/18 16:23, Gavin Guo wrote:
> BugLink: https://bugs.launchpad.net/bugs/1791286
>
> [Impact]
>
> After the VM(Guest OS is Windows Server 2012R2) has been live-migrated
> serveral times, the screen is blackout or freeze when the VM is
> connected via VNC.
>
> The Windows Guest OS Server has been investigated that all of kernel
> threads of Windows Server OS are waiting(idle state) for interrupt
> request(IRQ) from hypervisor.
>
> The following environment is tested:
> * Host OS: Ubuntu 14.04(kernel 3.13.0-40.69)
> * qemu-kvm_2.0.0+dfsg-2ubuntu1.22
> * libvert-bin_1.2.2-0ubuntu13.1.5
> * nova-compute_1:2014.2.3-0ubuntu1.2~cloud0
> * GuestOS: Windows Server 2012R2
> * virtio-win-0.1.126
>
>
> [Fix]
>
> The patch set is needed:
>
> 673f7b4257a1 KVM: ioapic: reinject pending interrupts on KVM_SET_IRQCHIP
> 44847dea7975 KVM: ioapic: extract body of kvm_ioapic_set_irq
> 0bc830b05c66 KVM: ioapic: clear IRR for edge-triggered interrupts at delivery
> 0b10a1c87a2b KVM: ioapic: merge ioapic_deliver into ioapic_service
>
>
> [Test]
>
> Prepare two machines with the same environment mentioned above and run
> the following script.
>
> #!/bin/bash
> INSTANCE="test"
>
> FROM="elite"
> virsh -c qemu+ssh://ubuntu@${FROM}/system list| grep -q ${INSTANCE}
> if [[ $? != 0 ]]; then
> FROM="dixie";
> TO="elite";
> else
> TO="dixie"
> fi
>
> echo "= Migrating ${INSTANCE} from ${FROM} to ${TO} ="
> ssh ubuntu@${FROM} -- virsh migrate --live --domain ${INSTANCE}
> --desturi qemu+ssh://ubuntu@${TO}/system
>
>
> The VNC script I use to keep track of the VNC console is:
>
> #!/bin/bash
> INSTANCE="test"
>
> while true; do
> HOST="elite"
> virsh -c qemu+ssh://ubuntu@${HOST}/system list| grep -q ${INSTANCE}
> if [[ $? != 0 ]]; then HOST="dixie"; fi
>
> virt-viewer -c qemu+ssh://ubuntu@${HOST}/system test
> sleep 3
> done
>
>
> Paolo Bonzini (4):
> KVM: ioapic: merge ioapic_deliver into ioapic_service
> KVM: ioapic: clear IRR for edge-triggered interrupts at delivery
> KVM: ioapic: extract body of kvm_ioapic_set_irq
> KVM: ioapic: reinject pending interrupts on KVM_SET_IRQCHIP
>
> virt/kvm/ioapic.c | 109 +++++++++++++++++++++++++++++++++++-------------------
> 1 file changed, 70 insertions(+), 39 deletions(-)
>
All clean cherry-picks and tested.
Acked-by: Kleber Sacilotto de Souza <kleber.souza at canonical.com>
More information about the kernel-team
mailing list