KVM: 16-byte mmio support
Since sse instructions can issue 16-byte mmios, we need to support them. We can't increase the kvm_run mmio buffer size to 16 bytes without breaking compatibility, so instead we break the large mmios into two smaller 8-byte ones. Since the bus is 64-bit we aren't breaking any atomicity guarantees. Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
@ -27,6 +27,10 @@
|
||||
|
||||
#include <asm/kvm_host.h>
|
||||
|
||||
#ifndef KVM_MMIO_SIZE
|
||||
#define KVM_MMIO_SIZE 8
|
||||
#endif
|
||||
|
||||
/*
|
||||
* vcpu->requests bit members
|
||||
*/
|
||||
@ -132,7 +136,8 @@ struct kvm_vcpu {
|
||||
int mmio_read_completed;
|
||||
int mmio_is_write;
|
||||
int mmio_size;
|
||||
unsigned char mmio_data[8];
|
||||
int mmio_index;
|
||||
unsigned char mmio_data[KVM_MMIO_SIZE];
|
||||
gpa_t mmio_phys_addr;
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user