KVM: Enable 32bit dirty log pointers on 64bit host
authorArnd Bergmann <arnd@arndb.de>
Thu, 22 Oct 2009 12:19:27 +0000 (14:19 +0200)
committerAvi Kivity <avi@redhat.com>
Thu, 3 Dec 2009 07:32:20 +0000 (09:32 +0200)
commit6ff5894cdfe7103083bd15b31002434ccd351039
tree0e958c3b85712e2d1d320f4841e88ef8bdac8ea7
parentafbcf7ab8d1bc8c2d04792f6d9e786e0adeb328d
KVM: Enable 32bit dirty log pointers on 64bit host

With big endian userspace, we can't quite figure out if a pointer
is 32 bit (shifted >> 32) or 64 bit when we read a 64 bit pointer.

This is what happens with dirty logging. To get the pointer interpreted
correctly, we thus need Arnd's patch to implement a compat layer for
the ioctl:

A better way to do this is to add a separate compat_ioctl() method that
converts this for you.

Based on initial patch from Arnd Bergmann.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
virt/kvm/kvm_main.c