On 06/23/17 10:55 +0100, Stefan Hajnoczi wrote: > On Fri, Jun 23, 2017 at 08:13:13AM +0800, haozhong.zh...@intel.com wrote: > > On 06/22/17 15:08 +0100, Stefan Hajnoczi wrote: > > > I tried live migrating a guest with NVDIMM on qemu.git/master (edf8bc984): > > > > > > $ qemu -M accel=kvm,nvdimm=on -m 1G,slots=4,maxmem=8G -cpu host \ > > > -object > > > memory-backend-file,id=mem1,share=on,mem-path=nvdimm.dat,size=1G \ > > > -device nvdimm,id=nvdimm1,memdev=mem1 \ > > > -drive if=virtio,file=test.img,format=raw > > > > > > $ qemu -M accel=kvm,nvdimm=on -m 1G,slots=4,maxmem=8G -cpu host \ > > > -object > > > memory-backend-file,id=mem1,share=on,mem-path=nvdimm.dat,size=1G \ > > > -device nvdimm,id=nvdimm1,memdev=mem1 \ > > > -drive if=virtio,file=test.img,format=raw \ > > > -incoming tcp::1234 > > > > > > (qemu) migrate tcp:127.0.0.1:1234 > > > > > > The guest kernel panics or hangs every time on the destination. It > > > happens as long as the nvdimm device is present - I didn't even mount it > > > inside the guest. > > > > > > Is migration expected to work? > > > > Yes, I tested on QEMU 2.8.0 several months ago and it worked. I'll > > have a look at this issue. > > Great, thanks! > > David Gilbert suggested the following on IRC, it sounds like a good > starting point for debugging: > > Launch the destination QEMU with -S (vcpus will be paused) and after > migration has completed, compare the NVDIMM contents on source and > destination. >
Which host and guest kernel are you testing? Is any workload running in guest when migration? I just tested QEMU commit edf8bc984 with host/guest kernel 4.8.0, and could not reproduce the issue. Haozhong