Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1357765 - windows10 guest hangs after migration
Summary: windows10 guest hangs after migration
Keywords:
Status: CLOSED DUPLICATE of bug 1377920
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm-rhev
Version: 7.3
Hardware: x86_64
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Amit Shah
QA Contact: Qianqian Zhu
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-07-19 06:15 UTC by yduan
Modified: 2016-09-27 11:25 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-09-27 11:25:31 UTC


Attachments (Terms of Use)
destination guest hangs (deleted)
2016-07-19 06:15 UTC, yduan
no flags Details
Not reproducible with '-machine pc' machine type (deleted)
2016-07-25 07:57 UTC, yduan
no flags Details

Description yduan 2016-07-19 06:15:47 UTC
Created attachment 1181414 [details]
destination guest hangs

Description of problem:
After migration completed, windows10 guest hangs with no any error prompt.

Version-Release number of selected component (if applicable):
Host:
  kernel: 3.10.0-469.el7.x86_64
  qemu-kvm-rhev-2.6.0-13.el7.x86_64
Guest:
  windows 10

How reproducible:
100%

Steps to Reproduce:
1.Start VM with following commands:
/usr/libexec/qemu-kvm \
 -S \
 -name 'rhel7.3' \
 -machine q35,accel=kvm,vmport=off \
 -m 4096 \
 -smp 4,maxcpus=4,sockets=1,cores=2,threads=2 \
 -cpu SandyBridge,enforce \
 -rtc base=localtime,clock=host,driftfix=slew \
 -nodefaults \
 -vga qxl \
 -device AC97,bus=pcie.0 \
 -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_qmpmonitor1,mode=control \
 -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_catch_monitor,mode=control \
 -device pvpanic,ioport=0x505,id=idSWJ5gV \
 -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \
 -device isa-serial,chardev=serial_id_serial0 \
 -chardev socket,id=seabioslog_log,path=/tmp/seabios-log,server,nowait \
 -device isa-debugcon,chardev=seabioslog_log,iobase=0x402 \
 -device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pcie.0 \
 -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pcie.0 \
 -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pcie.0 \
 -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pcie.0 \
 -device usb-tablet,id=usb-tablet1 \
 -boot menu=on \
 -enable-kvm \
 -monitor stdio \
 -spice port=5900,disable-ticketing \
 -qmp tcp:0:9999,server,nowait \
 -drive file=/home/win10-seabios-sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device ide-drive,drive=drive_sysdisk,bus=ide.0,id=device_sysdisk,bootindex=0,physical_block_size=4096,logical_block_size=512 \
 -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
 -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0 \
 -device ioh3420,bus=pcie.0,id=root.0,slot=0 \
 -device virtio-scsi-pci,bus=root.0,id=scsi_pci_bus,disable-legacy=on,disable-modern=off \
 -drive file=/home/datadisk5G.qcow2,format=qcow2,id=drive_datadisk5G,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_datadisk5G,bus=scsi_pci_bus.0,id=device_datadisk5G,physical_block_size=4096,logical_block_size=4096 \
 -drive file=/home/cdimg.iso,if=none,media=cdrom,id=drive_cd,readonly=on \
 -device scsi-cd,bus=scsi_pci_bus.0,drive=drive_cd,id=device_cd \
 -device ioh3420,bus=pcie.0,id=root.1,slot=1 \
 -device ioh3420,bus=pcie.0,id=root.2,slot=2 \
 -device x3130-upstream,bus=root.2,id=upstream0 \
 -device xio3130-downstream,bus=upstream0,id=downstream0,chassis=1 \
 -device xio3130-downstream,bus=upstream0,id=downstream1,chassis=2 \
 -device virtio-scsi-pci,bus=downstream0,id=scsi_pci_bus0 \
 -drive file=/home/backup/en_windows_10_enterprise_version_1511_updated_feb_2016_x64_dvd_8378876.iso,if=none,media=cdrom,id=drive_syscd,readonly=on,format=raw \
 -device scsi-disk,bus=scsi_pci_bus0.0,drive=drive_syscd,id=device_syscd,bootindex=1 \
 -device virtio-scsi-pci,bus=downstream1,id=scsi_pci_bus1,disable-legacy=on,disable-modern=off \
 -drive file=/home/datadisk2G.qcow2,format=qcow2,id=drive_datadisk2G,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_datadisk2G,bus=scsi_pci_bus1.0,id=device_datadisk2G,physical_block_size=512,logical_block_size=512 \

2.Boot the guest on destination host with incoming option:
/usr/libexec/qemu-kvm \
 -S \
 -name 'rhel7.3' \
 -machine q35,accel=kvm,vmport=off \
 -m 4096 \
 -smp 4,maxcpus=4,sockets=1,cores=2,threads=2 \
 -cpu SandyBridge,enforce \
 -rtc base=localtime,clock=host,driftfix=slew \
 -nodefaults \
 -vga qxl \
 -device AC97,bus=pcie.0 \
 -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_qmpmonitor1,mode=control \
 -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_catch_monitor,mode=control \
 -device pvpanic,ioport=0x505,id=idSWJ5gV \
 -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \
 -device isa-serial,chardev=serial_id_serial0 \
 -chardev socket,id=seabioslog_log,path=/tmp/seabios-log,server,nowait \
 -device isa-debugcon,chardev=seabioslog_log,iobase=0x402 \
 -device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pcie.0 \
 -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pcie.0 \
 -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pcie.0 \
 -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pcie.0 \
 -device usb-tablet,id=usb-tablet1 \
 -boot menu=on \
 -enable-kvm \
 -monitor stdio \
 -spice port=5800,disable-ticketing \
 -qmp tcp:0:8888,server,nowait \
 -drive file=/home/win10-seabios-sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device ide-drive,drive=drive_sysdisk,bus=ide.0,id=device_sysdisk,bootindex=0,physical_block_size=4096,logical_block_size=512 \
 -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
 -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0 \
 -device ioh3420,bus=pcie.0,id=root.0,slot=0 \
 -device virtio-scsi-pci,bus=root.0,id=scsi_pci_bus,disable-legacy=on,disable-modern=off \
 -drive file=/home/datadisk5G.qcow2,format=qcow2,id=drive_datadisk5G,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_datadisk5G,bus=scsi_pci_bus.0,id=device_datadisk5G,physical_block_size=4096,logical_block_size=4096 \
 -drive file=/home/cdimg.iso,if=none,media=cdrom,id=drive_cd,readonly=on \
 -device scsi-cd,bus=scsi_pci_bus.0,drive=drive_cd,id=device_cd \
 -device ioh3420,bus=pcie.0,id=root.1,slot=1 \
 -device ioh3420,bus=pcie.0,id=root.2,slot=2 \
 -device x3130-upstream,bus=root.2,id=upstream0 \
 -device xio3130-downstream,bus=upstream0,id=downstream0,chassis=1 \
 -device xio3130-downstream,bus=upstream0,id=downstream1,chassis=2 \
 -device virtio-scsi-pci,bus=downstream0,id=scsi_pci_bus0 \
 -drive file=/home/backup/en_windows_10_enterprise_version_1511_updated_feb_2016_x64_dvd_8378876.iso,if=none,media=cdrom,id=drive_syscd,readonly=on,format=raw \
 -device scsi-disk,bus=scsi_pci_bus0.0,drive=drive_syscd,id=device_syscd,bootindex=1 \
 -device virtio-scsi-pci,bus=downstream1,id=scsi_pci_bus1,disable-legacy=on,disable-modern=off \
 -drive file=/home/datadisk2G.qcow2,format=qcow2,id=drive_datadisk2G,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_datadisk2G,bus=scsi_pci_bus1.0,id=device_datadisk2G,physical_block_size=512,logical_block_size=512 \
 -incoming tcp:0:1234

3.Migrate to the destination:
{"execute": "migrate","arguments":{"uri": "tcp:0:1234"}}

Actual results:
In source HMP:
(qemu) info migrate
capabilities: xbzrle: off rdma-pin-all: off auto-converge: off zero-blocks: off compress: off events: off postcopy-ram: off 
Migration status: completed
total time: 103948 milliseconds
downtime: 14 milliseconds
setup: 17 milliseconds
transferred ram: 3414497 kbytes
throughput: 269.11 mbps
remaining ram: 0 kbytes
total ram: 4326224 kbytes
duplicate: 793549 pages
skipped: 0 pages
normal: 850218 pages
normal bytes: 3400872 kbytes
dirty sync count: 25
(qemu) 
(qemu) info status
VM status: paused (postmigrate)

In dest HMP:
(qemu) info status
VM status: running

When migration is completed, destination guest hangs as attachment.

Expected results:
Destination guest should work after migration.

Additional info:
With qemu-kvm-rhev-2.3.0-31.el7_2.18.x86_64
(qemu) migrate -d tcp:0:1234
migrate: State blocked by non-migratable device '0000:00:1f.2/ich9_ahci'

Comment 2 yduan 2016-07-25 07:56:54 UTC
Additional info:
  Not reproducible with '-machine pc' machine type.
  CMD is as attachment.

Comment 3 yduan 2016-07-25 07:57:38 UTC
Created attachment 1183613 [details]
Not reproducible with '-machine pc' machine type

Comment 4 Amit Shah 2016-08-03 07:33:47 UTC
Can you please try with the latest qemu-kvm-rhev?

Also, let me know if it reproduces - I'd like access to your test systems.

Comment 6 yduan 2016-08-04 07:21:23 UTC
Migration succeed when without CMD below:

 -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
 -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0 \

Comment 7 Dr. David Alan Gilbert 2016-08-04 08:16:30 UTC
(In reply to yduan from comment #6)
> Migration succeed when without CMD below:
> 
>  -netdev
> tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
>  -device
> virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,
> bus=pcie.0 \


It might be worth trying just changing that to vhost=off ?

Dave

Comment 8 Amit Shah 2016-08-11 07:01:22 UTC
(In reply to yduan from comment #6)
> Migration succeed when without CMD below:
> 
>  -netdev
> tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
>  -device
> virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,
> bus=pcie.0 \

Thanks for digging into this!

Can you please try vhost=off as Dave mentions above?

Michael, Jason, are you aware of any virtio or vhost related regressions that should be backported?

Comment 9 yduan 2016-08-12 01:05:35 UTC
(In reply to Amit Shah from comment #8)
> (In reply to yduan from comment #6)
> > Migration succeed when without CMD below:
> > 
> >  -netdev
> > tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
> >  -device
> > virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,
> > bus=pcie.0 \
> 
> Can you please try vhost=off as Dave mentions above?
> 

Using the latest qemu-kvm-rhev, the destination qemu monitor quits with following prompts as soon as migration starts in the source, no matter what "vhost" is set ("on" or "off").

(qemu) qemu-kvm: Missing section footer for 0000:00:03.0/virtio-net
qemu-kvm: load of migration failed: Invalid argument
red_channel_client_disconnect_dummy: rcc=0x7f908f903000 (channel=0x7f90918ec260 type=5 id=0)
snd_channel_put: SndChannel=0x7f909129a000 freed
red_channel_client_disconnect_dummy: rcc=0x7f90915e0000 (channel=0x7f90918ec100 type=6 id=0)
snd_channel_put: SndChannel=0x7f90902dc000 freed
red_channel_client_disconnect: rcc=0x7f9091252000 (channel=0x7f908fd26c00 type=2 id=0)
qemu-kvm: network script /etc/ifdown_script failed with status 256
red_channel_client_disconnect: rcc=0x7f9090112000 (channel=0x7f90900bfb80 type=4 id=0)


[root@dhcp-9-49 backup]# uname -r
3.10.0-489.el7.x86_64
[root@dhcp-9-49 backup]# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.6.0-20.el7.x86_64

Comment 10 jason wang 2016-08-12 01:42:21 UTC
(In reply to Amit Shah from comment #8)
> (In reply to yduan from comment #6)
> > Migration succeed when without CMD below:
> > 
> >  -netdev
> > tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
> >  -device
> > virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,
> > bus=pcie.0 \
> 
> Thanks for digging into this!
> 
> Can you please try vhost=off as Dave mentions above?
> 
> Michael, Jason, are you aware of any virtio or vhost related regressions
> that should be backported?

Seems not.

Comment 11 Michael S. Tsirkin 2016-08-12 01:44:32 UTC
No - how about disabling the modern interface and using the legacy one?
Does this work around the issue?

Comment 12 yduan 2016-08-12 02:02:18 UTC
(In reply to Michael S. Tsirkin from comment #11)
> No - how about disabling the modern interface and using the legacy one?
> Does this work around the issue?

There is no difference without "disable-legacy=on,disable-modern=off".

(qemu) qemu-kvm: Missing section footer for 0000:00:03.0/virtio-net
qemu-kvm: load of migration failed: Invalid argument
red_channel_client_disconnect_dummy: rcc=0x7f4efdc53000 (channel=0x7f4effc3c260 type=5 id=0)
snd_channel_put: SndChannel=0x7f4efe79e000 freed
red_channel_client_disconnect_dummy: rcc=0x7f4eff7a6000 (channel=0x7f4effc3c100 type=6 id=0)
snd_channel_put: SndChannel=0x7f4efe5c8000 freed
red_channel_client_disconnect: rcc=0x7f4eff9e4000 (channel=0x7f4efe076c00 type=2 id=0)
red_channel_client_disconnect: rcc=0x7f4eff616000 (channel=0x7f4efe40fb80 type=4 id=0)
qemu-kvm: network script /etc/ifdown_script failed with status 256

[root@dhcp-9-49 backup]# uname -r
3.10.0-489.el7.x86_64
[root@dhcp-9-49 backup]# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.6.0-20.el7.x86_64

Comment 14 Dr. David Alan Gilbert 2016-08-12 16:00:44 UTC
I think the problem here could be due to us missing two backports, so can you please try:

https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=11568745

Michael, Jason, this has the following two commits added:
62cee1a28aada2cce4b0e1fb835d8fc830aed7ac 
6c6668232e71b7cf7ff39fa1a7abf660c40f9cea

Comment 15 yduan 2016-08-15 06:05:58 UTC
(In reply to Dr. David Alan Gilbert from comment #14)
> I think the problem here could be due to us missing two backports, so can
> you please try:
> 
> https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=11568745
> 

virtio-win-prewhql-0.1-125
# uname -r
3.10.0-489.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.6.0-20.el7.1365747a.x86_64

After migration completed, windows10 guest hangs with no any error prompt.

Comment 17 yduan 2016-08-15 07:14:06 UTC
# uname -r
3.10.0-489.el7.x86_64
# rpm -q qemu-kvm-rhev
**qemu-kvm-rhev-2.6.0-20.el7.1365747a.x86_64**

Migration succeeds after updating network adapter driver to latest **virtio-win-prewhql-0.1-126**.

Comment 18 Dr. David Alan Gilbert 2016-08-15 08:07:07 UTC
(In reply to yduan from comment #17)
> # uname -r
> 3.10.0-489.el7.x86_64
> # rpm -q qemu-kvm-rhev
> **qemu-kvm-rhev-2.6.0-20.el7.1365747a.x86_64**
> 
> Migration succeeds after updating network adapter driver to latest
> **virtio-win-prewhql-0.1-126**.

Do you know exactly which version you had previously?

Comment 19 yduan 2016-08-15 09:41:05 UTC
(In reply to Dr. David Alan Gilbert from comment #18)
> (In reply to yduan from comment #17)
> > # uname -r
> > 3.10.0-489.el7.x86_64
> > # rpm -q qemu-kvm-rhev
> > **qemu-kvm-rhev-2.6.0-20.el7.1365747a.x86_64**
> > 
> > Migration succeeds after updating network adapter driver to latest
> > **virtio-win-prewhql-0.1-126**.
> 
> Do you know exactly which version you had previously?

I think you are asking for virtio-win version.

As metioned in comment 15, it is virtio-win-prewhql-0.1-125.

Comment 20 Dr. David Alan Gilbert 2016-08-16 11:48:17 UTC
OK, that set of fixes that was in that test brew are in qemu-kvm-rhev-2.6.0-21.el7, so if that works in combination with the -126 driver then I think it's probably worth closing this, however please run the test a few times since I suspect we might have more intermittent bugs.

Comment 21 yduan 2016-08-17 08:38:55 UTC
# uname -r
3.10.0-492.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.6.0-21.el7.x86_64

virtio-win-prewhql-0.1-126

It is not reproducible when windows 10 guest is installed from en_windows_10_enterprise_version_1511_updated_apr_2016_x64_dvd_8711771.iso (ISO link: http://tree.englab.nay.redhat.com/pub/windows/win10/en_windows_10_enterprise_version_1511_updated_apr_2016_x64_dvd_8711771.iso).

It is reproducible when windows 10 guest is installed from en_windows_10_enterprise_version_1607_updated_jul_2016_x64_dvd_9054264.iso (ISO link: http://tree.englab.nay.redhat.com/pub/windows/win10/en_windows_10_enterprise_version_1607_updated_jul_2016_x64_dvd_9054264.iso).

CMD:
/usr/libexec/qemu-kvm \
 -S \
 -name 'rhel7.3' \
 -machine q35,accel=kvm,vmport=off \
 -m 4096 \
 -smp 4,maxcpus=4,sockets=1,cores=2,threads=2 \
 -cpu SandyBridge,enforce \
 -rtc base=localtime,clock=host,driftfix=slew \
 -nodefaults \
 -vga qxl \
 -device AC97,bus=pcie.0 \
 -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_qmpmonitor1,mode=control \
 -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_catch_monitor,mode=control \
 -device pvpanic,ioport=0x505,id=idSWJ5gV \
 -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \
 -device isa-serial,chardev=serial_id_serial0 \
 -chardev socket,id=seabioslog_log,path=/tmp/seabios-log,server,nowait \
 -device isa-debugcon,chardev=seabioslog_log,iobase=0x402 \
 -device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pcie.0 \
 -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pcie.0 \
 -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pcie.0 \
 -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pcie.0 \
 -device usb-tablet,id=usb-tablet1 \
 -boot menu=on \
 -enable-kvm \
 -monitor stdio \
 -spice port=5900,disable-ticketing \
 -qmp tcp:0:9999,server,nowait \
 -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
 -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0 \
 -drive file=/home/backup/virtio-win-prewhql-0.1-126.iso,if=none,media=cdrom,id=drive_wincd,readonly=on,format=raw \
 -device ide-cd,bus=ide.0,drive=drive_wincd,id=device_wincd \
 -device ioh3420,bus=pcie.0,id=root.0,slot=0 \
 -device ioh3420,bus=pcie.0,id=root.1,slot=1 \
 -device ioh3420,bus=pcie.0,id=root.2,slot=2 \
 -device x3130-upstream,bus=root.2,id=upstream0 \
 -device xio3130-downstream,bus=upstream0,id=downstream0,chassis=1 \
 -device xio3130-downstream,bus=upstream0,id=downstream1,chassis=2 \
 -device virtio-scsi-pci,bus=downstream0,id=scsi_pci_bus0,disable-legacy=on,disable-modern=off \
 -drive file=/home/sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_sysdisk,bus=scsi_pci_bus0.0,id=device_sysdisk,bootindex=0,physical_block_size=4096,logical_block_size=512 \
 -drive file=/home/backup/en_windows_10_enterprise_version_1511_updated_apr_2016_x64_dvd_8711771.iso,if=none,media=cdrom,id=drive_syscd,readonly=on,format=raw \
 -device scsi-disk,bus=scsi_pci_bus0.0,drive=drive_syscd,id=device_syscd,bootindex=1 \

Comment 22 yduan 2016-08-25 09:59:37 UTC
I met this issue both "q35" and "pc" recently, so i retry two cases here.

virtio-win-prewhql-0.1-126
# uname -r
3.10.0-492.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.6.0-22.el7.x86_64

Description of problem:
After migration completed, windows10 guest hangs with no any error prompt.

Q35 How reproducible:
2/2

PC How reproducible:
2/2

Q35 CMD:
/usr/libexec/qemu-kvm \
 -S \
 -name 'Win10-x64' \
 -machine q35,accel=kvm,vmport=off \
 -m 4096 \
 -smp 4,maxcpus=4,sockets=1,cores=4,threads=1 \
 -cpu Opteron_G5,enforce \
 -rtc base=localtime,clock=host,driftfix=slew \
 -nodefaults \
 -vga qxl \
 -device AC97,bus=pcie.0 \
 -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_qmpmonitor1,mode=control \
 -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_catch_monitor,mode=control \
 -device pvpanic,ioport=0x505,id=idSWJ5gV \
 -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \
 -device isa-serial,chardev=serial_id_serial0 \
 -chardev socket,id=seabioslog_log,path=/tmp/seabios-log,server,nowait \
 -device isa-debugcon,chardev=seabioslog_log,iobase=0x402 \
 -device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pcie.0 \
 -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pcie.0 \
 -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pcie.0 \
 -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pcie.0 \
 -device usb-tablet,id=usb-tablet1 \
 -boot menu=on \
 -enable-kvm \
 -monitor stdio \
 -spice port=5900,disable-ticketing \
 -qmp tcp:0:9999,server,nowait \
 -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
 -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pcie.0 \
 -drive file=/home/virtio-win-prewhql-0.1-126.iso,if=none,media=cdrom,id=drive_wincd,readonly=on,format=raw \
 -device ide-cd,bus=ide.0,drive=drive_wincd,id=device_wincd \
 -device ioh3420,bus=pcie.0,id=root.0,slot=0 \
 -device ioh3420,bus=pcie.0,id=root.1,slot=1 \
 -device ioh3420,bus=pcie.0,id=root.2,slot=2 \
 -device x3130-upstream,bus=root.2,id=upstream0 \
 -device xio3130-downstream,bus=upstream0,id=downstream0,chassis=1 \
 -device xio3130-downstream,bus=upstream0,id=downstream1,chassis=2 \
 -device virtio-scsi-pci,bus=downstream0,id=scsi_pci_bus0 \
 -drive file=/mnt/sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_sysdisk,bus=scsi_pci_bus0.0,id=device_sysdisk,bootindex=0 \
 -drive file=/home/en_windows_10_enterprise_version_1607_updated_jul_2016_x64_dvd_9054264.iso,if=none,media=cdrom,id=drive_syscd,readonly=on,format=raw \
 -device scsi-disk,bus=scsi_pci_bus0.0,drive=drive_syscd,id=device_syscd,bootindex=1 \



PC CMD:
/usr/libexec/qemu-kvm \
 -S \
 -name 'win10' \
 -machine pc \
 -m 4096 \
 -smp 4,maxcpus=4,sockets=1,cores=4,threads=1 \
 -cpu Opteron_G5,check \
 -rtc base=localtime,clock=host,driftfix=slew \
 -nodefaults \
 -vga qxl \
 -device AC97,bus=pci.0 \
 -chardev socket,id=qmp_id_qmpmonitor1,path=/tmp/monitor-qmpmonitor1-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_qmpmonitor1,mode=control \
 -chardev socket,id=qmp_id_catch_monitor,path=/tmp/monitor-catch_monitor-20151214-111528-C6FB1EaX,server,nowait \
 -mon chardev=qmp_id_catch_monitor,mode=control \
 -device pvpanic,ioport=0x505,id=idSWJ5gV \
 -chardev socket,id=serial_id_serial0,path=/tmp/serial-serial0-20151214-111528-C6FB1EaX,server,nowait \
 -device isa-serial,chardev=serial_id_serial0 \
 -chardev socket,id=seabioslog_log,path=/tmp/seabios-log,server,nowait \
 -device isa-debugcon,chardev=seabioslog_log,iobase=0x402 \
 -device ich9-usb-ehci1,id=usb1,addr=1d.7,multifunction=on,bus=pci.0 \
 -device ich9-usb-uhci1,id=usb1.0,multifunction=on,masterbus=usb1.0,addr=1d.0,firstport=0,bus=pci.0 \
 -device ich9-usb-uhci2,id=usb1.1,multifunction=on,masterbus=usb1.0,addr=1d.2,firstport=2,bus=pci.0 \
 -device ich9-usb-uhci3,id=usb1.2,multifunction=on,masterbus=usb1.0,addr=1d.4,firstport=4,bus=pci.0 \
 -device usb-tablet,id=usb-tablet1 \
 -boot menu=on \
 -enable-kvm \
 -monitor stdio \
 -spice port=5900,disable-ticketing \
 -qmp tcp:0:9999,server,nowait \
 -netdev tap,id=netdev0,vhost=on,script=/etc/qemu-ifup,downscript=/etc/ifdown_script \
 -device virtio-net-pci,mac=BA:BC:13:83:4F:BD,id=net0,netdev=netdev0,status=on,bus=pci.0 \
 -drive file=/home/virtio-win-prewhql-0.1-126.iso,if=none,cache=none,media=cdrom,id=drive_wincd,readonly=on,format=raw \
 -device ide-cd,bus=ide.0,drive=drive_wincd,id=device_wincd \
 -device virtio-scsi-pci,id=scsi_pci_bus0 \
 -drive file=/mnt/sysdisk.qcow2,format=qcow2,id=drive_sysdisk,if=none,cache=none,aio=native,werror=stop,rerror=stop \
 -device scsi-hd,drive=drive_sysdisk,bus=scsi_pci_bus0.0,id=device_sysdisk,bootindex=0 \
 -drive file=/home/en_windows_10_enterprise_version_1607_updated_jul_2016_x64_dvd_9054264.iso,if=none,cache=none,media=cdrom,id=drive_syscd,readonly=on,format=raw \
 -device scsi-disk,bus=scsi_pci_bus0.0,drive=drive_syscd,id=device_syscd,bootindex=1 \

Comment 23 yduan 2016-08-25 10:07:03 UTC
(In reply to yduan from comment #22)
> I met this issue both "q35" and "pc" recently, so i retry two cases here.
> 
> virtio-win-prewhql-0.1-126
> # uname -r
> 3.10.0-492.el7.x86_64
> # rpm -q qemu-kvm-rhev
> qemu-kvm-rhev-2.6.0-22.el7.x86_64
> 
> Description of problem:
> After migration completed, windows10 guest hangs with no any error prompt.
> 

  In this situation, guest works well after "system_reset" in HMP.

Comment 24 Pei Zhang 2016-09-24 02:32:19 UTC
FYI.

In this testing, the windows 10 migration works well.

Versions:
Host:
3.10.0-510.el7.x86_64
qemu-kvm-rhev-2.6.0-27.el7.x86_64

Guest:
Windows10

Steps:
1. Boot win10 guest
/usr/libexec/qemu-kvm -name win10 \
-cpu SandyBridge -m 4G -numa node \
-smp 4,sockets=2,cores=2,threads=1 \
-netdev tap,id=SandyBridgenet0 \
-device virtio-net-pci,netdev=SandyBridgenet0,id=net0,mac=12:54:00:5c:77:01 \
-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vgamem_mb=16 \
-spice port=5902,addr=0.0.0.0,disable-ticketing,image-compression=off,seamless-migration=on \
-monitor stdio \
-serial unix:/tmp/monitor,server,nowait \
-qmp tcp:0:5551,server,nowait \
-drive file=/mnt/win10-64-virtio.qcow2,format=qcow2,if=none,id=drive-virtio-blk0,werror=stop,rerror=stop \
-device virtio-blk-pci,drive=drive-virtio-blk0,id=virtio-blk0,ioeventfd=off \
-usbdevice tablet

2. Boot guest in des with '-incoming'
<same as step1>
-incoming tcp:0:5555 \

3. Do migrate
(qemu) migrate -d tcp:10.73.72.154:5555

4. After migration, check guest status, works well.

5. Reboot guest several times and check guest status, works well.
# reboot

network keeps working well
# ping google.com
PING google.com (216.58.196.174) 56(84) bytes of data.
64 bytes from sin04s05-in-f174.1e100.net (216.58.196.174): icmp_seq=1 ttl=49 time=68.6 ms
...

Comment 25 Amit Shah 2016-09-27 11:25:31 UTC
Great, thanks for confirming!

So It looks like Dave's fix worked for this bug too.  I'll close it as a dup.

*** This bug has been marked as a duplicate of bug 1377920 ***


Note You need to log in before you can comment on or make changes to this bug.