On Mon, 9 May 2011, Takeshi HASEGAWA wrote:
> FYI
>
> While tracing virtio-blk crash issues, I have found cpu_physical_memory_map()
> in upstream-qemu+xen behaves different with others. This prevents proper work
> of virtio-ring bundled in qemu.
>
> When a caller requests more than 2 guest-physical pages, the function
> will map the pages in host-virtual, as possible.
> In kvm+qemu, the region residents always sequential in host-virtual,
> so it will work perfectly.
> However, in xen+qemu, the region mapping is sometimes fragmented and partial.
>
> According to the comment of cpu_physical_memory_map(), it does not
> grantee mapping
> of whole range that caller requested. However, virtio backend drivers in qemu
> expect all requested guest-physical pages are mapped to host-virtual
> sequentially.
>
This is a very serious issue, thank you very much for spotting it!
I am going to refactor cpu_physical_memory_map to fix the problem, I'll
send you a patch as soon as I have it ready.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|