On Mon, 2 Nov 2015 17:43:16 +0000 Stefan Hajnoczi <stefa...@gmail.com> wrote:
> On Wed, Oct 28, 2015 at 05:48:02PM +0200, Michael S. Tsirkin wrote: > > Use address_space_read to make sure we handle the case of an indirect > > descriptor crossing DIMM boundary correctly. > > > > Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > > --- > > > > Warning: compile-tested only. > > Test (with your follow-up patch squashed in) with 6 4KB seqeuential read > processes on running successfully. > > I didn't test the DIMM boundary case. Igor: what is the easiest way to > reproduce the DIMM boundary crossing? I've tested it, here is QEMU CLI: qemu-system-x86_64 -enable-kvm -enable-kvm -m 128M,slots=250,maxmem=32G -drive if=none,id=hd,file=rhel72,cache=none,aio=native,format=raw -device virtio-blk,drive=hd,scsi=off,config-wce=off,x-data-plane=on `for i in $(seq 0 15); do echo -n "-object memory-backend-ram,id=m$i,size=10M -device pc-dimm,id=dimm$i,memdev=m$i "; done` boot and then do: dd if=/dev/vda of=/dev/null bs=16M without fix it hangs either at boot time or when doing 'dd'