• A
    KVM: fix userspace ABI breakage · 1327138e
    Adrian Bunk 提交于
    The following part of commit 9ef621d3
    (KVM: Support mixed endian machines) changed on the size of a struct
    that is exported to userspace:
    
    include/linux/kvm.h:
    
    @@ -318,14 +318,14 @@ struct kvm_trace_rec {
     	__u32 vcpu_id;
     	union {
     		struct {
    -			__u32 cycle_lo, cycle_hi;
    +			__u64 cycle_u64;
     			__u32 extra_u32[KVM_TRC_EXTRA_MAX];
     		} cycle;
     		struct {
     			__u32 extra_u32[KVM_TRC_EXTRA_MAX];
     		} nocycle;
     	} u;
    -};
    +} __attribute__((packed));
    
    Packing a struct was the correct idea, but it packed the wrong struct.
    Signed-off-by: NAdrian Bunk <bunk@kernel.org>
    Signed-off-by: NAvi Kivity <avi@qumranet.com>
    1327138e
kvm.h 11.5 KB