diff options
Diffstat (limited to 'kvm_sys/src/arm/bindings.rs')
-rw-r--r-- | kvm_sys/src/arm/bindings.rs | 7560 |
1 files changed, 4925 insertions, 2635 deletions
diff --git a/kvm_sys/src/arm/bindings.rs b/kvm_sys/src/arm/bindings.rs index 9a4f86c..a6bdc94 100644 --- a/kvm_sys/src/arm/bindings.rs +++ b/kvm_sys/src/arm/bindings.rs @@ -3,13 +3,15 @@ #[repr(C)] #[derive(Default)] pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>); -impl <T> __IncompleteArrayField<T> { +impl<T> __IncompleteArrayField<T> { #[inline] pub fn new() -> Self { __IncompleteArrayField(::std::marker::PhantomData) } #[inline] - pub unsafe fn as_ptr(&self) -> *const T { ::std::mem::transmute(self) } + pub unsafe fn as_ptr(&self) -> *const T { + ::std::mem::transmute(self) + } #[inline] pub unsafe fn as_mut_ptr(&mut self) -> *mut T { ::std::mem::transmute(self) @@ -23,40 +25,18 @@ impl <T> __IncompleteArrayField<T> { ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) } } -impl <T> ::std::fmt::Debug for __IncompleteArrayField<T> { +impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> { fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { fmt.write_str("__IncompleteArrayField") } } -impl <T> ::std::clone::Clone for __IncompleteArrayField<T> { - #[inline] - fn clone(&self) -> Self { Self::new() } -} -impl <T> ::std::marker::Copy for __IncompleteArrayField<T> { } -#[repr(C)] -pub struct __BindgenUnionField<T>(::std::marker::PhantomData<T>); -impl <T> __BindgenUnionField<T> { - #[inline] - pub fn new() -> Self { __BindgenUnionField(::std::marker::PhantomData) } - #[inline] - pub unsafe fn as_ref(&self) -> &T { ::std::mem::transmute(self) } +impl<T> ::std::clone::Clone for __IncompleteArrayField<T> { #[inline] - pub unsafe fn as_mut(&mut self) -> &mut T { ::std::mem::transmute(self) } -} -impl <T> ::std::default::Default for __BindgenUnionField<T> { - #[inline] - fn default() -> Self { Self::new() } -} -impl <T> ::std::clone::Clone for __BindgenUnionField<T> { - #[inline] - fn clone(&self) -> Self { Self::new() } -} -impl <T> ::std::marker::Copy for __BindgenUnionField<T> { } -impl <T> ::std::fmt::Debug for __BindgenUnionField<T> { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - fmt.write_str("__BindgenUnionField") + fn clone(&self) -> Self { + Self::new() } } +impl<T> ::std::marker::Copy for __IncompleteArrayField<T> {} pub const __BITS_PER_LONG: ::std::os::raw::c_uint = 32; pub const __FD_SETSIZE: ::std::os::raw::c_uint = 1024; pub const _IOC_NRBITS: ::std::os::raw::c_uint = 8; @@ -88,6 +68,10 @@ pub const PSCI_0_2_POWER_STATE_TYPE_SHIFT: ::std::os::raw::c_uint = 16; pub const PSCI_0_2_POWER_STATE_TYPE_MASK: ::std::os::raw::c_uint = 65536; pub const PSCI_0_2_POWER_STATE_AFFL_SHIFT: ::std::os::raw::c_uint = 24; pub const PSCI_0_2_POWER_STATE_AFFL_MASK: ::std::os::raw::c_uint = 50331648; +pub const PSCI_1_0_EXT_POWER_STATE_ID_MASK: ::std::os::raw::c_uint = 268435455; +pub const PSCI_1_0_EXT_POWER_STATE_ID_SHIFT: ::std::os::raw::c_uint = 0; +pub const PSCI_1_0_EXT_POWER_STATE_TYPE_SHIFT: ::std::os::raw::c_uint = 30; +pub const PSCI_1_0_EXT_POWER_STATE_TYPE_MASK: ::std::os::raw::c_uint = 1073741824; pub const PSCI_0_2_AFFINITY_LEVEL_ON: ::std::os::raw::c_uint = 0; pub const PSCI_0_2_AFFINITY_LEVEL_OFF: ::std::os::raw::c_uint = 1; pub const PSCI_0_2_AFFINITY_LEVEL_ON_PENDING: ::std::os::raw::c_uint = 2; @@ -97,6 +81,8 @@ pub const PSCI_0_2_TOS_MP: ::std::os::raw::c_uint = 2; pub const PSCI_VERSION_MAJOR_SHIFT: ::std::os::raw::c_uint = 16; pub const PSCI_VERSION_MINOR_MASK: ::std::os::raw::c_uint = 65535; pub const PSCI_VERSION_MAJOR_MASK: ::std::os::raw::c_int = -65536; +pub const PSCI_1_0_FEATURES_CPU_SUSPEND_PF_SHIFT: ::std::os::raw::c_uint = 1; +pub const PSCI_1_0_FEATURES_CPU_SUSPEND_PF_MASK: ::std::os::raw::c_uint = 2; pub const PSCI_RET_SUCCESS: ::std::os::raw::c_uint = 0; pub const PSCI_RET_NOT_SUPPORTED: ::std::os::raw::c_int = -1; pub const PSCI_RET_INVALID_PARAMS: ::std::os::raw::c_int = -2; @@ -106,6 +92,7 @@ pub const PSCI_RET_ON_PENDING: ::std::os::raw::c_int = -5; pub const PSCI_RET_INTERNAL_FAILURE: ::std::os::raw::c_int = -6; pub const PSCI_RET_NOT_PRESENT: ::std::os::raw::c_int = -7; pub const PSCI_RET_DISABLED: ::std::os::raw::c_int = -8; +pub const PSCI_RET_INVALID_ADDRESS: ::std::os::raw::c_int = -9; pub const HWCAP_SWP: ::std::os::raw::c_uint = 1; pub const HWCAP_HALF: ::std::os::raw::c_uint = 2; pub const HWCAP_THUMB: ::std::os::raw::c_uint = 4; @@ -234,8 +221,7 @@ pub const KVM_DEV_ARM_VGIC_GRP_ADDR: ::std::os::raw::c_uint = 0; pub const KVM_DEV_ARM_VGIC_GRP_DIST_REGS: ::std::os::raw::c_uint = 1; pub const KVM_DEV_ARM_VGIC_GRP_CPU_REGS: ::std::os::raw::c_uint = 2; pub const KVM_DEV_ARM_VGIC_CPUID_SHIFT: ::std::os::raw::c_uint = 32; -pub const KVM_DEV_ARM_VGIC_CPUID_MASK: ::std::os::raw::c_ulonglong = - 1095216660480; +pub const KVM_DEV_ARM_VGIC_CPUID_MASK: ::std::os::raw::c_ulonglong = 1095216660480; pub const KVM_DEV_ARM_VGIC_OFFSET_SHIFT: ::std::os::raw::c_uint = 0; pub const KVM_DEV_ARM_VGIC_OFFSET_MASK: ::std::os::raw::c_uint = 4294967295; pub const KVM_DEV_ARM_VGIC_GRP_NR_IRQS: ::std::os::raw::c_uint = 3; @@ -253,6 +239,7 @@ pub const KVM_ARM_IRQ_TYPE_PPI: ::std::os::raw::c_uint = 2; pub const KVM_ARM_IRQ_CPU_IRQ: ::std::os::raw::c_uint = 0; pub const KVM_ARM_IRQ_CPU_FIQ: ::std::os::raw::c_uint = 1; pub const KVM_ARM_IRQ_GIC_MAX: ::std::os::raw::c_uint = 127; +pub const KVM_NR_IRQCHIPS: ::std::os::raw::c_uint = 1; pub const KVM_PSCI_FN_BASE: ::std::os::raw::c_uint = 2512501342; pub const KVM_PSCI_RET_SUCCESS: ::std::os::raw::c_uint = 0; pub const KVM_PSCI_RET_NI: ::std::os::raw::c_int = -1; @@ -295,6 +282,8 @@ pub const KVM_TRC_PPC_INSTR: ::std::os::raw::c_uint = 131097; pub const KVM_MEM_LOG_DIRTY_PAGES: ::std::os::raw::c_uint = 1; pub const KVM_MEM_READONLY: ::std::os::raw::c_uint = 2; pub const KVM_PIT_SPEAKER_DUMMY: ::std::os::raw::c_uint = 1; +pub const KVM_S390_GET_SKEYS_NONE: ::std::os::raw::c_uint = 1; +pub const KVM_S390_SKEYS_MAX: ::std::os::raw::c_uint = 1048576; pub const KVM_EXIT_UNKNOWN: ::std::os::raw::c_uint = 0; pub const KVM_EXIT_EXCEPTION: ::std::os::raw::c_uint = 1; pub const KVM_EXIT_IO: ::std::os::raw::c_uint = 2; @@ -320,15 +309,25 @@ pub const KVM_EXIT_WATCHDOG: ::std::os::raw::c_uint = 21; pub const KVM_EXIT_S390_TSCH: ::std::os::raw::c_uint = 22; pub const KVM_EXIT_EPR: ::std::os::raw::c_uint = 23; pub const KVM_EXIT_SYSTEM_EVENT: ::std::os::raw::c_uint = 24; +pub const KVM_EXIT_S390_STSI: ::std::os::raw::c_uint = 25; +pub const KVM_EXIT_IOAPIC_EOI: ::std::os::raw::c_uint = 26; pub const KVM_INTERNAL_ERROR_EMULATION: ::std::os::raw::c_uint = 1; pub const KVM_INTERNAL_ERROR_SIMUL_EX: ::std::os::raw::c_uint = 2; pub const KVM_INTERNAL_ERROR_DELIVERY_EV: ::std::os::raw::c_uint = 3; pub const KVM_EXIT_IO_IN: ::std::os::raw::c_uint = 0; +pub const KVM_EXIT_IO_OUT: ::std::os::raw::c_uint = 1; pub const KVM_S390_RESET_POR: ::std::os::raw::c_uint = 1; pub const KVM_S390_RESET_CLEAR: ::std::os::raw::c_uint = 2; pub const KVM_S390_RESET_SUBSYSTEM: ::std::os::raw::c_uint = 4; pub const KVM_S390_RESET_CPU_INIT: ::std::os::raw::c_uint = 8; +pub const KVM_S390_RESET_IPL: ::std::os::raw::c_uint = 16; pub const KVM_SYSTEM_EVENT_SHUTDOWN: ::std::os::raw::c_uint = 1; +pub const KVM_SYSTEM_EVENT_RESET: ::std::os::raw::c_uint = 2; +pub const KVM_SYSTEM_EVENT_CRASH: ::std::os::raw::c_uint = 3; +pub const KVM_S390_MEMOP_LOGICAL_READ: ::std::os::raw::c_uint = 0; +pub const KVM_S390_MEMOP_LOGICAL_WRITE: ::std::os::raw::c_uint = 1; +pub const KVM_S390_MEMOP_F_CHECK_ONLY: ::std::os::raw::c_uint = 1; +pub const KVM_S390_MEMOP_F_INJECT_EXCEPTION: ::std::os::raw::c_uint = 2; pub const KVM_MP_STATE_RUNNABLE: ::std::os::raw::c_uint = 0; pub const KVM_MP_STATE_UNINITIALIZED: ::std::os::raw::c_uint = 1; pub const KVM_MP_STATE_INIT_RECEIVED: ::std::os::raw::c_uint = 2; @@ -353,6 +352,7 @@ pub const KVM_S390_INT_EMERGENCY: ::std::os::raw::c_uint = 4294906369; pub const KVM_S390_INT_EXTERNAL_CALL: ::std::os::raw::c_uint = 4294906370; pub const KVM_S390_INT_IO_MIN: ::std::os::raw::c_uint = 0; pub const KVM_S390_INT_IO_MAX: ::std::os::raw::c_uint = 4294836223; +pub const KVM_S390_INT_IO_AI_MASK: ::std::os::raw::c_uint = 67108864; pub const KVM_S390_STOP_FLAG_STORE_STATUS: ::std::os::raw::c_uint = 1; pub const KVM_GUESTDBG_ENABLE: ::std::os::raw::c_uint = 1; pub const KVM_GUESTDBG_SINGLESTEP: ::std::os::raw::c_uint = 2; @@ -457,6 +457,22 @@ pub const KVM_CAP_PPC_FIXUP_HCALL: ::std::os::raw::c_uint = 103; pub const KVM_CAP_PPC_ENABLE_HCALL: ::std::os::raw::c_uint = 104; pub const KVM_CAP_CHECK_EXTENSION_VM: ::std::os::raw::c_uint = 105; pub const KVM_CAP_S390_USER_SIGP: ::std::os::raw::c_uint = 106; +pub const KVM_CAP_S390_VECTOR_REGISTERS: ::std::os::raw::c_uint = 107; +pub const KVM_CAP_S390_MEM_OP: ::std::os::raw::c_uint = 108; +pub const KVM_CAP_S390_USER_STSI: ::std::os::raw::c_uint = 109; +pub const KVM_CAP_S390_SKEYS: ::std::os::raw::c_uint = 110; +pub const KVM_CAP_MIPS_FPU: ::std::os::raw::c_uint = 111; +pub const KVM_CAP_MIPS_MSA: ::std::os::raw::c_uint = 112; +pub const KVM_CAP_S390_INJECT_IRQ: ::std::os::raw::c_uint = 113; +pub const KVM_CAP_S390_IRQ_STATE: ::std::os::raw::c_uint = 114; +pub const KVM_CAP_PPC_HWRNG: ::std::os::raw::c_uint = 115; +pub const KVM_CAP_DISABLE_QUIRKS: ::std::os::raw::c_uint = 116; +pub const KVM_CAP_X86_SMM: ::std::os::raw::c_uint = 117; +pub const KVM_CAP_MULTI_ADDRESS_SPACE: ::std::os::raw::c_uint = 118; +pub const KVM_CAP_GUEST_DEBUG_HW_BPS: ::std::os::raw::c_uint = 119; +pub const KVM_CAP_GUEST_DEBUG_HW_WPS: ::std::os::raw::c_uint = 120; +pub const KVM_CAP_SPLIT_IRQCHIP: ::std::os::raw::c_uint = 121; +pub const KVM_CAP_IOEVENTFD_ANY_LENGTH: ::std::os::raw::c_uint = 122; pub const KVM_IRQ_ROUTING_IRQCHIP: ::std::os::raw::c_uint = 1; pub const KVM_IRQ_ROUTING_MSI: ::std::os::raw::c_uint = 2; pub const KVM_IRQ_ROUTING_S390_ADAPTER: ::std::os::raw::c_uint = 3; @@ -510,24 +526,32 @@ pub type __u32 = ::std::os::raw::c_uint; pub type __s64 = ::std::os::raw::c_longlong; pub type __u64 = ::std::os::raw::c_ulonglong; #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct __kernel_fd_set { pub fds_bits: [::std::os::raw::c_ulong; 16usize], } #[test] fn bindgen_test_layout___kernel_fd_set() { - assert_eq!(::std::mem::size_of::<__kernel_fd_set>() , 128usize , concat ! - ( "Size of: " , stringify ! ( __kernel_fd_set ) )); - assert_eq! (::std::mem::align_of::<__kernel_fd_set>() , 8usize , concat ! - ( "Alignment of " , stringify ! ( __kernel_fd_set ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const __kernel_fd_set ) ) . fds_bits as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( __kernel_fd_set ) , - "::" , stringify ! ( fds_bits ) )); -} -impl Clone for __kernel_fd_set { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<__kernel_fd_set>(), + 128usize, + concat!("Size of: ", stringify!(__kernel_fd_set)) + ); + assert_eq!( + ::std::mem::align_of::<__kernel_fd_set>(), + 8usize, + concat!("Alignment of ", stringify!(__kernel_fd_set)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<__kernel_fd_set>())).fds_bits as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__kernel_fd_set), + "::", + stringify!(fds_bits) + ) + ); } pub type __kernel_sighandler_t = ::std::option::Option<unsafe extern "C" fn(arg1: ::std::os::raw::c_int)>; @@ -552,24 +576,32 @@ pub type __kernel_size_t = ::std::os::raw::c_uint; pub type __kernel_ssize_t = ::std::os::raw::c_int; pub type __kernel_ptrdiff_t = ::std::os::raw::c_int; #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct __kernel_fsid_t { pub val: [::std::os::raw::c_int; 2usize], } #[test] fn bindgen_test_layout___kernel_fsid_t() { - assert_eq!(::std::mem::size_of::<__kernel_fsid_t>() , 8usize , concat ! ( - "Size of: " , stringify ! ( __kernel_fsid_t ) )); - assert_eq! (::std::mem::align_of::<__kernel_fsid_t>() , 4usize , concat ! - ( "Alignment of " , stringify ! ( __kernel_fsid_t ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const __kernel_fsid_t ) ) . val as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( __kernel_fsid_t ) , - "::" , stringify ! ( val ) )); -} -impl Clone for __kernel_fsid_t { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<__kernel_fsid_t>(), + 8usize, + concat!("Size of: ", stringify!(__kernel_fsid_t)) + ); + assert_eq!( + ::std::mem::align_of::<__kernel_fsid_t>(), + 4usize, + concat!("Alignment of ", stringify!(__kernel_fsid_t)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<__kernel_fsid_t>())).val as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__kernel_fsid_t), + "::", + stringify!(val) + ) + ); } pub type __kernel_off_t = __kernel_long_t; pub type __kernel_loff_t = ::std::os::raw::c_longlong; @@ -589,27 +621,35 @@ pub type __be64 = __u64; pub type __sum16 = __u16; pub type __wsum = __u32; #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct pt_regs { pub uregs: [::std::os::raw::c_long; 18usize], } #[test] fn bindgen_test_layout_pt_regs() { - assert_eq!(::std::mem::size_of::<pt_regs>() , 144usize , concat ! ( - "Size of: " , stringify ! ( pt_regs ) )); - assert_eq! (::std::mem::align_of::<pt_regs>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( pt_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const pt_regs ) ) . uregs as * const _ as usize - } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( pt_regs ) , "::" , - stringify ! ( uregs ) )); -} -impl Clone for pt_regs { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<pt_regs>(), + 144usize, + concat!("Size of: ", stringify!(pt_regs)) + ); + assert_eq!( + ::std::mem::align_of::<pt_regs>(), + 8usize, + concat!("Alignment of ", stringify!(pt_regs)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<pt_regs>())).uregs as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(pt_regs), + "::", + stringify!(uregs) + ) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_regs { pub usr_regs: pt_regs, pub svc_regs: [::std::os::raw::c_ulong; 3usize], @@ -620,186 +660,253 @@ pub struct kvm_regs { } #[test] fn bindgen_test_layout_kvm_regs() { - assert_eq!(::std::mem::size_of::<kvm_regs>() , 304usize , concat ! ( - "Size of: " , stringify ! ( kvm_regs ) )); - assert_eq! (::std::mem::align_of::<kvm_regs>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_regs ) ) . usr_regs as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_regs ) , "::" , - stringify ! ( usr_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_regs ) ) . svc_regs as * const _ as - usize } , 144usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_regs ) , "::" , - stringify ! ( svc_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_regs ) ) . abt_regs as * const _ as - usize } , 168usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_regs ) , "::" , - stringify ! ( abt_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_regs ) ) . und_regs as * const _ as - usize } , 192usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_regs ) , "::" , - stringify ! ( und_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_regs ) ) . irq_regs as * const _ as - usize } , 216usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_regs ) , "::" , - stringify ! ( irq_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_regs ) ) . fiq_regs as * const _ as - usize } , 240usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_regs ) , "::" , - stringify ! ( fiq_regs ) )); -} -impl Clone for kvm_regs { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_regs>(), + 304usize, + concat!("Size of: ", stringify!(kvm_regs)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_regs>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_regs)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_regs>())).usr_regs as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_regs), + "::", + stringify!(usr_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_regs>())).svc_regs as *const _ as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(kvm_regs), + "::", + stringify!(svc_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_regs>())).abt_regs as *const _ as usize }, + 168usize, + concat!( + "Offset of field: ", + stringify!(kvm_regs), + "::", + stringify!(abt_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_regs>())).und_regs as *const _ as usize }, + 192usize, + concat!( + "Offset of field: ", + stringify!(kvm_regs), + "::", + stringify!(und_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_regs>())).irq_regs as *const _ as usize }, + 216usize, + concat!( + "Offset of field: ", + stringify!(kvm_regs), + "::", + stringify!(irq_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_regs>())).fiq_regs as *const _ as usize }, + 240usize, + concat!( + "Offset of field: ", + stringify!(kvm_regs), + "::", + stringify!(fiq_regs) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_vcpu_init { pub target: __u32, pub features: [__u32; 7usize], } #[test] fn bindgen_test_layout_kvm_vcpu_init() { - assert_eq!(::std::mem::size_of::<kvm_vcpu_init>() , 32usize , concat ! ( - "Size of: " , stringify ! ( kvm_vcpu_init ) )); - assert_eq! (::std::mem::align_of::<kvm_vcpu_init>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_vcpu_init ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_vcpu_init ) ) . target as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_vcpu_init ) , "::" - , stringify ! ( target ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_vcpu_init ) ) . features as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_vcpu_init ) , "::" - , stringify ! ( features ) )); -} -impl Clone for kvm_vcpu_init { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_vcpu_init>(), + 32usize, + concat!("Size of: ", stringify!(kvm_vcpu_init)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_vcpu_init>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_vcpu_init)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_vcpu_init>())).target as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_vcpu_init), + "::", + stringify!(target) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_vcpu_init>())).features as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_vcpu_init), + "::", + stringify!(features) + ) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_sregs { -} +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_sregs {} #[test] fn bindgen_test_layout_kvm_sregs() { - assert_eq!(::std::mem::size_of::<kvm_sregs>() , 0usize , concat ! ( - "Size of: " , stringify ! ( kvm_sregs ) )); - assert_eq! (::std::mem::align_of::<kvm_sregs>() , 1usize , concat ! ( - "Alignment of " , stringify ! ( kvm_sregs ) )); -} -impl Clone for kvm_sregs { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_sregs>(), + 0usize, + concat!("Size of: ", stringify!(kvm_sregs)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_sregs>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_sregs)) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_fpu { -} +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_fpu {} #[test] fn bindgen_test_layout_kvm_fpu() { - assert_eq!(::std::mem::size_of::<kvm_fpu>() , 0usize , concat ! ( - "Size of: " , stringify ! ( kvm_fpu ) )); - assert_eq! (::std::mem::align_of::<kvm_fpu>() , 1usize , concat ! ( - "Alignment of " , stringify ! ( kvm_fpu ) )); -} -impl Clone for kvm_fpu { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_fpu>(), + 0usize, + concat!("Size of: ", stringify!(kvm_fpu)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_fpu>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_fpu)) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_guest_debug_arch { -} +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_guest_debug_arch {} #[test] fn bindgen_test_layout_kvm_guest_debug_arch() { - assert_eq!(::std::mem::size_of::<kvm_guest_debug_arch>() , 0usize , concat - ! ( "Size of: " , stringify ! ( kvm_guest_debug_arch ) )); - assert_eq! (::std::mem::align_of::<kvm_guest_debug_arch>() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_guest_debug_arch ) )); -} -impl Clone for kvm_guest_debug_arch { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_guest_debug_arch>(), + 0usize, + concat!("Size of: ", stringify!(kvm_guest_debug_arch)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_guest_debug_arch>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_guest_debug_arch)) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_debug_exit_arch { -} +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_debug_exit_arch {} #[test] fn bindgen_test_layout_kvm_debug_exit_arch() { - assert_eq!(::std::mem::size_of::<kvm_debug_exit_arch>() , 0usize , concat - ! ( "Size of: " , stringify ! ( kvm_debug_exit_arch ) )); - assert_eq! (::std::mem::align_of::<kvm_debug_exit_arch>() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_debug_exit_arch ) )); -} -impl Clone for kvm_debug_exit_arch { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_debug_exit_arch>(), + 0usize, + concat!("Size of: ", stringify!(kvm_debug_exit_arch)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_debug_exit_arch>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_debug_exit_arch)) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_sync_regs { -} +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_sync_regs {} #[test] fn bindgen_test_layout_kvm_sync_regs() { - assert_eq!(::std::mem::size_of::<kvm_sync_regs>() , 0usize , concat ! ( - "Size of: " , stringify ! ( kvm_sync_regs ) )); - assert_eq! (::std::mem::align_of::<kvm_sync_regs>() , 1usize , concat ! ( - "Alignment of " , stringify ! ( kvm_sync_regs ) )); -} -impl Clone for kvm_sync_regs { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_sync_regs>(), + 0usize, + concat!("Size of: ", stringify!(kvm_sync_regs)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_sync_regs>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_sync_regs)) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_arch_memory_slot { -} +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_arch_memory_slot {} #[test] fn bindgen_test_layout_kvm_arch_memory_slot() { - assert_eq!(::std::mem::size_of::<kvm_arch_memory_slot>() , 0usize , concat - ! ( "Size of: " , stringify ! ( kvm_arch_memory_slot ) )); - assert_eq! (::std::mem::align_of::<kvm_arch_memory_slot>() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_arch_memory_slot ) )); -} -impl Clone for kvm_arch_memory_slot { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_arch_memory_slot>(), + 0usize, + concat!("Size of: ", stringify!(kvm_arch_memory_slot)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_arch_memory_slot>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_arch_memory_slot)) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_user_trace_setup { pub buf_size: __u32, pub buf_nr: __u32, } #[test] fn bindgen_test_layout_kvm_user_trace_setup() { - assert_eq!(::std::mem::size_of::<kvm_user_trace_setup>() , 8usize , concat - ! ( "Size of: " , stringify ! ( kvm_user_trace_setup ) )); - assert_eq! (::std::mem::align_of::<kvm_user_trace_setup>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_user_trace_setup ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_user_trace_setup ) ) . buf_size as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_user_trace_setup ) - , "::" , stringify ! ( buf_size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_user_trace_setup ) ) . buf_nr as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_user_trace_setup ) - , "::" , stringify ! ( buf_nr ) )); -} -impl Clone for kvm_user_trace_setup { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_user_trace_setup>(), + 8usize, + concat!("Size of: ", stringify!(kvm_user_trace_setup)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_user_trace_setup>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_user_trace_setup)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_user_trace_setup>())).buf_size as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_user_trace_setup), + "::", + stringify!(buf_size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_user_trace_setup>())).buf_nr as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_user_trace_setup), + "::", + stringify!(buf_nr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_breakpoint { pub enabled: __u32, pub padding: __u32, @@ -807,31 +914,49 @@ pub struct kvm_breakpoint { } #[test] fn bindgen_test_layout_kvm_breakpoint() { - assert_eq!(::std::mem::size_of::<kvm_breakpoint>() , 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_breakpoint ) )); - assert_eq! (::std::mem::align_of::<kvm_breakpoint>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_breakpoint ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_breakpoint ) ) . enabled as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_breakpoint ) , "::" - , stringify ! ( enabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_breakpoint ) ) . padding as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_breakpoint ) , "::" - , stringify ! ( padding ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_breakpoint ) ) . address as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_breakpoint ) , "::" - , stringify ! ( address ) )); -} -impl Clone for kvm_breakpoint { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_breakpoint>(), + 16usize, + concat!("Size of: ", stringify!(kvm_breakpoint)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_breakpoint>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_breakpoint)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_breakpoint>())).enabled as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_breakpoint), + "::", + stringify!(enabled) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_breakpoint>())).padding as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_breakpoint), + "::", + stringify!(padding) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_breakpoint>())).address as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_breakpoint), + "::", + stringify!(address) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_debug_guest { pub enabled: __u32, pub pad: __u32, @@ -840,36 +965,59 @@ pub struct kvm_debug_guest { } #[test] fn bindgen_test_layout_kvm_debug_guest() { - assert_eq!(::std::mem::size_of::<kvm_debug_guest>() , 80usize , concat ! ( - "Size of: " , stringify ! ( kvm_debug_guest ) )); - assert_eq! (::std::mem::align_of::<kvm_debug_guest>() , 8usize , concat ! - ( "Alignment of " , stringify ! ( kvm_debug_guest ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_debug_guest ) ) . enabled as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_debug_guest ) , - "::" , stringify ! ( enabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_debug_guest ) ) . pad as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_debug_guest ) , - "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_debug_guest ) ) . breakpoints as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_debug_guest ) , - "::" , stringify ! ( breakpoints ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_debug_guest ) ) . singlestep as * - const _ as usize } , 72usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_debug_guest ) , - "::" , stringify ! ( singlestep ) )); -} -impl Clone for kvm_debug_guest { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_debug_guest>(), + 80usize, + concat!("Size of: ", stringify!(kvm_debug_guest)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_debug_guest>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_debug_guest)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_debug_guest>())).enabled as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_debug_guest), + "::", + stringify!(enabled) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_debug_guest>())).pad as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_debug_guest), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_debug_guest>())).breakpoints as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_debug_guest), + "::", + stringify!(breakpoints) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_debug_guest>())).singlestep as *const _ as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(kvm_debug_guest), + "::", + stringify!(singlestep) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_memory_region { pub slot: __u32, pub flags: __u32, @@ -878,36 +1026,59 @@ pub struct kvm_memory_region { } #[test] fn bindgen_test_layout_kvm_memory_region() { - assert_eq!(::std::mem::size_of::<kvm_memory_region>() , 24usize , concat ! - ( "Size of: " , stringify ! ( kvm_memory_region ) )); - assert_eq! (::std::mem::align_of::<kvm_memory_region>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_memory_region ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_memory_region ) ) . slot as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_memory_region ) , - "::" , stringify ! ( slot ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_memory_region ) ) . flags as * const - _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_memory_region ) , - "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_memory_region ) ) . guest_phys_addr - as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_memory_region ) , - "::" , stringify ! ( guest_phys_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_memory_region ) ) . memory_size as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_memory_region ) , - "::" , stringify ! ( memory_size ) )); -} -impl Clone for kvm_memory_region { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_memory_region>(), + 24usize, + concat!("Size of: ", stringify!(kvm_memory_region)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_memory_region>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_memory_region)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_memory_region>())).slot as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_memory_region), + "::", + stringify!(slot) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_memory_region>())).flags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_memory_region), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_memory_region>())).guest_phys_addr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_memory_region), + "::", + stringify!(guest_phys_addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_memory_region>())).memory_size as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_memory_region), + "::", + stringify!(memory_size) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_userspace_memory_region { pub slot: __u32, pub flags: __u32, @@ -917,196 +1088,363 @@ pub struct kvm_userspace_memory_region { } #[test] fn bindgen_test_layout_kvm_userspace_memory_region() { - assert_eq!(::std::mem::size_of::<kvm_userspace_memory_region>() , 32usize - , concat ! ( - "Size of: " , stringify ! ( kvm_userspace_memory_region ) )); - assert_eq! (::std::mem::align_of::<kvm_userspace_memory_region>() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( kvm_userspace_memory_region ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_userspace_memory_region ) ) . slot as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_userspace_memory_region ) , "::" , stringify ! ( slot ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_userspace_memory_region ) ) . flags - as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_userspace_memory_region ) , "::" , stringify ! ( flags ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_userspace_memory_region ) ) . - guest_phys_addr as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_userspace_memory_region ) , "::" , stringify ! ( - guest_phys_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_userspace_memory_region ) ) . - memory_size as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_userspace_memory_region ) , "::" , stringify ! ( - memory_size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_userspace_memory_region ) ) . - userspace_addr as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_userspace_memory_region ) , "::" , stringify ! ( - userspace_addr ) )); -} -impl Clone for kvm_userspace_memory_region { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_userspace_memory_region>(), + 32usize, + concat!("Size of: ", stringify!(kvm_userspace_memory_region)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_userspace_memory_region>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_userspace_memory_region)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_userspace_memory_region>())).slot as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_userspace_memory_region), + "::", + stringify!(slot) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_userspace_memory_region>())).flags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_userspace_memory_region), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_userspace_memory_region>())).guest_phys_addr as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_userspace_memory_region), + "::", + stringify!(guest_phys_addr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_userspace_memory_region>())).memory_size as *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_userspace_memory_region), + "::", + stringify!(memory_size) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_userspace_memory_region>())).userspace_addr as *const _ as + usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_userspace_memory_region), + "::", + stringify!(userspace_addr) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_irq_level { pub __bindgen_anon_1: kvm_irq_level__bindgen_ty_1, pub level: __u32, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_irq_level__bindgen_ty_1 { - pub irq: __BindgenUnionField<__u32>, - pub status: __BindgenUnionField<__s32>, - pub bindgen_union_field: u32, +#[derive(Copy, Clone)] +pub union kvm_irq_level__bindgen_ty_1 { + pub irq: __u32, + pub status: __s32, + _bindgen_union_align: u32, } #[test] fn bindgen_test_layout_kvm_irq_level__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_irq_level__bindgen_ty_1>() , 4usize , - concat ! ( - "Size of: " , stringify ! ( kvm_irq_level__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_level__bindgen_ty_1>() , 4usize - , concat ! ( - "Alignment of " , stringify ! ( kvm_irq_level__bindgen_ty_1 ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_level__bindgen_ty_1 ) ) . irq as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_level__bindgen_ty_1 ) , "::" , stringify ! ( irq ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_level__bindgen_ty_1 ) ) . status - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_level__bindgen_ty_1 ) , "::" , stringify ! ( status ) - )); -} -impl Clone for kvm_irq_level__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_irq_level__bindgen_ty_1>(), + 4usize, + concat!("Size of: ", stringify!(kvm_irq_level__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_level__bindgen_ty_1>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_irq_level__bindgen_ty_1)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_level__bindgen_ty_1>())).irq as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_level__bindgen_ty_1), + "::", + stringify!(irq) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_level__bindgen_ty_1>())).status as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_level__bindgen_ty_1), + "::", + stringify!(status) + ) + ); +} +impl Default for kvm_irq_level__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_irq_level() { - assert_eq!(::std::mem::size_of::<kvm_irq_level>() , 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_irq_level ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_level>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_irq_level ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_level ) ) . level as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_level ) , "::" - , stringify ! ( level ) )); -} -impl Clone for kvm_irq_level { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_irq_level>(), + 8usize, + concat!("Size of: ", stringify!(kvm_irq_level)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_level>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_irq_level)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_level>())).level as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_level), + "::", + stringify!(level) + ) + ); +} +impl Default for kvm_irq_level { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[repr(C)] -#[derive(Copy)] +#[derive(Copy, Clone)] pub struct kvm_irqchip { pub chip_id: __u32, pub pad: __u32, pub chip: kvm_irqchip__bindgen_ty_1, } #[repr(C)] -#[derive(Copy)] -pub struct kvm_irqchip__bindgen_ty_1 { - pub dummy: __BindgenUnionField<[::std::os::raw::c_char; 512usize]>, - pub bindgen_union_field: [u8; 512usize], +#[derive(Copy, Clone)] +pub union kvm_irqchip__bindgen_ty_1 { + pub dummy: [::std::os::raw::c_char; 512usize], + _bindgen_union_align: [u8 ; 512usize], } #[test] fn bindgen_test_layout_kvm_irqchip__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_irqchip__bindgen_ty_1>() , 512usize , - concat ! ( - "Size of: " , stringify ! ( kvm_irqchip__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::<kvm_irqchip__bindgen_ty_1>() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_irqchip__bindgen_ty_1 ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqchip__bindgen_ty_1 ) ) . dummy as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irqchip__bindgen_ty_1 ) , "::" , stringify ! ( dummy ) )); -} -impl Clone for kvm_irqchip__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_irqchip__bindgen_ty_1>(), + 512usize, + concat!("Size of: ", stringify!(kvm_irqchip__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irqchip__bindgen_ty_1>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_irqchip__bindgen_ty_1)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqchip__bindgen_ty_1>())).dummy as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqchip__bindgen_ty_1), + "::", + stringify!(dummy) + ) + ); } impl Default for kvm_irqchip__bindgen_ty_1 { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_irqchip() { - assert_eq!(::std::mem::size_of::<kvm_irqchip>() , 520usize , concat ! ( - "Size of: " , stringify ! ( kvm_irqchip ) )); - assert_eq! (::std::mem::align_of::<kvm_irqchip>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_irqchip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqchip ) ) . chip_id as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqchip ) , "::" , - stringify ! ( chip_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqchip ) ) . pad as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqchip ) , "::" , - stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqchip ) ) . chip as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqchip ) , "::" , - stringify ! ( chip ) )); -} -impl Clone for kvm_irqchip { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_irqchip>(), + 520usize, + concat!("Size of: ", stringify!(kvm_irqchip)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irqchip>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_irqchip)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqchip>())).chip_id as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqchip), + "::", + stringify!(chip_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqchip>())).pad as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqchip), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqchip>())).chip as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqchip), + "::", + stringify!(chip) + ) + ); } impl Default for kvm_irqchip { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_pit_config { pub flags: __u32, pub pad: [__u32; 15usize], } #[test] fn bindgen_test_layout_kvm_pit_config() { - assert_eq!(::std::mem::size_of::<kvm_pit_config>() , 64usize , concat ! ( - "Size of: " , stringify ! ( kvm_pit_config ) )); - assert_eq! (::std::mem::align_of::<kvm_pit_config>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_pit_config ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_pit_config ) ) . flags as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_pit_config ) , "::" - , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_pit_config ) ) . pad as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_pit_config ) , "::" - , stringify ! ( pad ) )); -} -impl Clone for kvm_pit_config { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_pit_config>(), + 64usize, + concat!("Size of: ", stringify!(kvm_pit_config)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_pit_config>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_pit_config)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_pit_config>())).flags as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_pit_config), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_pit_config>())).pad as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_pit_config), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_s390_skeys { + pub start_gfn: __u64, + pub count: __u64, + pub skeydata_addr: __u64, + pub flags: __u32, + pub reserved: [__u32; 9usize], +} +#[test] +fn bindgen_test_layout_kvm_s390_skeys() { + assert_eq!( + ::std::mem::size_of::<kvm_s390_skeys>(), + 64usize, + concat!("Size of: ", stringify!(kvm_s390_skeys)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_skeys>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_skeys)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_skeys>())).start_gfn as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_skeys), + "::", + stringify!(start_gfn) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_skeys>())).count as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_skeys), + "::", + stringify!(count) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_skeys>())).skeydata_addr as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_skeys), + "::", + stringify!(skeydata_addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_skeys>())).flags as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_skeys), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_skeys>())).reserved as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_skeys), + "::", + stringify!(reserved) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_run { pub request_interrupt_window: __u8, pub padding1: [__u8; 7usize], pub exit_reason: __u32, pub ready_for_interrupt_injection: __u8, pub if_flag: __u8, - pub padding2: [__u8; 2usize], + pub flags: __u16, pub cr8: __u64, pub apic_base: __u64, pub __bindgen_anon_1: kvm_run__bindgen_ty_1, @@ -1115,115 +1453,149 @@ pub struct kvm_run { pub s: kvm_run__bindgen_ty_2, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_run__bindgen_ty_1 { - pub hw: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_1>, - pub fail_entry: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_2>, - pub ex: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_3>, - pub io: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_4>, - pub debug: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_5>, - pub mmio: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_6>, - pub hypercall: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_7>, - pub tpr_access: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_8>, - pub s390_sieic: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_9>, - pub s390_reset_flags: __BindgenUnionField<__u64>, - pub s390_ucontrol: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_10>, - pub dcr: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_11>, - pub internal: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_12>, - pub osi: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_13>, - pub papr_hcall: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_14>, - pub s390_tsch: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_15>, - pub epr: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_16>, - pub system_event: __BindgenUnionField<kvm_run__bindgen_ty_1__bindgen_ty_17>, - pub padding: __BindgenUnionField<[::std::os::raw::c_char; 256usize]>, - pub bindgen_union_field: [u64; 32usize], -} -#[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Copy, Clone)] +pub union kvm_run__bindgen_ty_1 { + pub hw: kvm_run__bindgen_ty_1__bindgen_ty_1, + pub fail_entry: kvm_run__bindgen_ty_1__bindgen_ty_2, + pub ex: kvm_run__bindgen_ty_1__bindgen_ty_3, + pub io: kvm_run__bindgen_ty_1__bindgen_ty_4, + pub debug: kvm_run__bindgen_ty_1__bindgen_ty_5, + pub mmio: kvm_run__bindgen_ty_1__bindgen_ty_6, + pub hypercall: kvm_run__bindgen_ty_1__bindgen_ty_7, + pub tpr_access: kvm_run__bindgen_ty_1__bindgen_ty_8, + pub s390_sieic: kvm_run__bindgen_ty_1__bindgen_ty_9, + pub s390_reset_flags: __u64, + pub s390_ucontrol: kvm_run__bindgen_ty_1__bindgen_ty_10, + pub dcr: kvm_run__bindgen_ty_1__bindgen_ty_11, + pub internal: kvm_run__bindgen_ty_1__bindgen_ty_12, + pub osi: kvm_run__bindgen_ty_1__bindgen_ty_13, + pub papr_hcall: kvm_run__bindgen_ty_1__bindgen_ty_14, + pub s390_tsch: kvm_run__bindgen_ty_1__bindgen_ty_15, + pub epr: kvm_run__bindgen_ty_1__bindgen_ty_16, + pub system_event: kvm_run__bindgen_ty_1__bindgen_ty_17, + pub s390_stsi: kvm_run__bindgen_ty_1__bindgen_ty_18, + pub eoi: kvm_run__bindgen_ty_1__bindgen_ty_19, + pub padding: [::std::os::raw::c_char; 256usize], + _bindgen_union_align: [u64; 32usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_1 { pub hardware_exit_reason: __u64, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_1>() , - 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_1 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_1>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_1 ) ) . - hardware_exit_reason as * const _ as usize } , 0usize , concat - ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_1 ) , "::" , stringify ! ( - hardware_exit_reason ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_1 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_1>(), + 8usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_1>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_1>())) + .hardware_exit_reason as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_1), + "::", + stringify!(hardware_exit_reason) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_2 { pub hardware_entry_failure_reason: __u64, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_2() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_2>() , - 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_2 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_2>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_2 ) ) . - hardware_entry_failure_reason as * const _ as usize } , 0usize - , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_2 ) , "::" , stringify ! ( - hardware_entry_failure_reason ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_2 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_2>(), + 8usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_2)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_2>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_2) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_2>())) + .hardware_entry_failure_reason as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_2), + "::", + stringify!(hardware_entry_failure_reason) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_3 { pub exception: __u32, pub error_code: __u32, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_3() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_3>() , - 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_3 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_3>() - , 4usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_3 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_3 ) ) . - exception as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_3 ) , "::" , stringify ! ( - exception ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_3 ) ) . - error_code as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_3 ) , "::" , stringify ! ( - error_code ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_3 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_3>(), + 8usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_3)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_3>(), + 4usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_3) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_3>())).exception as + *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(exception) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_3>())).error_code as + *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_3), + "::", + stringify!(error_code) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_4 { pub direction: __u8, pub size: __u8, @@ -1233,75 +1605,121 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_4 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_4() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_4>() , - 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_4 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_4>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_4 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_4 ) ) . - direction as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_4 ) , "::" , stringify ! ( - direction ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_4 ) ) . - size as * const _ as usize } , 1usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_4 ) , "::" , stringify ! ( - size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_4 ) ) . - port as * const _ as usize } , 2usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_4 ) , "::" , stringify ! ( - port ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_4 ) ) . - count as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_4 ) , "::" , stringify ! ( - count ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_4 ) ) . - data_offset as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_4 ) , "::" , stringify ! ( - data_offset ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_4 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_4>(), + 16usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_4>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_4>())).direction as + *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(direction) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_4>())).size as *const _ as + usize + }, + 1usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_4>())).port as *const _ as + usize + }, + 2usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(port) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_4>())).count as *const _ as + usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(count) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_4>())).data_offset as + *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_4), + "::", + stringify!(data_offset) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_5 { pub arch: kvm_debug_exit_arch, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_5() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_5>() , - 0usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_5 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_5>() - , 1usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_5 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_5 ) ) . - arch as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_5 ) , "::" , stringify ! ( - arch ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_5 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_5>(), + 0usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_5)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_5>(), + 1usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_5) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_5>())).arch as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_5), + "::", + stringify!(arch) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_6 { pub phys_addr: __u64, pub data: [__u8; 8usize], @@ -1310,44 +1728,73 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_6 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_6() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_6>() , - 24usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_6 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_6>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_6 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_6 ) ) . - phys_addr as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_6 ) , "::" , stringify ! ( - phys_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_6 ) ) . - data as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_6 ) , "::" , stringify ! ( - data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_6 ) ) . - len as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_6 ) , "::" , stringify ! ( - len ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_6 ) ) . - is_write as * const _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_6 ) , "::" , stringify ! ( - is_write ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_6 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_6>(), + 24usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_6)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_6>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_6) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_6>())).phys_addr as + *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(phys_addr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_6>())).data as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_6>())).len as *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_6>())).is_write as *const _ as + usize + }, + 20usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_6), + "::", + stringify!(is_write) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_7 { pub nr: __u64, pub args: [__u64; 6usize], @@ -1357,50 +1804,84 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_7 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_7() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_7>() , - 72usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_7 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_7>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_7 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_7 ) ) . - nr as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_7 ) , "::" , stringify ! ( - nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_7 ) ) . - args as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_7 ) , "::" , stringify ! ( - args ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_7 ) ) . - ret as * const _ as usize } , 56usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_7 ) , "::" , stringify ! ( - ret ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_7 ) ) . - longmode as * const _ as usize } , 64usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_7 ) , "::" , stringify ! ( - longmode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_7 ) ) . - pad as * const _ as usize } , 68usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_7 ) , "::" , stringify ! ( - pad ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_7 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_7>(), + 72usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_7>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_7>())).nr as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(nr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_7>())).args as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(args) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_7>())).ret as *const _ as usize + }, + 56usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(ret) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_7>())).longmode as *const _ as + usize + }, + 64usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(longmode) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_7>())).pad as *const _ as usize + }, + 68usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_7), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_8 { pub rip: __u64, pub is_write: __u32, @@ -1408,38 +1889,59 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_8 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_8() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_8>() , - 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_8 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_8>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_8 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_8 ) ) . - rip as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_8 ) , "::" , stringify ! ( - rip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_8 ) ) . - is_write as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_8 ) , "::" , stringify ! ( - is_write ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_8 ) ) . - pad as * const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_8 ) , "::" , stringify ! ( - pad ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_8 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_8>(), + 16usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_8)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_8>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_8) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_8>())).rip as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(rip) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_8>())).is_write as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(is_write) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_8>())).pad as *const _ as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_8), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_9 { pub icptcode: __u8, pub ipa: __u16, @@ -1447,70 +1949,110 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_9 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_9() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_9>() , - 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_run__bindgen_ty_1__bindgen_ty_9 - ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_9>() - , 4usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_9 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_9 ) ) . - icptcode as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_9 ) , "::" , stringify ! ( - icptcode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_9 ) ) . - ipa as * const _ as usize } , 2usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_9 ) , "::" , stringify ! ( - ipa ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_9 ) ) . - ipb as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_9 ) , "::" , stringify ! ( - ipb ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_9 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_9>(), + 8usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1__bindgen_ty_9)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_9>(), + 4usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_9) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_9>())).icptcode as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(icptcode) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_9>())).ipa as *const _ as usize + }, + 2usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(ipa) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_9>())).ipb as *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_9), + "::", + stringify!(ipb) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_10 { pub trans_exc_code: __u64, pub pgm_code: __u32, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_10() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_10>() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_10 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_10>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_10 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_10 ) ) - . trans_exc_code as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_10 ) , "::" , stringify ! ( - trans_exc_code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_10 ) ) - . pgm_code as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_10 ) , "::" , stringify ! ( - pgm_code ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_10 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_10>(), + 16usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_10) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_10>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_10) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_10>())).trans_exc_code as + *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(trans_exc_code) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_10>())).pgm_code as + *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_10), + "::", + stringify!(pgm_code) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_11 { pub dcrn: __u32, pub data: __u32, @@ -1518,38 +2060,64 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_11 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_11() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_11>() , - 12usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_11 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_11>() - , 4usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_11 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_11 ) ) - . dcrn as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_11 ) , "::" , stringify ! ( - dcrn ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_11 ) ) - . data as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_11 ) , "::" , stringify ! ( - data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_11 ) ) - . is_write as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_11 ) , "::" , stringify ! ( - is_write ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_11 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_11>(), + 12usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_11) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_11>(), + 4usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_11) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_11>())).dcrn as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(dcrn) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_11>())).data as *const _ as + usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_11>())).is_write as + *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_11), + "::", + stringify!(is_write) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_12 { pub suberror: __u32, pub ndata: __u32, @@ -1557,63 +2125,101 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_12 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_12() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_12>() , - 136usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_12 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_12>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_12 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_12 ) ) - . suberror as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_12 ) , "::" , stringify ! ( - suberror ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_12 ) ) - . ndata as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_12 ) , "::" , stringify ! ( - ndata ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_12 ) ) - . data as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_12 ) , "::" , stringify ! ( - data ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_12 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_12>(), + 136usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_12) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_12>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_12) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_12>())).suberror as + *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_12), + "::", + stringify!(suberror) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_12>())).ndata as *const _ as + usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_12), + "::", + stringify!(ndata) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_12>())).data as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_12), + "::", + stringify!(data) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_13 { pub gprs: [__u64; 32usize], } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_13() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_13>() , - 256usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_13 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_13>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_13 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_13 ) ) - . gprs as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_13 ) , "::" , stringify ! ( - gprs ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_13 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_13>(), + 256usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_13) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_13>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_13) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_13>())).gprs as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_13), + "::", + stringify!(gprs) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_14 { pub nr: __u64, pub ret: __u64, @@ -1621,38 +2227,63 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_14 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_14() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_14>() , - 88usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_14 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_14>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_14 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_14 ) ) - . nr as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_14 ) , "::" , stringify ! ( - nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_14 ) ) - . ret as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_14 ) , "::" , stringify ! ( - ret ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_14 ) ) - . args as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_14 ) , "::" , stringify ! ( - args ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_14 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_14>(), + 88usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_14) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_14>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_14) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_14>())).nr as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_14), + "::", + stringify!(nr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_14>())).ret as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_14), + "::", + stringify!(ret) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_14>())).args as *const _ as + usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_14), + "::", + stringify!(args) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_15 { pub subchannel_id: __u16, pub subchannel_nr: __u16, @@ -1663,321 +2294,738 @@ pub struct kvm_run__bindgen_ty_1__bindgen_ty_15 { } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_15() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_15>() , - 20usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_15>() - , 4usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_15 ) ) - . subchannel_id as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) , "::" , stringify ! ( - subchannel_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_15 ) ) - . subchannel_nr as * const _ as usize } , 2usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) , "::" , stringify ! ( - subchannel_nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_15 ) ) - . io_int_parm as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) , "::" , stringify ! ( - io_int_parm ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_15 ) ) - . io_int_word as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) , "::" , stringify ! ( - io_int_word ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_15 ) ) - . ipb as * const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) , "::" , stringify ! ( - ipb ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_15 ) ) - . dequeued as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_15 ) , "::" , stringify ! ( - dequeued ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_15 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_15>(), + 20usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_15>(), + 4usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_15>())).subchannel_id as + *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15), + "::", + stringify!(subchannel_id) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_15>())).subchannel_nr as + *const _ as usize + }, + 2usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15), + "::", + stringify!(subchannel_nr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_15>())).io_int_parm as + *const _ as usize + }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15), + "::", + stringify!(io_int_parm) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_15>())).io_int_word as + *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15), + "::", + stringify!(io_int_word) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_15>())).ipb as *const _ as + usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15), + "::", + stringify!(ipb) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_15>())).dequeued as + *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_15), + "::", + stringify!(dequeued) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_16 { pub epr: __u32, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_16() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_16>() , - 4usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_16 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_16>() - , 4usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_16 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_16 ) ) - . epr as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_16 ) , "::" , stringify ! ( - epr ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_16 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_16>(), + 4usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_16) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_16>(), + 4usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_16) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_16>())).epr as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_16), + "::", + stringify!(epr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_run__bindgen_ty_1__bindgen_ty_17 { pub type_: __u32, pub flags: __u64, } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_17() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_17>() , - 16usize , concat ! ( - "Size of: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_17 ) )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_17>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_17 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_17 ) ) - . type_ as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_17 ) , "::" , stringify ! ( - type_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1__bindgen_ty_17 ) ) - . flags as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_run__bindgen_ty_1__bindgen_ty_17 ) , "::" , stringify ! ( - flags ) )); -} -impl Clone for kvm_run__bindgen_ty_1__bindgen_ty_17 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_17>(), + 16usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_17) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_17>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_17) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_17>())).type_ as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_17), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_17>())).flags as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_17), + "::", + stringify!(flags) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_run__bindgen_ty_1__bindgen_ty_18 { + pub addr: __u64, + pub ar: __u8, + pub reserved: __u8, + pub fc: __u8, + pub sel1: __u8, + pub sel2: __u16, +} +#[test] +fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_18() { + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_18>(), + 16usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_18>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_18>())).addr as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18), + "::", + stringify!(addr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_18>())).ar as *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18), + "::", + stringify!(ar) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_18>())).reserved as + *const _ as usize + }, + 9usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18), + "::", + stringify!(reserved) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_18>())).fc as *const _ as usize + }, + 10usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18), + "::", + stringify!(fc) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_18>())).sel1 as *const _ as + usize + }, + 11usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18), + "::", + stringify!(sel1) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_18>())).sel2 as *const _ as + usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_18), + "::", + stringify!(sel2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_run__bindgen_ty_1__bindgen_ty_19 { + pub vector: __u8, +} +#[test] +fn bindgen_test_layout_kvm_run__bindgen_ty_1__bindgen_ty_19() { + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1__bindgen_ty_19>(), + 1usize, + concat!( + "Size of: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_19) + ) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1__bindgen_ty_19>(), + 1usize, + concat!( + "Alignment of ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_19) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1__bindgen_ty_19>())).vector as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1__bindgen_ty_19), + "::", + stringify!(vector) + ) + ); } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_1>() , 256usize , - concat ! ( "Size of: " , stringify ! ( kvm_run__bindgen_ty_1 ) - )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_1>() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_run__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . hw as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( hw ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . fail_entry as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( fail_entry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . ex as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( ex ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . io as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( io ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . debug as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( debug ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . mmio as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( mmio ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . hypercall as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( hypercall ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . tpr_access as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( tpr_access ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . s390_sieic as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( s390_sieic ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . - s390_reset_flags as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( s390_reset_flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . s390_ucontrol - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( s390_ucontrol ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . dcr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( dcr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . internal as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( internal ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . osi as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( osi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . papr_hcall as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( papr_hcall ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . s390_tsch as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( s390_tsch ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . epr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( epr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . system_event - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( system_event ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_1 ) ) . padding as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_1 ) - , "::" , stringify ! ( padding ) )); -} -impl Clone for kvm_run__bindgen_ty_1 { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Copy)] -pub struct kvm_run__bindgen_ty_2 { - pub regs: __BindgenUnionField<kvm_sync_regs>, - pub padding: __BindgenUnionField<[::std::os::raw::c_char; 1024usize]>, - pub bindgen_union_field: [u8; 1024usize], + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_1>(), + 256usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_run__bindgen_ty_1)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).hw as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(hw) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).fail_entry as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(fail_entry) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).ex as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(ex) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).io as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(io) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).debug as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(debug) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).mmio as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(mmio) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).hypercall as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(hypercall) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).tpr_access as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(tpr_access) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).s390_sieic as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(s390_sieic) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).s390_reset_flags as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(s390_reset_flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).s390_ucontrol as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(s390_ucontrol) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).dcr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(dcr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).internal as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(internal) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).osi as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(osi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).papr_hcall as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(papr_hcall) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).s390_tsch as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(s390_tsch) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).epr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(epr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).system_event as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(system_event) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).s390_stsi as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(s390_stsi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).eoi as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(eoi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_1>())).padding as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_1), + "::", + stringify!(padding) + ) + ); +} +impl Default for kvm_run__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union kvm_run__bindgen_ty_2 { + pub regs: kvm_sync_regs, + pub padding: [::std::os::raw::c_char; 2048usize], + _bindgen_union_align: [u8; 2048usize], } #[test] fn bindgen_test_layout_kvm_run__bindgen_ty_2() { - assert_eq!(::std::mem::size_of::<kvm_run__bindgen_ty_2>() , 1024usize , - concat ! ( "Size of: " , stringify ! ( kvm_run__bindgen_ty_2 ) - )); - assert_eq! (::std::mem::align_of::<kvm_run__bindgen_ty_2>() , 1usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_run__bindgen_ty_2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_2 ) ) . regs as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_2 ) - , "::" , stringify ! ( regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run__bindgen_ty_2 ) ) . padding as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run__bindgen_ty_2 ) - , "::" , stringify ! ( padding ) )); -} -impl Clone for kvm_run__bindgen_ty_2 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_run__bindgen_ty_2>(), + 2048usize, + concat!("Size of: ", stringify!(kvm_run__bindgen_ty_2)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run__bindgen_ty_2>(), + 1usize, + concat!("Alignment of ", stringify!(kvm_run__bindgen_ty_2)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_2>())).regs as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_2), + "::", + stringify!(regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run__bindgen_ty_2>())).padding as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run__bindgen_ty_2), + "::", + stringify!(padding) + ) + ); } impl Default for kvm_run__bindgen_ty_2 { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_run() { - assert_eq!(::std::mem::size_of::<kvm_run>() , 1328usize , concat ! ( - "Size of: " , stringify ! ( kvm_run ) )); - assert_eq! (::std::mem::align_of::<kvm_run>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_run ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . request_interrupt_window as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( request_interrupt_window ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . padding1 as * const _ as - usize } , 1usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( padding1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . exit_reason as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( exit_reason ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . - ready_for_interrupt_injection as * const _ as usize } , - 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( ready_for_interrupt_injection ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . if_flag as * const _ as - usize } , 13usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( if_flag ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . padding2 as * const _ as - usize } , 14usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( padding2 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . cr8 as * const _ as usize } - , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( cr8 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . apic_base as * const _ as - usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( apic_base ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . kvm_valid_regs as * const _ - as usize } , 288usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( kvm_valid_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . kvm_dirty_regs as * const _ - as usize } , 296usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( kvm_dirty_regs ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_run ) ) . s as * const _ as usize } , - 304usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_run ) , "::" , - stringify ! ( s ) )); -} -impl Clone for kvm_run { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_run>(), + 2352usize, + concat!("Size of: ", stringify!(kvm_run)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_run>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_run)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).request_interrupt_window as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(request_interrupt_window) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).padding1 as *const _ as usize }, + 1usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(padding1) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).exit_reason as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(exit_reason) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_run>())).ready_for_interrupt_injection as *const _ as usize + }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(ready_for_interrupt_injection) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).if_flag as *const _ as usize }, + 13usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(if_flag) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).flags as *const _ as usize }, + 14usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).cr8 as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(cr8) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).apic_base as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(apic_base) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).kvm_valid_regs as *const _ as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(kvm_valid_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).kvm_dirty_regs as *const _ as usize }, + 296usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(kvm_dirty_regs) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_run>())).s as *const _ as usize }, + 304usize, + concat!( + "Offset of field: ", + stringify!(kvm_run), + "::", + stringify!(s) + ) + ); } impl Default for kvm_run { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_coalesced_mmio_zone { pub addr: __u64, pub size: __u32, @@ -1985,33 +3033,49 @@ pub struct kvm_coalesced_mmio_zone { } #[test] fn bindgen_test_layout_kvm_coalesced_mmio_zone() { - assert_eq!(::std::mem::size_of::<kvm_coalesced_mmio_zone>() , 16usize , - concat ! ( - "Size of: " , stringify ! ( kvm_coalesced_mmio_zone ) )); - assert_eq! (::std::mem::align_of::<kvm_coalesced_mmio_zone>() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_coalesced_mmio_zone ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio_zone ) ) . addr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio_zone - ) , "::" , stringify ! ( addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio_zone ) ) . size as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio_zone - ) , "::" , stringify ! ( size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio_zone ) ) . pad as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio_zone - ) , "::" , stringify ! ( pad ) )); -} -impl Clone for kvm_coalesced_mmio_zone { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_coalesced_mmio_zone>(), + 16usize, + concat!("Size of: ", stringify!(kvm_coalesced_mmio_zone)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_coalesced_mmio_zone>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_coalesced_mmio_zone)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio_zone>())).addr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio_zone), + "::", + stringify!(addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio_zone>())).size as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio_zone), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio_zone>())).pad as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio_zone), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_coalesced_mmio { pub phys_addr: __u64, pub len: __u32, @@ -2020,71 +3084,113 @@ pub struct kvm_coalesced_mmio { } #[test] fn bindgen_test_layout_kvm_coalesced_mmio() { - assert_eq!(::std::mem::size_of::<kvm_coalesced_mmio>() , 24usize , concat - ! ( "Size of: " , stringify ! ( kvm_coalesced_mmio ) )); - assert_eq! (::std::mem::align_of::<kvm_coalesced_mmio>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_coalesced_mmio ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio ) ) . phys_addr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio ) , - "::" , stringify ! ( phys_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio ) ) . len as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio ) , - "::" , stringify ! ( len ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio ) ) . pad as * const _ - as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio ) , - "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio ) ) . data as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio ) , - "::" , stringify ! ( data ) )); -} -impl Clone for kvm_coalesced_mmio { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_coalesced_mmio>(), + 24usize, + concat!("Size of: ", stringify!(kvm_coalesced_mmio)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_coalesced_mmio>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_coalesced_mmio)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio>())).phys_addr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio), + "::", + stringify!(phys_addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio>())).len as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio>())).pad as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio>())).data as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio), + "::", + stringify!(data) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default)] pub struct kvm_coalesced_mmio_ring { pub first: __u32, pub last: __u32, pub coalesced_mmio: __IncompleteArrayField<kvm_coalesced_mmio>, - pub __force_alignment: [u64; 0], + // Manually added to work around rust bindgen issue 684 + __force_alignment: [u64; 0], } #[test] fn bindgen_test_layout_kvm_coalesced_mmio_ring() { - assert_eq!(::std::mem::size_of::<kvm_coalesced_mmio_ring>() , 8usize , - concat ! ( - "Size of: " , stringify ! ( kvm_coalesced_mmio_ring ) )); - assert_eq! (::std::mem::align_of::<kvm_coalesced_mmio_ring>() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_coalesced_mmio_ring ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio_ring ) ) . first as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio_ring - ) , "::" , stringify ! ( first ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio_ring ) ) . last as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio_ring - ) , "::" , stringify ! ( last ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_coalesced_mmio_ring ) ) . - coalesced_mmio as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_coalesced_mmio_ring - ) , "::" , stringify ! ( coalesced_mmio ) )); -} -impl Clone for kvm_coalesced_mmio_ring { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_coalesced_mmio_ring>(), + 8usize, + concat!("Size of: ", stringify!(kvm_coalesced_mmio_ring)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_coalesced_mmio_ring>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_coalesced_mmio_ring)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio_ring>())).first as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio_ring), + "::", + stringify!(first) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_coalesced_mmio_ring>())).last as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio_ring), + "::", + stringify!(last) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_coalesced_mmio_ring>())).coalesced_mmio as *const _ as usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_coalesced_mmio_ring), + "::", + stringify!(coalesced_mmio) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_translation { pub linear_address: __u64, pub physical_address: __u64, @@ -2095,151 +3201,335 @@ pub struct kvm_translation { } #[test] fn bindgen_test_layout_kvm_translation() { - assert_eq!(::std::mem::size_of::<kvm_translation>() , 24usize , concat ! ( - "Size of: " , stringify ! ( kvm_translation ) )); - assert_eq! (::std::mem::align_of::<kvm_translation>() , 8usize , concat ! - ( "Alignment of " , stringify ! ( kvm_translation ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_translation ) ) . linear_address as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_translation ) , - "::" , stringify ! ( linear_address ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_translation ) ) . physical_address as - * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_translation ) , - "::" , stringify ! ( physical_address ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_translation ) ) . valid as * const _ - as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_translation ) , - "::" , stringify ! ( valid ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_translation ) ) . writeable as * - const _ as usize } , 17usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_translation ) , - "::" , stringify ! ( writeable ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_translation ) ) . usermode as * const - _ as usize } , 18usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_translation ) , - "::" , stringify ! ( usermode ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_translation ) ) . pad as * const _ as - usize } , 19usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_translation ) , - "::" , stringify ! ( pad ) )); -} -impl Clone for kvm_translation { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_translation>(), + 24usize, + concat!("Size of: ", stringify!(kvm_translation)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_translation>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_translation)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_translation>())).linear_address as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_translation), + "::", + stringify!(linear_address) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_translation>())).physical_address as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_translation), + "::", + stringify!(physical_address) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_translation>())).valid as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_translation), + "::", + stringify!(valid) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_translation>())).writeable as *const _ as usize }, + 17usize, + concat!( + "Offset of field: ", + stringify!(kvm_translation), + "::", + stringify!(writeable) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_translation>())).usermode as *const _ as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(kvm_translation), + "::", + stringify!(usermode) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_translation>())).pad as *const _ as usize }, + 19usize, + concat!( + "Offset of field: ", + stringify!(kvm_translation), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_s390_mem_op { + pub gaddr: __u64, + pub flags: __u64, + pub size: __u32, + pub op: __u32, + pub buf: __u64, + pub ar: __u8, + pub reserved: [__u8; 31usize], +} +#[test] +fn bindgen_test_layout_kvm_s390_mem_op() { + assert_eq!( + ::std::mem::size_of::<kvm_s390_mem_op>(), + 64usize, + concat!("Size of: ", stringify!(kvm_s390_mem_op)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_mem_op>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_mem_op)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).gaddr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(gaddr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).flags as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).size as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).op as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(op) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).buf as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(buf) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).ar as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(ar) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mem_op>())).reserved as *const _ as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mem_op), + "::", + stringify!(reserved) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_interrupt { pub irq: __u32, } #[test] fn bindgen_test_layout_kvm_interrupt() { - assert_eq!(::std::mem::size_of::<kvm_interrupt>() , 4usize , concat ! ( - "Size of: " , stringify ! ( kvm_interrupt ) )); - assert_eq! (::std::mem::align_of::<kvm_interrupt>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_interrupt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_interrupt ) ) . irq as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_interrupt ) , "::" - , stringify ! ( irq ) )); -} -impl Clone for kvm_interrupt { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_interrupt>(), + 4usize, + concat!("Size of: ", stringify!(kvm_interrupt)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_interrupt>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_interrupt)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_interrupt>())).irq as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_interrupt), + "::", + stringify!(irq) + ) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Copy, Clone)] pub struct kvm_dirty_log { pub slot: __u32, pub padding1: __u32, pub __bindgen_anon_1: kvm_dirty_log__bindgen_ty_1, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_dirty_log__bindgen_ty_1 { - pub dirty_bitmap: __BindgenUnionField<*mut ::std::os::raw::c_void>, - pub padding2: __BindgenUnionField<__u64>, - pub bindgen_union_field: u64, +#[derive(Copy, Clone)] +pub union kvm_dirty_log__bindgen_ty_1 { + pub dirty_bitmap: *mut::std::os::raw::c_void, + pub padding2: __u64, + _bindgen_union_align: u64, } #[test] fn bindgen_test_layout_kvm_dirty_log__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_dirty_log__bindgen_ty_1>() , 8usize , - concat ! ( - "Size of: " , stringify ! ( kvm_dirty_log__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::<kvm_dirty_log__bindgen_ty_1>() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( kvm_dirty_log__bindgen_ty_1 ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_dirty_log__bindgen_ty_1 ) ) . - dirty_bitmap as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_dirty_log__bindgen_ty_1 ) , "::" , stringify ! ( - dirty_bitmap ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_dirty_log__bindgen_ty_1 ) ) . - padding2 as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_dirty_log__bindgen_ty_1 ) , "::" , stringify ! ( padding2 - ) )); -} -impl Clone for kvm_dirty_log__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_dirty_log__bindgen_ty_1>(), + 8usize, + concat!("Size of: ", stringify!(kvm_dirty_log__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_dirty_log__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_dirty_log__bindgen_ty_1)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_dirty_log__bindgen_ty_1>())).dirty_bitmap as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_dirty_log__bindgen_ty_1), + "::", + stringify!(dirty_bitmap) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_dirty_log__bindgen_ty_1>())).padding2 as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_dirty_log__bindgen_ty_1), + "::", + stringify!(padding2) + ) + ); +} +impl Default for kvm_dirty_log__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_dirty_log() { - assert_eq!(::std::mem::size_of::<kvm_dirty_log>() , 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_dirty_log ) )); - assert_eq! (::std::mem::align_of::<kvm_dirty_log>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_dirty_log ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_dirty_log ) ) . slot as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_dirty_log ) , "::" - , stringify ! ( slot ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_dirty_log ) ) . padding1 as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_dirty_log ) , "::" - , stringify ! ( padding1 ) )); -} -impl Clone for kvm_dirty_log { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_dirty_log>(), + 16usize, + concat!("Size of: ", stringify!(kvm_dirty_log)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_dirty_log>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_dirty_log)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_dirty_log>())).slot as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_dirty_log), + "::", + stringify!(slot) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_dirty_log>())).padding1 as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_dirty_log), + "::", + stringify!(padding1) + ) + ); +} +impl Default for kvm_dirty_log { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default)] pub struct kvm_signal_mask { pub len: __u32, pub sigset: __IncompleteArrayField<__u8>, } #[test] fn bindgen_test_layout_kvm_signal_mask() { - assert_eq!(::std::mem::size_of::<kvm_signal_mask>() , 4usize , concat ! ( - "Size of: " , stringify ! ( kvm_signal_mask ) )); - assert_eq! (::std::mem::align_of::<kvm_signal_mask>() , 4usize , concat ! - ( "Alignment of " , stringify ! ( kvm_signal_mask ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_signal_mask ) ) . len as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_signal_mask ) , - "::" , stringify ! ( len ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_signal_mask ) ) . sigset as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_signal_mask ) , - "::" , stringify ! ( sigset ) )); -} -impl Clone for kvm_signal_mask { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_signal_mask>(), + 4usize, + concat!("Size of: ", stringify!(kvm_signal_mask)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_signal_mask>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_signal_mask)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_signal_mask>())).len as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_signal_mask), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_signal_mask>())).sigset as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_signal_mask), + "::", + stringify!(sigset) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_tpr_access_ctl { pub enabled: __u32, pub flags: __u32, @@ -2247,97 +3537,144 @@ pub struct kvm_tpr_access_ctl { } #[test] fn bindgen_test_layout_kvm_tpr_access_ctl() { - assert_eq!(::std::mem::size_of::<kvm_tpr_access_ctl>() , 40usize , concat - ! ( "Size of: " , stringify ! ( kvm_tpr_access_ctl ) )); - assert_eq! (::std::mem::align_of::<kvm_tpr_access_ctl>() , 4usize , concat - ! ( "Alignment of " , stringify ! ( kvm_tpr_access_ctl ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_tpr_access_ctl ) ) . enabled as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_tpr_access_ctl ) , - "::" , stringify ! ( enabled ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_tpr_access_ctl ) ) . flags as * const - _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_tpr_access_ctl ) , - "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_tpr_access_ctl ) ) . reserved as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_tpr_access_ctl ) , - "::" , stringify ! ( reserved ) )); -} -impl Clone for kvm_tpr_access_ctl { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_tpr_access_ctl>(), + 40usize, + concat!("Size of: ", stringify!(kvm_tpr_access_ctl)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_tpr_access_ctl>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_tpr_access_ctl)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_tpr_access_ctl>())).enabled as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_tpr_access_ctl), + "::", + stringify!(enabled) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_tpr_access_ctl>())).flags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_tpr_access_ctl), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_tpr_access_ctl>())).reserved as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_tpr_access_ctl), + "::", + stringify!(reserved) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_vapic_addr { pub vapic_addr: __u64, } #[test] fn bindgen_test_layout_kvm_vapic_addr() { - assert_eq!(::std::mem::size_of::<kvm_vapic_addr>() , 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_vapic_addr ) )); - assert_eq! (::std::mem::align_of::<kvm_vapic_addr>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_vapic_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_vapic_addr ) ) . vapic_addr as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_vapic_addr ) , "::" - , stringify ! ( vapic_addr ) )); -} -impl Clone for kvm_vapic_addr { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_vapic_addr>(), + 8usize, + concat!("Size of: ", stringify!(kvm_vapic_addr)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_vapic_addr>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_vapic_addr)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_vapic_addr>())).vapic_addr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_vapic_addr), + "::", + stringify!(vapic_addr) + ) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_mp_state { pub mp_state: __u32, } #[test] fn bindgen_test_layout_kvm_mp_state() { - assert_eq!(::std::mem::size_of::<kvm_mp_state>() , 4usize , concat ! ( - "Size of: " , stringify ! ( kvm_mp_state ) )); - assert_eq! (::std::mem::align_of::<kvm_mp_state>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_mp_state ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_mp_state ) ) . mp_state as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_mp_state ) , "::" , - stringify ! ( mp_state ) )); -} -impl Clone for kvm_mp_state { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_mp_state>(), + 4usize, + concat!("Size of: ", stringify!(kvm_mp_state)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_mp_state>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_mp_state)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_mp_state>())).mp_state as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_mp_state), + "::", + stringify!(mp_state) + ) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_psw { pub mask: __u64, pub addr: __u64, } #[test] fn bindgen_test_layout_kvm_s390_psw() { - assert_eq!(::std::mem::size_of::<kvm_s390_psw>() , 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_s390_psw ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_psw>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_s390_psw ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_psw ) ) . mask as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_psw ) , "::" , - stringify ! ( mask ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_psw ) ) . addr as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_psw ) , "::" , - stringify ! ( addr ) )); -} -impl Clone for kvm_s390_psw { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_psw>(), + 16usize, + concat!("Size of: ", stringify!(kvm_s390_psw)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_psw>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_psw)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_psw>())).mask as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_psw), + "::", + stringify!(mask) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_psw>())).addr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_psw), + "::", + stringify!(addr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_interrupt { pub type_: __u32, pub parm: __u32, @@ -2345,31 +3682,49 @@ pub struct kvm_s390_interrupt { } #[test] fn bindgen_test_layout_kvm_s390_interrupt() { - assert_eq!(::std::mem::size_of::<kvm_s390_interrupt>() , 16usize , concat - ! ( "Size of: " , stringify ! ( kvm_s390_interrupt ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_interrupt>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_s390_interrupt ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_interrupt ) ) . type_ as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_interrupt ) , - "::" , stringify ! ( type_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_interrupt ) ) . parm as * const - _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_interrupt ) , - "::" , stringify ! ( parm ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_interrupt ) ) . parm64 as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_interrupt ) , - "::" , stringify ! ( parm64 ) )); -} -impl Clone for kvm_s390_interrupt { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_interrupt>(), + 16usize, + concat!("Size of: ", stringify!(kvm_s390_interrupt)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_interrupt>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_interrupt)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_interrupt>())).type_ as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_interrupt), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_interrupt>())).parm as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_interrupt), + "::", + stringify!(parm) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_interrupt>())).parm64 as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_interrupt), + "::", + stringify!(parm64) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_io_info { pub subchannel_id: __u16, pub subchannel_nr: __u16, @@ -2378,36 +3733,59 @@ pub struct kvm_s390_io_info { } #[test] fn bindgen_test_layout_kvm_s390_io_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_io_info>() , 12usize , concat ! - ( "Size of: " , stringify ! ( kvm_s390_io_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_io_info>() , 4usize , concat ! - ( "Alignment of " , stringify ! ( kvm_s390_io_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_io_info ) ) . subchannel_id as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_io_info ) , - "::" , stringify ! ( subchannel_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_io_info ) ) . subchannel_nr as * - const _ as usize } , 2usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_io_info ) , - "::" , stringify ! ( subchannel_nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_io_info ) ) . io_int_parm as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_io_info ) , - "::" , stringify ! ( io_int_parm ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_io_info ) ) . io_int_word as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_io_info ) , - "::" , stringify ! ( io_int_word ) )); -} -impl Clone for kvm_s390_io_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_io_info>(), + 12usize, + concat!("Size of: ", stringify!(kvm_s390_io_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_io_info>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_s390_io_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_io_info>())).subchannel_id as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_io_info), + "::", + stringify!(subchannel_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_io_info>())).subchannel_nr as *const _ as usize }, + 2usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_io_info), + "::", + stringify!(subchannel_nr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_io_info>())).io_int_parm as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_io_info), + "::", + stringify!(io_int_parm) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_io_info>())).io_int_word as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_io_info), + "::", + stringify!(io_int_word) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_ext_info { pub ext_params: __u32, pub pad: __u32, @@ -2415,31 +3793,49 @@ pub struct kvm_s390_ext_info { } #[test] fn bindgen_test_layout_kvm_s390_ext_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_ext_info>() , 16usize , concat ! - ( "Size of: " , stringify ! ( kvm_s390_ext_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_ext_info>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_s390_ext_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_ext_info ) ) . ext_params as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_ext_info ) , - "::" , stringify ! ( ext_params ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_ext_info ) ) . pad as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_ext_info ) , - "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_ext_info ) ) . ext_params2 as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_ext_info ) , - "::" , stringify ! ( ext_params2 ) )); -} -impl Clone for kvm_s390_ext_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_ext_info>(), + 16usize, + concat!("Size of: ", stringify!(kvm_s390_ext_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_ext_info>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_ext_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_ext_info>())).ext_params as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_ext_info), + "::", + stringify!(ext_params) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_ext_info>())).pad as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_ext_info), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_ext_info>())).ext_params2 as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_ext_info), + "::", + stringify!(ext_params2) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_pgm_info { pub trans_exc_code: __u64, pub mon_code: __u64, @@ -2456,160 +3852,251 @@ pub struct kvm_s390_pgm_info { } #[test] fn bindgen_test_layout_kvm_s390_pgm_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_pgm_info>() , 40usize , concat ! - ( "Size of: " , stringify ! ( kvm_s390_pgm_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_pgm_info>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_s390_pgm_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . trans_exc_code as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( trans_exc_code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . mon_code as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( mon_code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . per_address as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( per_address ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . data_exc_code as - * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( data_exc_code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . code as * const _ - as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . mon_class_nr as * - const _ as usize } , 30usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( mon_class_nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . per_code as * - const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( per_code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . per_atmid as * - const _ as usize } , 33usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( per_atmid ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . exc_access_id as - * const _ as usize } , 34usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( exc_access_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . per_access_id as - * const _ as usize } , 35usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( per_access_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . op_access_id as * - const _ as usize } , 36usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( op_access_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_pgm_info ) ) . pad as * const _ - as usize } , 37usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_pgm_info ) , - "::" , stringify ! ( pad ) )); -} -impl Clone for kvm_s390_pgm_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_pgm_info>(), + 40usize, + concat!("Size of: ", stringify!(kvm_s390_pgm_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_pgm_info>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_pgm_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).trans_exc_code as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(trans_exc_code) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).mon_code as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(mon_code) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).per_address as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(per_address) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).data_exc_code as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(data_exc_code) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).code as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(code) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).mon_class_nr as *const _ as usize }, + 30usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(mon_class_nr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).per_code as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(per_code) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).per_atmid as *const _ as usize }, + 33usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(per_atmid) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).exc_access_id as *const _ as usize }, + 34usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(exc_access_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).per_access_id as *const _ as usize }, + 35usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(per_access_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).op_access_id as *const _ as usize }, + 36usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(op_access_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_pgm_info>())).pad as *const _ as usize }, + 37usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_pgm_info), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_prefix_info { pub address: __u32, } #[test] fn bindgen_test_layout_kvm_s390_prefix_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_prefix_info>() , 4usize , concat - ! ( "Size of: " , stringify ! ( kvm_s390_prefix_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_prefix_info>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_s390_prefix_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_prefix_info ) ) . address as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_prefix_info ) - , "::" , stringify ! ( address ) )); -} -impl Clone for kvm_s390_prefix_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_prefix_info>(), + 4usize, + concat!("Size of: ", stringify!(kvm_s390_prefix_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_prefix_info>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_s390_prefix_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_prefix_info>())).address as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_prefix_info), + "::", + stringify!(address) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_extcall_info { pub code: __u16, } #[test] fn bindgen_test_layout_kvm_s390_extcall_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_extcall_info>() , 2usize , - concat ! ( "Size of: " , stringify ! ( kvm_s390_extcall_info ) - )); - assert_eq! (::std::mem::align_of::<kvm_s390_extcall_info>() , 2usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_s390_extcall_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_extcall_info ) ) . code as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_extcall_info ) - , "::" , stringify ! ( code ) )); -} -impl Clone for kvm_s390_extcall_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_extcall_info>(), + 2usize, + concat!("Size of: ", stringify!(kvm_s390_extcall_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_extcall_info>(), + 2usize, + concat!("Alignment of ", stringify!(kvm_s390_extcall_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_extcall_info>())).code as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_extcall_info), + "::", + stringify!(code) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_emerg_info { pub code: __u16, } #[test] fn bindgen_test_layout_kvm_s390_emerg_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_emerg_info>() , 2usize , concat - ! ( "Size of: " , stringify ! ( kvm_s390_emerg_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_emerg_info>() , 2usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_s390_emerg_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_emerg_info ) ) . code as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_emerg_info ) , - "::" , stringify ! ( code ) )); -} -impl Clone for kvm_s390_emerg_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_emerg_info>(), + 2usize, + concat!("Size of: ", stringify!(kvm_s390_emerg_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_emerg_info>(), + 2usize, + concat!("Alignment of ", stringify!(kvm_s390_emerg_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_emerg_info>())).code as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_emerg_info), + "::", + stringify!(code) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_stop_info { pub flags: __u32, } #[test] fn bindgen_test_layout_kvm_s390_stop_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_stop_info>() , 4usize , concat ! - ( "Size of: " , stringify ! ( kvm_s390_stop_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_stop_info>() , 4usize , concat - ! ( "Alignment of " , stringify ! ( kvm_s390_stop_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_stop_info ) ) . flags as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_stop_info ) , - "::" , stringify ! ( flags ) )); -} -impl Clone for kvm_s390_stop_info { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_s390_stop_info>(), + 4usize, + concat!("Size of: ", stringify!(kvm_s390_stop_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_stop_info>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_s390_stop_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_stop_info>())).flags as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_stop_info), + "::", + stringify!(flags) + ) + ); } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_mchk_info { pub cr14: __u64, pub mcic: __u64, @@ -2620,149 +4107,309 @@ pub struct kvm_s390_mchk_info { } #[test] fn bindgen_test_layout_kvm_s390_mchk_info() { - assert_eq!(::std::mem::size_of::<kvm_s390_mchk_info>() , 48usize , concat - ! ( "Size of: " , stringify ! ( kvm_s390_mchk_info ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_mchk_info>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_s390_mchk_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_mchk_info ) ) . cr14 as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_mchk_info ) , - "::" , stringify ! ( cr14 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_mchk_info ) ) . mcic as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_mchk_info ) , - "::" , stringify ! ( mcic ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_mchk_info ) ) . - failing_storage_address as * const _ as usize } , 16usize , - concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_mchk_info ) , - "::" , stringify ! ( failing_storage_address ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_mchk_info ) ) . ext_damage_code - as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_mchk_info ) , - "::" , stringify ! ( ext_damage_code ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_mchk_info ) ) . pad as * const _ - as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_mchk_info ) , - "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_mchk_info ) ) . fixed_logout as - * const _ as usize } , 32usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_mchk_info ) , - "::" , stringify ! ( fixed_logout ) )); -} -impl Clone for kvm_s390_mchk_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_mchk_info>(), + 48usize, + concat!("Size of: ", stringify!(kvm_s390_mchk_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_mchk_info>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_mchk_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mchk_info>())).cr14 as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mchk_info), + "::", + stringify!(cr14) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mchk_info>())).mcic as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mchk_info), + "::", + stringify!(mcic) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_s390_mchk_info>())).failing_storage_address as *const _ as + usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mchk_info), + "::", + stringify!(failing_storage_address) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mchk_info>())).ext_damage_code as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mchk_info), + "::", + stringify!(ext_damage_code) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mchk_info>())).pad as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mchk_info), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_mchk_info>())).fixed_logout as *const _ as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_mchk_info), + "::", + stringify!(fixed_logout) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_s390_irq { pub type_: __u64, pub u: kvm_s390_irq__bindgen_ty_1, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_s390_irq__bindgen_ty_1 { - pub io: __BindgenUnionField<kvm_s390_io_info>, - pub ext: __BindgenUnionField<kvm_s390_ext_info>, - pub pgm: __BindgenUnionField<kvm_s390_pgm_info>, - pub emerg: __BindgenUnionField<kvm_s390_emerg_info>, - pub extcall: __BindgenUnionField<kvm_s390_extcall_info>, - pub prefix: __BindgenUnionField<kvm_s390_prefix_info>, - pub stop: __BindgenUnionField<kvm_s390_stop_info>, - pub mchk: __BindgenUnionField<kvm_s390_mchk_info>, - pub reserved: __BindgenUnionField<[::std::os::raw::c_char; 64usize]>, - pub bindgen_union_field: [u64; 8usize], +#[derive(Copy, Clone)] +pub union kvm_s390_irq__bindgen_ty_1 { + pub io: kvm_s390_io_info, + pub ext: kvm_s390_ext_info, + pub pgm: kvm_s390_pgm_info, + pub emerg: kvm_s390_emerg_info, + pub extcall: kvm_s390_extcall_info, + pub prefix: kvm_s390_prefix_info, + pub stop: kvm_s390_stop_info, + pub mchk: kvm_s390_mchk_info, + pub reserved: [::std::os::raw::c_char; 64usize], + _bindgen_union_align: [u64; 8usize], } #[test] fn bindgen_test_layout_kvm_s390_irq__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_s390_irq__bindgen_ty_1>() , 64usize , - concat ! ( - "Size of: " , stringify ! ( kvm_s390_irq__bindgen_ty_1 ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_irq__bindgen_ty_1>() , 8usize - , concat ! ( - "Alignment of " , stringify ! ( kvm_s390_irq__bindgen_ty_1 ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . io as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( io ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . ext as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( ext ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . pgm as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( pgm ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . emerg as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( emerg ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . extcall - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( extcall ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . prefix - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( prefix ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . stop as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( stop ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . mchk as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( mchk ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq__bindgen_ty_1 ) ) . reserved - as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_s390_irq__bindgen_ty_1 ) , "::" , stringify ! ( reserved ) - )); -} -impl Clone for kvm_s390_irq__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_s390_irq__bindgen_ty_1>(), + 64usize, + concat!("Size of: ", stringify!(kvm_s390_irq__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_irq__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_irq__bindgen_ty_1)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).io as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(io) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).ext as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(ext) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).pgm as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(pgm) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).emerg as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(emerg) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).extcall as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(extcall) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).prefix as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(prefix) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).stop as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(stop) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).mchk as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(mchk) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq__bindgen_ty_1>())).reserved as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq__bindgen_ty_1), + "::", + stringify!(reserved) + ) + ); +} +impl Default for kvm_s390_irq__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_s390_irq() { - assert_eq!(::std::mem::size_of::<kvm_s390_irq>() , 72usize , concat ! ( - "Size of: " , stringify ! ( kvm_s390_irq ) )); - assert_eq! (::std::mem::align_of::<kvm_s390_irq>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_s390_irq ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq ) ) . type_ as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_irq ) , "::" , - stringify ! ( type_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_irq ) ) . u as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_irq ) , "::" , - stringify ! ( u ) )); -} -impl Clone for kvm_s390_irq { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_irq>(), + 72usize, + concat!("Size of: ", stringify!(kvm_s390_irq)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_irq>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_irq)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq>())).type_ as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq>())).u as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq), + "::", + stringify!(u) + ) + ); +} +impl Default for kvm_s390_irq { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct kvm_s390_irq_state { + pub buf: __u64, + pub flags: __u32, + pub len: __u32, + pub reserved: [__u32; 4usize], +} +#[test] +fn bindgen_test_layout_kvm_s390_irq_state() { + assert_eq!( + ::std::mem::size_of::<kvm_s390_irq_state>(), + 32usize, + concat!("Size of: ", stringify!(kvm_s390_irq_state)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_irq_state>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_irq_state)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq_state>())).buf as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq_state), + "::", + stringify!(buf) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq_state>())).flags as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq_state), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq_state>())).len as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq_state), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_irq_state>())).reserved as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_irq_state), + "::", + stringify!(reserved) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_guest_debug { pub control: __u32, pub pad: __u32, @@ -2770,28 +4417,46 @@ pub struct kvm_guest_debug { } #[test] fn bindgen_test_layout_kvm_guest_debug() { - assert_eq!(::std::mem::size_of::<kvm_guest_debug>() , 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_guest_debug ) )); - assert_eq! (::std::mem::align_of::<kvm_guest_debug>() , 4usize , concat ! - ( "Alignment of " , stringify ! ( kvm_guest_debug ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_guest_debug ) ) . control as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_guest_debug ) , - "::" , stringify ! ( control ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_guest_debug ) ) . pad as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_guest_debug ) , - "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_guest_debug ) ) . arch as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_guest_debug ) , - "::" , stringify ! ( arch ) )); -} -impl Clone for kvm_guest_debug { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_guest_debug>(), + 8usize, + concat!("Size of: ", stringify!(kvm_guest_debug)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_guest_debug>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_guest_debug)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_guest_debug>())).control as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_guest_debug), + "::", + stringify!(control) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_guest_debug>())).pad as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_guest_debug), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_guest_debug>())).arch as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_guest_debug), + "::", + stringify!(arch) + ) + ); } pub const kvm_ioeventfd_flag_nr_datamatch: _bindgen_ty_1 = 0; pub const kvm_ioeventfd_flag_nr_pio: _bindgen_ty_1 = 1; @@ -2801,6 +4466,7 @@ pub const kvm_ioeventfd_flag_nr_fast_mmio: _bindgen_ty_1 = 4; pub const kvm_ioeventfd_flag_nr_max: _bindgen_ty_1 = 5; pub type _bindgen_ty_1 = ::std::os::raw::c_uint; #[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_ioeventfd { pub datamatch: __u64, pub addr: __u64, @@ -2811,45 +4477,84 @@ pub struct kvm_ioeventfd { } #[test] fn bindgen_test_layout_kvm_ioeventfd() { - assert_eq!(::std::mem::size_of::<kvm_ioeventfd>() , 64usize , concat ! ( - "Size of: " , stringify ! ( kvm_ioeventfd ) )); - assert_eq! (::std::mem::align_of::<kvm_ioeventfd>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_ioeventfd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ioeventfd ) ) . datamatch as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ioeventfd ) , "::" - , stringify ! ( datamatch ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ioeventfd ) ) . addr as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ioeventfd ) , "::" - , stringify ! ( addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ioeventfd ) ) . len as * const _ as - usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ioeventfd ) , "::" - , stringify ! ( len ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ioeventfd ) ) . fd as * const _ as - usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ioeventfd ) , "::" - , stringify ! ( fd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ioeventfd ) ) . flags as * const _ as - usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ioeventfd ) , "::" - , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ioeventfd ) ) . pad as * const _ as - usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ioeventfd ) , "::" - , stringify ! ( pad ) )); + assert_eq!( + ::std::mem::size_of::<kvm_ioeventfd>(), + 64usize, + concat!("Size of: ", stringify!(kvm_ioeventfd)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_ioeventfd>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_ioeventfd)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ioeventfd>())).datamatch as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_ioeventfd), + "::", + stringify!(datamatch) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ioeventfd>())).addr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_ioeventfd), + "::", + stringify!(addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ioeventfd>())).len as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_ioeventfd), + "::", + stringify!(len) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ioeventfd>())).fd as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(kvm_ioeventfd), + "::", + stringify!(fd) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ioeventfd>())).flags as *const _ as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_ioeventfd), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ioeventfd>())).pad as *const _ as usize }, + 28usize, + concat!( + "Offset of field: ", + stringify!(kvm_ioeventfd), + "::", + stringify!(pad) + ) + ); } impl Default for kvm_ioeventfd { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_enable_cap { pub cap: __u32, pub flags: __u32, @@ -2858,35 +4563,64 @@ pub struct kvm_enable_cap { } #[test] fn bindgen_test_layout_kvm_enable_cap() { - assert_eq!(::std::mem::size_of::<kvm_enable_cap>() , 104usize , concat ! ( - "Size of: " , stringify ! ( kvm_enable_cap ) )); - assert_eq! (::std::mem::align_of::<kvm_enable_cap>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_enable_cap ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_enable_cap ) ) . cap as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_enable_cap ) , "::" - , stringify ! ( cap ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_enable_cap ) ) . flags as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_enable_cap ) , "::" - , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_enable_cap ) ) . args as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_enable_cap ) , "::" - , stringify ! ( args ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_enable_cap ) ) . pad as * const _ as - usize } , 40usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_enable_cap ) , "::" - , stringify ! ( pad ) )); + assert_eq!( + ::std::mem::size_of::<kvm_enable_cap>(), + 104usize, + concat!("Size of: ", stringify!(kvm_enable_cap)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_enable_cap>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_enable_cap)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_enable_cap>())).cap as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_enable_cap), + "::", + stringify!(cap) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_enable_cap>())).flags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_enable_cap), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_enable_cap>())).args as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_enable_cap), + "::", + stringify!(args) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_enable_cap>())).pad as *const _ as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(kvm_enable_cap), + "::", + stringify!(pad) + ) + ); } impl Default for kvm_enable_cap { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_ppc_pvinfo { pub flags: __u32, pub hcall: [__u32; 4usize], @@ -2894,59 +4628,93 @@ pub struct kvm_ppc_pvinfo { } #[test] fn bindgen_test_layout_kvm_ppc_pvinfo() { - assert_eq!(::std::mem::size_of::<kvm_ppc_pvinfo>() , 128usize , concat ! ( - "Size of: " , stringify ! ( kvm_ppc_pvinfo ) )); - assert_eq! (::std::mem::align_of::<kvm_ppc_pvinfo>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_ppc_pvinfo ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_pvinfo ) ) . flags as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_pvinfo ) , "::" - , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_pvinfo ) ) . hcall as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_pvinfo ) , "::" - , stringify ! ( hcall ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_pvinfo ) ) . pad as * const _ as - usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_pvinfo ) , "::" - , stringify ! ( pad ) )); + assert_eq!( + ::std::mem::size_of::<kvm_ppc_pvinfo>(), + 128usize, + concat!("Size of: ", stringify!(kvm_ppc_pvinfo)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_ppc_pvinfo>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_ppc_pvinfo)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_pvinfo>())).flags as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_pvinfo), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_pvinfo>())).hcall as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_pvinfo), + "::", + stringify!(hcall) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_pvinfo>())).pad as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_pvinfo), + "::", + stringify!(pad) + ) + ); } impl Default for kvm_ppc_pvinfo { - fn default() -> Self { unsafe { ::std::mem::zeroed() } } + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_ppc_one_page_size { pub page_shift: __u32, pub pte_enc: __u32, } #[test] fn bindgen_test_layout_kvm_ppc_one_page_size() { - assert_eq!(::std::mem::size_of::<kvm_ppc_one_page_size>() , 8usize , - concat ! ( "Size of: " , stringify ! ( kvm_ppc_one_page_size ) - )); - assert_eq! (::std::mem::align_of::<kvm_ppc_one_page_size>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_ppc_one_page_size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_one_page_size ) ) . page_shift as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_one_page_size ) - , "::" , stringify ! ( page_shift ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_one_page_size ) ) . pte_enc as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_one_page_size ) - , "::" , stringify ! ( pte_enc ) )); -} -impl Clone for kvm_ppc_one_page_size { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_ppc_one_page_size>(), + 8usize, + concat!("Size of: ", stringify!(kvm_ppc_one_page_size)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_ppc_one_page_size>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_ppc_one_page_size)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_one_page_size>())).page_shift as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_one_page_size), + "::", + stringify!(page_shift) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_one_page_size>())).pte_enc as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_one_page_size), + "::", + stringify!(pte_enc) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_ppc_one_seg_page_size { pub page_shift: __u32, pub slb_enc: __u32, @@ -2954,36 +4722,51 @@ pub struct kvm_ppc_one_seg_page_size { } #[test] fn bindgen_test_layout_kvm_ppc_one_seg_page_size() { - assert_eq!(::std::mem::size_of::<kvm_ppc_one_seg_page_size>() , 72usize , - concat ! ( - "Size of: " , stringify ! ( kvm_ppc_one_seg_page_size ) )); - assert_eq! (::std::mem::align_of::<kvm_ppc_one_seg_page_size>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_ppc_one_seg_page_size ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_one_seg_page_size ) ) . - page_shift as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_ppc_one_seg_page_size ) , "::" , stringify ! ( page_shift - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_one_seg_page_size ) ) . slb_enc - as * const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_ppc_one_seg_page_size ) , "::" , stringify ! ( slb_enc ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_one_seg_page_size ) ) . enc as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_ppc_one_seg_page_size ) , "::" , stringify ! ( enc ) )); -} -impl Clone for kvm_ppc_one_seg_page_size { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_ppc_one_seg_page_size>(), + 72usize, + concat!("Size of: ", stringify!(kvm_ppc_one_seg_page_size)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_ppc_one_seg_page_size>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_ppc_one_seg_page_size)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_ppc_one_seg_page_size>())).page_shift as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_one_seg_page_size), + "::", + stringify!(page_shift) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_one_seg_page_size>())).slb_enc as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_one_seg_page_size), + "::", + stringify!(slb_enc) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_one_seg_page_size>())).enc as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_one_seg_page_size), + "::", + stringify!(enc) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_ppc_smmu_info { pub flags: __u64, pub slb_size: __u32, @@ -2992,64 +4775,98 @@ pub struct kvm_ppc_smmu_info { } #[test] fn bindgen_test_layout_kvm_ppc_smmu_info() { - assert_eq!(::std::mem::size_of::<kvm_ppc_smmu_info>() , 592usize , concat - ! ( "Size of: " , stringify ! ( kvm_ppc_smmu_info ) )); - assert_eq! (::std::mem::align_of::<kvm_ppc_smmu_info>() , 8usize , concat - ! ( "Alignment of " , stringify ! ( kvm_ppc_smmu_info ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_smmu_info ) ) . flags as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_smmu_info ) , - "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_smmu_info ) ) . slb_size as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_smmu_info ) , - "::" , stringify ! ( slb_size ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_smmu_info ) ) . pad as * const _ - as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_smmu_info ) , - "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_ppc_smmu_info ) ) . sps as * const _ - as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_ppc_smmu_info ) , - "::" , stringify ! ( sps ) )); -} -impl Clone for kvm_ppc_smmu_info { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_ppc_smmu_info>(), + 592usize, + concat!("Size of: ", stringify!(kvm_ppc_smmu_info)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_ppc_smmu_info>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_ppc_smmu_info)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_smmu_info>())).flags as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_smmu_info), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_smmu_info>())).slb_size as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_smmu_info), + "::", + stringify!(slb_size) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_smmu_info>())).pad as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_smmu_info), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_ppc_smmu_info>())).sps as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_ppc_smmu_info), + "::", + stringify!(sps) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_irq_routing_irqchip { pub irqchip: __u32, pub pin: __u32, } #[test] fn bindgen_test_layout_kvm_irq_routing_irqchip() { - assert_eq!(::std::mem::size_of::<kvm_irq_routing_irqchip>() , 8usize , - concat ! ( - "Size of: " , stringify ! ( kvm_irq_routing_irqchip ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_routing_irqchip>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_irq_routing_irqchip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_irqchip ) ) . irqchip as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_irqchip - ) , "::" , stringify ! ( irqchip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_irqchip ) ) . pin as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_irqchip - ) , "::" , stringify ! ( pin ) )); -} -impl Clone for kvm_irq_routing_irqchip { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_irq_routing_irqchip>(), + 8usize, + concat!("Size of: ", stringify!(kvm_irq_routing_irqchip)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_routing_irqchip>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_irq_routing_irqchip)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_irqchip>())).irqchip as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_irqchip), + "::", + stringify!(irqchip) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_irqchip>())).pin as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_irqchip), + "::", + stringify!(pin) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_irq_routing_msi { pub address_lo: __u32, pub address_hi: __u32, @@ -3058,37 +4875,59 @@ pub struct kvm_irq_routing_msi { } #[test] fn bindgen_test_layout_kvm_irq_routing_msi() { - assert_eq!(::std::mem::size_of::<kvm_irq_routing_msi>() , 16usize , concat - ! ( "Size of: " , stringify ! ( kvm_irq_routing_msi ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_routing_msi>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_irq_routing_msi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_msi ) ) . address_lo as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_msi ) , - "::" , stringify ! ( address_lo ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_msi ) ) . address_hi as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_msi ) , - "::" , stringify ! ( address_hi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_msi ) ) . data as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_msi ) , - "::" , stringify ! ( data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_msi ) ) . pad as * const - _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_msi ) , - "::" , stringify ! ( pad ) )); -} -impl Clone for kvm_irq_routing_msi { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_irq_routing_msi>(), + 16usize, + concat!("Size of: ", stringify!(kvm_irq_routing_msi)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_routing_msi>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_irq_routing_msi)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_msi>())).address_lo as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_msi), + "::", + stringify!(address_lo) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_msi>())).address_hi as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_msi), + "::", + stringify!(address_hi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_msi>())).data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_msi), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_msi>())).pad as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_msi), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_irq_routing_s390_adapter { pub ind_addr: __u64, pub summary_addr: __u64, @@ -3098,49 +4937,81 @@ pub struct kvm_irq_routing_s390_adapter { } #[test] fn bindgen_test_layout_kvm_irq_routing_s390_adapter() { - assert_eq!(::std::mem::size_of::<kvm_irq_routing_s390_adapter>() , 32usize - , concat ! ( - "Size of: " , stringify ! ( kvm_irq_routing_s390_adapter ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_routing_s390_adapter>() , - 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_irq_routing_s390_adapter ) - )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_s390_adapter ) ) . - ind_addr as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_s390_adapter ) , "::" , stringify ! ( ind_addr - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_s390_adapter ) ) . - summary_addr as * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_s390_adapter ) , "::" , stringify ! ( - summary_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_s390_adapter ) ) . - ind_offset as * const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_s390_adapter ) , "::" , stringify ! ( - ind_offset ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_s390_adapter ) ) . - summary_offset as * const _ as usize } , 24usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_s390_adapter ) , "::" , stringify ! ( - summary_offset ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_s390_adapter ) ) . - adapter_id as * const _ as usize } , 28usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_s390_adapter ) , "::" , stringify ! ( - adapter_id ) )); -} -impl Clone for kvm_irq_routing_s390_adapter { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_irq_routing_s390_adapter>(), + 32usize, + concat!("Size of: ", stringify!(kvm_irq_routing_s390_adapter)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_routing_s390_adapter>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_irq_routing_s390_adapter)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_s390_adapter>())).ind_addr as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_s390_adapter), + "::", + stringify!(ind_addr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_s390_adapter>())).summary_addr as *const _ as + usize + }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_s390_adapter), + "::", + stringify!(summary_addr) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_s390_adapter>())).ind_offset as *const _ as usize + }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_s390_adapter), + "::", + stringify!(ind_offset) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_s390_adapter>())).summary_offset as *const _ as + usize + }, + 24usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_s390_adapter), + "::", + stringify!(summary_offset) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_s390_adapter>())).adapter_id as *const _ as usize + }, + 28usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_s390_adapter), + "::", + stringify!(adapter_id) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_irq_routing_entry { pub gsi: __u32, pub type_: __u32, @@ -3149,124 +5020,211 @@ pub struct kvm_irq_routing_entry { pub u: kvm_irq_routing_entry__bindgen_ty_1, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_irq_routing_entry__bindgen_ty_1 { - pub irqchip: __BindgenUnionField<kvm_irq_routing_irqchip>, - pub msi: __BindgenUnionField<kvm_irq_routing_msi>, - pub adapter: __BindgenUnionField<kvm_irq_routing_s390_adapter>, - pub pad: __BindgenUnionField<[__u32; 8usize]>, - pub bindgen_union_field: [u64; 4usize], +#[derive(Copy, Clone)] +pub union kvm_irq_routing_entry__bindgen_ty_1 { + pub irqchip: kvm_irq_routing_irqchip, + pub msi: kvm_irq_routing_msi, + pub adapter: kvm_irq_routing_s390_adapter, + pub pad: [__u32; 8usize], + _bindgen_union_align: [u64; 4usize], } #[test] fn bindgen_test_layout_kvm_irq_routing_entry__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_irq_routing_entry__bindgen_ty_1>() , - 32usize , concat ! ( - "Size of: " , stringify ! ( kvm_irq_routing_entry__bindgen_ty_1 - ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_routing_entry__bindgen_ty_1>() - , 8usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_irq_routing_entry__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry__bindgen_ty_1 ) ) . - irqchip as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_entry__bindgen_ty_1 ) , "::" , stringify ! ( - irqchip ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry__bindgen_ty_1 ) ) . - msi as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_entry__bindgen_ty_1 ) , "::" , stringify ! ( - msi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry__bindgen_ty_1 ) ) . - adapter as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_entry__bindgen_ty_1 ) , "::" , stringify ! ( - adapter ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry__bindgen_ty_1 ) ) . - pad as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_irq_routing_entry__bindgen_ty_1 ) , "::" , stringify ! ( - pad ) )); -} -impl Clone for kvm_irq_routing_entry__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_irq_routing_entry__bindgen_ty_1>(), + 32usize, + concat!("Size of: ", stringify!(kvm_irq_routing_entry__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_routing_entry__bindgen_ty_1>(), + 8usize, + concat!( + "Alignment of ", + stringify!(kvm_irq_routing_entry__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_entry__bindgen_ty_1>())).irqchip as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry__bindgen_ty_1), + "::", + stringify!(irqchip) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_entry__bindgen_ty_1>())).msi as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry__bindgen_ty_1), + "::", + stringify!(msi) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_entry__bindgen_ty_1>())).adapter as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry__bindgen_ty_1), + "::", + stringify!(adapter) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_irq_routing_entry__bindgen_ty_1>())).pad as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry__bindgen_ty_1), + "::", + stringify!(pad) + ) + ); +} +impl Default for kvm_irq_routing_entry__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_irq_routing_entry() { - assert_eq!(::std::mem::size_of::<kvm_irq_routing_entry>() , 48usize , - concat ! ( "Size of: " , stringify ! ( kvm_irq_routing_entry ) - )); - assert_eq! (::std::mem::align_of::<kvm_irq_routing_entry>() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_irq_routing_entry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry ) ) . gsi as * - const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_entry ) - , "::" , stringify ! ( gsi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry ) ) . type_ as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_entry ) - , "::" , stringify ! ( type_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry ) ) . flags as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_entry ) - , "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry ) ) . pad as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_entry ) - , "::" , stringify ! ( pad ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing_entry ) ) . u as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing_entry ) - , "::" , stringify ! ( u ) )); -} -impl Clone for kvm_irq_routing_entry { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_irq_routing_entry>(), + 48usize, + concat!("Size of: ", stringify!(kvm_irq_routing_entry)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_routing_entry>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_irq_routing_entry)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_entry>())).gsi as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry), + "::", + stringify!(gsi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_entry>())).type_ as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_entry>())).flags as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_entry>())).pad as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry), + "::", + stringify!(pad) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing_entry>())).u as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing_entry), + "::", + stringify!(u) + ) + ); +} +impl Default for kvm_irq_routing_entry { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] pub struct kvm_irq_routing { pub nr: __u32, pub flags: __u32, pub entries: __IncompleteArrayField<kvm_irq_routing_entry>, - pub __force_alignment: [u64; 0], + // Manually added to work around rust bindgen issue 684 + __force_alignment: [u64; 0], } #[test] fn bindgen_test_layout_kvm_irq_routing() { - assert_eq!(::std::mem::size_of::<kvm_irq_routing>() , 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_irq_routing ) )); - assert_eq! (::std::mem::align_of::<kvm_irq_routing>() , 8usize , concat ! - ( "Alignment of " , stringify ! ( kvm_irq_routing ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing ) ) . nr as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing ) , - "::" , stringify ! ( nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing ) ) . flags as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing ) , - "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irq_routing ) ) . entries as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irq_routing ) , - "::" , stringify ! ( entries ) )); -} -impl Clone for kvm_irq_routing { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_irq_routing>(), + 8usize, + concat!("Size of: ", stringify!(kvm_irq_routing)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irq_routing>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_irq_routing)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing>())).nr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing), + "::", + stringify!(nr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing>())).flags as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irq_routing>())).entries as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_irq_routing), + "::", + stringify!(entries) + ) + ); +} +impl Default for kvm_irq_routing { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_irqfd { pub fd: __u32, pub gsi: __u32, @@ -3276,41 +5234,69 @@ pub struct kvm_irqfd { } #[test] fn bindgen_test_layout_kvm_irqfd() { - assert_eq!(::std::mem::size_of::<kvm_irqfd>() , 32usize , concat ! ( - "Size of: " , stringify ! ( kvm_irqfd ) )); - assert_eq! (::std::mem::align_of::<kvm_irqfd>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_irqfd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqfd ) ) . fd as * const _ as usize - } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqfd ) , "::" , - stringify ! ( fd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqfd ) ) . gsi as * const _ as usize - } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqfd ) , "::" , - stringify ! ( gsi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqfd ) ) . flags as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqfd ) , "::" , - stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqfd ) ) . resamplefd as * const _ - as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqfd ) , "::" , - stringify ! ( resamplefd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_irqfd ) ) . pad as * const _ as usize - } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_irqfd ) , "::" , - stringify ! ( pad ) )); -} -impl Clone for kvm_irqfd { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_irqfd>(), + 32usize, + concat!("Size of: ", stringify!(kvm_irqfd)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_irqfd>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_irqfd)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqfd>())).fd as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqfd), + "::", + stringify!(fd) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqfd>())).gsi as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqfd), + "::", + stringify!(gsi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqfd>())).flags as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqfd), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqfd>())).resamplefd as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqfd), + "::", + stringify!(resamplefd) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_irqfd>())).pad as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_irqfd), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_clock_data { pub clock: __u64, pub flags: __u32, @@ -3318,31 +5304,49 @@ pub struct kvm_clock_data { } #[test] fn bindgen_test_layout_kvm_clock_data() { - assert_eq!(::std::mem::size_of::<kvm_clock_data>() , 48usize , concat ! ( - "Size of: " , stringify ! ( kvm_clock_data ) )); - assert_eq! (::std::mem::align_of::<kvm_clock_data>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_clock_data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_clock_data ) ) . clock as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_clock_data ) , "::" - , stringify ! ( clock ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_clock_data ) ) . flags as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_clock_data ) , "::" - , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_clock_data ) ) . pad as * const _ as - usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_clock_data ) , "::" - , stringify ! ( pad ) )); -} -impl Clone for kvm_clock_data { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_clock_data>(), + 48usize, + concat!("Size of: ", stringify!(kvm_clock_data)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_clock_data>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_clock_data)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_clock_data>())).clock as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_clock_data), + "::", + stringify!(clock) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_clock_data>())).flags as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_clock_data), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_clock_data>())).pad as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_clock_data), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_config_tlb { pub params: __u64, pub array: __u64, @@ -3351,114 +5355,176 @@ pub struct kvm_config_tlb { } #[test] fn bindgen_test_layout_kvm_config_tlb() { - assert_eq!(::std::mem::size_of::<kvm_config_tlb>() , 24usize , concat ! ( - "Size of: " , stringify ! ( kvm_config_tlb ) )); - assert_eq! (::std::mem::align_of::<kvm_config_tlb>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_config_tlb ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_config_tlb ) ) . params as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_config_tlb ) , "::" - , stringify ! ( params ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_config_tlb ) ) . array as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_config_tlb ) , "::" - , stringify ! ( array ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_config_tlb ) ) . mmu_type as * const - _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_config_tlb ) , "::" - , stringify ! ( mmu_type ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_config_tlb ) ) . array_len as * const - _ as usize } , 20usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_config_tlb ) , "::" - , stringify ! ( array_len ) )); -} -impl Clone for kvm_config_tlb { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_config_tlb>(), + 24usize, + concat!("Size of: ", stringify!(kvm_config_tlb)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_config_tlb>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_config_tlb)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_config_tlb>())).params as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_config_tlb), + "::", + stringify!(params) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_config_tlb>())).array as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_config_tlb), + "::", + stringify!(array) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_config_tlb>())).mmu_type as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_config_tlb), + "::", + stringify!(mmu_type) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_config_tlb>())).array_len as *const _ as usize }, + 20usize, + concat!( + "Offset of field: ", + stringify!(kvm_config_tlb), + "::", + stringify!(array_len) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_dirty_tlb { pub bitmap: __u64, pub num_dirty: __u32, } #[test] fn bindgen_test_layout_kvm_dirty_tlb() { - assert_eq!(::std::mem::size_of::<kvm_dirty_tlb>() , 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_dirty_tlb ) )); - assert_eq! (::std::mem::align_of::<kvm_dirty_tlb>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_dirty_tlb ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_dirty_tlb ) ) . bitmap as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_dirty_tlb ) , "::" - , stringify ! ( bitmap ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_dirty_tlb ) ) . num_dirty as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_dirty_tlb ) , "::" - , stringify ! ( num_dirty ) )); -} -impl Clone for kvm_dirty_tlb { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_dirty_tlb>(), + 16usize, + concat!("Size of: ", stringify!(kvm_dirty_tlb)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_dirty_tlb>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_dirty_tlb)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_dirty_tlb>())).bitmap as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_dirty_tlb), + "::", + stringify!(bitmap) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_dirty_tlb>())).num_dirty as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_dirty_tlb), + "::", + stringify!(num_dirty) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default)] pub struct kvm_reg_list { pub n: __u64, pub reg: __IncompleteArrayField<__u64>, } #[test] fn bindgen_test_layout_kvm_reg_list() { - assert_eq!(::std::mem::size_of::<kvm_reg_list>() , 8usize , concat ! ( - "Size of: " , stringify ! ( kvm_reg_list ) )); - assert_eq! (::std::mem::align_of::<kvm_reg_list>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_reg_list ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_reg_list ) ) . n as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_reg_list ) , "::" , - stringify ! ( n ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_reg_list ) ) . reg as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_reg_list ) , "::" , - stringify ! ( reg ) )); -} -impl Clone for kvm_reg_list { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_reg_list>(), + 8usize, + concat!("Size of: ", stringify!(kvm_reg_list)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_reg_list>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_reg_list)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_reg_list>())).n as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_reg_list), + "::", + stringify!(n) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_reg_list>())).reg as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_reg_list), + "::", + stringify!(reg) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_one_reg { pub id: __u64, pub addr: __u64, } #[test] fn bindgen_test_layout_kvm_one_reg() { - assert_eq!(::std::mem::size_of::<kvm_one_reg>() , 16usize , concat ! ( - "Size of: " , stringify ! ( kvm_one_reg ) )); - assert_eq! (::std::mem::align_of::<kvm_one_reg>() , 8usize , concat ! ( - "Alignment of " , stringify ! ( kvm_one_reg ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_one_reg ) ) . id as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_one_reg ) , "::" , - stringify ! ( id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_one_reg ) ) . addr as * const _ as - usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_one_reg ) , "::" , - stringify ! ( addr ) )); -} -impl Clone for kvm_one_reg { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_one_reg>(), + 16usize, + concat!("Size of: ", stringify!(kvm_one_reg)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_one_reg>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_one_reg)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_one_reg>())).id as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_one_reg), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_one_reg>())).addr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_one_reg), + "::", + stringify!(addr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_msi { pub address_lo: __u32, pub address_hi: __u32, @@ -3468,68 +5534,108 @@ pub struct kvm_msi { } #[test] fn bindgen_test_layout_kvm_msi() { - assert_eq!(::std::mem::size_of::<kvm_msi>() , 32usize , concat ! ( - "Size of: " , stringify ! ( kvm_msi ) )); - assert_eq! (::std::mem::align_of::<kvm_msi>() , 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_msi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_msi ) ) . address_lo as * const _ as - usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_msi ) , "::" , - stringify ! ( address_lo ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_msi ) ) . address_hi as * const _ as - usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_msi ) , "::" , - stringify ! ( address_hi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_msi ) ) . data as * const _ as usize - } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_msi ) , "::" , - stringify ! ( data ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_msi ) ) . flags as * const _ as usize - } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_msi ) , "::" , - stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_msi ) ) . pad as * const _ as usize } - , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_msi ) , "::" , - stringify ! ( pad ) )); -} -impl Clone for kvm_msi { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_msi>(), + 32usize, + concat!("Size of: ", stringify!(kvm_msi)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_msi>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_msi)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_msi>())).address_lo as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_msi), + "::", + stringify!(address_lo) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_msi>())).address_hi as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_msi), + "::", + stringify!(address_hi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_msi>())).data as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_msi), + "::", + stringify!(data) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_msi>())).flags as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_msi), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_msi>())).pad as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_msi), + "::", + stringify!(pad) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_arm_device_addr { pub id: __u64, pub addr: __u64, } #[test] fn bindgen_test_layout_kvm_arm_device_addr() { - assert_eq!(::std::mem::size_of::<kvm_arm_device_addr>() , 16usize , concat - ! ( "Size of: " , stringify ! ( kvm_arm_device_addr ) )); - assert_eq! (::std::mem::align_of::<kvm_arm_device_addr>() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_arm_device_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_arm_device_addr ) ) . id as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_arm_device_addr ) , - "::" , stringify ! ( id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_arm_device_addr ) ) . addr as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_arm_device_addr ) , - "::" , stringify ! ( addr ) )); -} -impl Clone for kvm_arm_device_addr { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_arm_device_addr>(), + 16usize, + concat!("Size of: ", stringify!(kvm_arm_device_addr)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_arm_device_addr>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_arm_device_addr)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_arm_device_addr>())).id as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_arm_device_addr), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_arm_device_addr>())).addr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_arm_device_addr), + "::", + stringify!(addr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_create_device { pub type_: __u32, pub fd: __u32, @@ -3537,31 +5643,49 @@ pub struct kvm_create_device { } #[test] fn bindgen_test_layout_kvm_create_device() { - assert_eq!(::std::mem::size_of::<kvm_create_device>() , 12usize , concat ! - ( "Size of: " , stringify ! ( kvm_create_device ) )); - assert_eq! (::std::mem::align_of::<kvm_create_device>() , 4usize , concat - ! ( "Alignment of " , stringify ! ( kvm_create_device ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_create_device ) ) . type_ as * const - _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_create_device ) , - "::" , stringify ! ( type_ ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_create_device ) ) . fd as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_create_device ) , - "::" , stringify ! ( fd ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_create_device ) ) . flags as * const - _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_create_device ) , - "::" , stringify ! ( flags ) )); -} -impl Clone for kvm_create_device { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_create_device>(), + 12usize, + concat!("Size of: ", stringify!(kvm_create_device)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_create_device>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_create_device)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_create_device>())).type_ as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_create_device), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_create_device>())).fd as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_create_device), + "::", + stringify!(fd) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_create_device>())).flags as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_create_device), + "::", + stringify!(flags) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_device_attr { pub flags: __u32, pub group: __u32, @@ -3570,33 +5694,56 @@ pub struct kvm_device_attr { } #[test] fn bindgen_test_layout_kvm_device_attr() { - assert_eq!(::std::mem::size_of::<kvm_device_attr>() , 24usize , concat ! ( - "Size of: " , stringify ! ( kvm_device_attr ) )); - assert_eq! (::std::mem::align_of::<kvm_device_attr>() , 8usize , concat ! - ( "Alignment of " , stringify ! ( kvm_device_attr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_device_attr ) ) . flags as * const _ - as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_device_attr ) , - "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_device_attr ) ) . group as * const _ - as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_device_attr ) , - "::" , stringify ! ( group ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_device_attr ) ) . attr as * const _ - as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_device_attr ) , - "::" , stringify ! ( attr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_device_attr ) ) . addr as * const _ - as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_device_attr ) , - "::" , stringify ! ( addr ) )); -} -impl Clone for kvm_device_attr { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_device_attr>(), + 24usize, + concat!("Size of: ", stringify!(kvm_device_attr)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_device_attr>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_device_attr)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_device_attr>())).flags as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_device_attr), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_device_attr>())).group as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_device_attr), + "::", + stringify!(group) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_device_attr>())).attr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_device_attr), + "::", + stringify!(attr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_device_attr>())).addr as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_device_attr), + "::", + stringify!(addr) + ) + ); } pub const kvm_device_type_KVM_DEV_TYPE_FSL_MPIC_20: kvm_device_type = 1; pub const kvm_device_type_KVM_DEV_TYPE_FSL_MPIC_42: kvm_device_type = 2; @@ -3608,7 +5755,7 @@ pub const kvm_device_type_KVM_DEV_TYPE_ARM_VGIC_V3: kvm_device_type = 7; pub const kvm_device_type_KVM_DEV_TYPE_MAX: kvm_device_type = 8; pub type kvm_device_type = ::std::os::raw::c_uint; #[repr(C)] -#[derive(Debug, Default, Copy)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_s390_ucas_mapping { pub user_addr: __u64, pub vcpu_addr: __u64, @@ -3616,33 +5763,49 @@ pub struct kvm_s390_ucas_mapping { } #[test] fn bindgen_test_layout_kvm_s390_ucas_mapping() { - assert_eq!(::std::mem::size_of::<kvm_s390_ucas_mapping>() , 24usize , - concat ! ( "Size of: " , stringify ! ( kvm_s390_ucas_mapping ) - )); - assert_eq! (::std::mem::align_of::<kvm_s390_ucas_mapping>() , 8usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_s390_ucas_mapping ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_ucas_mapping ) ) . user_addr as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_ucas_mapping ) - , "::" , stringify ! ( user_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_ucas_mapping ) ) . vcpu_addr as - * const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_ucas_mapping ) - , "::" , stringify ! ( vcpu_addr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_s390_ucas_mapping ) ) . length as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_s390_ucas_mapping ) - , "::" , stringify ! ( length ) )); -} -impl Clone for kvm_s390_ucas_mapping { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_s390_ucas_mapping>(), + 24usize, + concat!("Size of: ", stringify!(kvm_s390_ucas_mapping)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_s390_ucas_mapping>(), + 8usize, + concat!("Alignment of ", stringify!(kvm_s390_ucas_mapping)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_ucas_mapping>())).user_addr as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_ucas_mapping), + "::", + stringify!(user_addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_ucas_mapping>())).vcpu_addr as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_ucas_mapping), + "::", + stringify!(vcpu_addr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_s390_ucas_mapping>())).length as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_s390_ucas_mapping), + "::", + stringify!(length) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_assigned_pci_dev { pub assigned_dev_id: __u32, pub busnr: __u32, @@ -3652,70 +5815,117 @@ pub struct kvm_assigned_pci_dev { pub __bindgen_anon_1: kvm_assigned_pci_dev__bindgen_ty_1, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_assigned_pci_dev__bindgen_ty_1 { - pub reserved: __BindgenUnionField<[__u32; 11usize]>, - pub bindgen_union_field: [u32; 11usize], +#[derive(Copy, Clone)] +pub union kvm_assigned_pci_dev__bindgen_ty_1 { + pub reserved: [__u32; 11usize], + _bindgen_union_align: [u32; 11usize], } #[test] fn bindgen_test_layout_kvm_assigned_pci_dev__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_assigned_pci_dev__bindgen_ty_1>() , - 44usize , concat ! ( - "Size of: " , stringify ! ( kvm_assigned_pci_dev__bindgen_ty_1 - ) )); - assert_eq! (::std::mem::align_of::<kvm_assigned_pci_dev__bindgen_ty_1>() , - 4usize , concat ! ( - "Alignment of " , stringify ! ( - kvm_assigned_pci_dev__bindgen_ty_1 ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_pci_dev__bindgen_ty_1 ) ) . - reserved as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_assigned_pci_dev__bindgen_ty_1 ) , "::" , stringify ! ( - reserved ) )); -} -impl Clone for kvm_assigned_pci_dev__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_assigned_pci_dev__bindgen_ty_1>(), + 44usize, + concat!("Size of: ", stringify!(kvm_assigned_pci_dev__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_assigned_pci_dev__bindgen_ty_1>(), + 4usize, + concat!( + "Alignment of ", + stringify!(kvm_assigned_pci_dev__bindgen_ty_1) + ) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_assigned_pci_dev__bindgen_ty_1>())).reserved as *const _ as + usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_pci_dev__bindgen_ty_1), + "::", + stringify!(reserved) + ) + ); +} +impl Default for kvm_assigned_pci_dev__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_assigned_pci_dev() { - assert_eq!(::std::mem::size_of::<kvm_assigned_pci_dev>() , 64usize , - concat ! ( "Size of: " , stringify ! ( kvm_assigned_pci_dev ) - )); - assert_eq! (::std::mem::align_of::<kvm_assigned_pci_dev>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_assigned_pci_dev ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_pci_dev ) ) . - assigned_dev_id as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_pci_dev ) - , "::" , stringify ! ( assigned_dev_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_pci_dev ) ) . busnr as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_pci_dev ) - , "::" , stringify ! ( busnr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_pci_dev ) ) . devfn as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_pci_dev ) - , "::" , stringify ! ( devfn ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_pci_dev ) ) . flags as * - const _ as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_pci_dev ) - , "::" , stringify ! ( flags ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_pci_dev ) ) . segnr as * - const _ as usize } , 16usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_pci_dev ) - , "::" , stringify ! ( segnr ) )); -} -impl Clone for kvm_assigned_pci_dev { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_assigned_pci_dev>(), + 64usize, + concat!("Size of: ", stringify!(kvm_assigned_pci_dev)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_assigned_pci_dev>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_assigned_pci_dev)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_assigned_pci_dev>())).assigned_dev_id as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_pci_dev), + "::", + stringify!(assigned_dev_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_pci_dev>())).busnr as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_pci_dev), + "::", + stringify!(busnr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_pci_dev>())).devfn as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_pci_dev), + "::", + stringify!(devfn) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_pci_dev>())).flags as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_pci_dev), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_pci_dev>())).segnr as *const _ as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_pci_dev), + "::", + stringify!(segnr) + ) + ); +} +impl Default for kvm_assigned_pci_dev { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Copy, Clone)] pub struct kvm_assigned_irq { pub assigned_dev_id: __u32, pub host_irq: __u32, @@ -3724,63 +5934,101 @@ pub struct kvm_assigned_irq { pub __bindgen_anon_1: kvm_assigned_irq__bindgen_ty_1, } #[repr(C)] -#[derive(Debug, Default, Copy)] -pub struct kvm_assigned_irq__bindgen_ty_1 { - pub reserved: __BindgenUnionField<[__u32; 12usize]>, - pub bindgen_union_field: [u32; 12usize], +#[derive(Copy, Clone)] +pub union kvm_assigned_irq__bindgen_ty_1 { + pub reserved: [__u32; 12usize], + _bindgen_union_align: [u32; 12usize], } #[test] fn bindgen_test_layout_kvm_assigned_irq__bindgen_ty_1() { - assert_eq!(::std::mem::size_of::<kvm_assigned_irq__bindgen_ty_1>() , - 48usize , concat ! ( - "Size of: " , stringify ! ( kvm_assigned_irq__bindgen_ty_1 ) - )); - assert_eq! (::std::mem::align_of::<kvm_assigned_irq__bindgen_ty_1>() , - 4usize , concat ! ( - "Alignment of " , stringify ! ( kvm_assigned_irq__bindgen_ty_1 - ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_irq__bindgen_ty_1 ) ) . - reserved as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( - kvm_assigned_irq__bindgen_ty_1 ) , "::" , stringify ! ( - reserved ) )); -} -impl Clone for kvm_assigned_irq__bindgen_ty_1 { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_assigned_irq__bindgen_ty_1>(), + 48usize, + concat!("Size of: ", stringify!(kvm_assigned_irq__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_assigned_irq__bindgen_ty_1>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_assigned_irq__bindgen_ty_1)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_assigned_irq__bindgen_ty_1>())).reserved as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_irq__bindgen_ty_1), + "::", + stringify!(reserved) + ) + ); +} +impl Default for kvm_assigned_irq__bindgen_ty_1 { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } } #[test] fn bindgen_test_layout_kvm_assigned_irq() { - assert_eq!(::std::mem::size_of::<kvm_assigned_irq>() , 64usize , concat ! - ( "Size of: " , stringify ! ( kvm_assigned_irq ) )); - assert_eq! (::std::mem::align_of::<kvm_assigned_irq>() , 4usize , concat ! - ( "Alignment of " , stringify ! ( kvm_assigned_irq ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_irq ) ) . assigned_dev_id as - * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_irq ) , - "::" , stringify ! ( assigned_dev_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_irq ) ) . host_irq as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_irq ) , - "::" , stringify ! ( host_irq ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_irq ) ) . guest_irq as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_irq ) , - "::" , stringify ! ( guest_irq ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_irq ) ) . flags as * const _ - as usize } , 12usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_irq ) , - "::" , stringify ! ( flags ) )); -} -impl Clone for kvm_assigned_irq { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_assigned_irq>(), + 64usize, + concat!("Size of: ", stringify!(kvm_assigned_irq)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_assigned_irq>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_assigned_irq)) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_irq>())).assigned_dev_id as *const _ as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_irq), + "::", + stringify!(assigned_dev_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_irq>())).host_irq as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_irq), + "::", + stringify!(host_irq) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_irq>())).guest_irq as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_irq), + "::", + stringify!(guest_irq) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_irq>())).flags as *const _ as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_irq), + "::", + stringify!(flags) + ) + ); +} +impl Default for kvm_assigned_irq { + fn default() -> Self { + unsafe { ::std::mem::zeroed() } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_assigned_msix_nr { pub assigned_dev_id: __u32, pub entry_nr: __u16, @@ -3788,32 +6036,51 @@ pub struct kvm_assigned_msix_nr { } #[test] fn bindgen_test_layout_kvm_assigned_msix_nr() { - assert_eq!(::std::mem::size_of::<kvm_assigned_msix_nr>() , 8usize , concat - ! ( "Size of: " , stringify ! ( kvm_assigned_msix_nr ) )); - assert_eq! (::std::mem::align_of::<kvm_assigned_msix_nr>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_assigned_msix_nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_nr ) ) . - assigned_dev_id as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_nr ) - , "::" , stringify ! ( assigned_dev_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_nr ) ) . entry_nr as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_nr ) - , "::" , stringify ! ( entry_nr ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_nr ) ) . padding as * - const _ as usize } , 6usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_nr ) - , "::" , stringify ! ( padding ) )); -} -impl Clone for kvm_assigned_msix_nr { - fn clone(&self) -> Self { *self } -} -#[repr(C)] -#[derive(Debug, Default, Copy)] + assert_eq!( + ::std::mem::size_of::<kvm_assigned_msix_nr>(), + 8usize, + concat!("Size of: ", stringify!(kvm_assigned_msix_nr)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_assigned_msix_nr>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_assigned_msix_nr)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_assigned_msix_nr>())).assigned_dev_id as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_nr), + "::", + stringify!(assigned_dev_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_msix_nr>())).entry_nr as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_nr), + "::", + stringify!(entry_nr) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_msix_nr>())).padding as *const _ as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_nr), + "::", + stringify!(padding) + ) + ); +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct kvm_assigned_msix_entry { pub assigned_dev_id: __u32, pub gsi: __u32, @@ -3822,33 +6089,56 @@ pub struct kvm_assigned_msix_entry { } #[test] fn bindgen_test_layout_kvm_assigned_msix_entry() { - assert_eq!(::std::mem::size_of::<kvm_assigned_msix_entry>() , 16usize , - concat ! ( - "Size of: " , stringify ! ( kvm_assigned_msix_entry ) )); - assert_eq! (::std::mem::align_of::<kvm_assigned_msix_entry>() , 4usize , - concat ! ( - "Alignment of " , stringify ! ( kvm_assigned_msix_entry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_entry ) ) . - assigned_dev_id as * const _ as usize } , 0usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_entry - ) , "::" , stringify ! ( assigned_dev_id ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_entry ) ) . gsi as * - const _ as usize } , 4usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_entry - ) , "::" , stringify ! ( gsi ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_entry ) ) . entry as * - const _ as usize } , 8usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_entry - ) , "::" , stringify ! ( entry ) )); - assert_eq! (unsafe { - & ( * ( 0 as * const kvm_assigned_msix_entry ) ) . padding as - * const _ as usize } , 10usize , concat ! ( - "Alignment of field: " , stringify ! ( kvm_assigned_msix_entry - ) , "::" , stringify ! ( padding ) )); -} -impl Clone for kvm_assigned_msix_entry { - fn clone(&self) -> Self { *self } + assert_eq!( + ::std::mem::size_of::<kvm_assigned_msix_entry>(), + 16usize, + concat!("Size of: ", stringify!(kvm_assigned_msix_entry)) + ); + assert_eq!( + ::std::mem::align_of::<kvm_assigned_msix_entry>(), + 4usize, + concat!("Alignment of ", stringify!(kvm_assigned_msix_entry)) + ); + assert_eq!( + unsafe { + &(*(::std::ptr::null::<kvm_assigned_msix_entry>())).assigned_dev_id as *const _ as usize + }, + 0usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_entry), + "::", + stringify!(assigned_dev_id) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_msix_entry>())).gsi as *const _ as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_entry), + "::", + stringify!(gsi) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_msix_entry>())).entry as *const _ as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_entry), + "::", + stringify!(entry) + ) + ); + assert_eq!( + unsafe { &(*(::std::ptr::null::<kvm_assigned_msix_entry>())).padding as *const _ as usize }, + 10usize, + concat!( + "Offset of field: ", + stringify!(kvm_assigned_msix_entry), + "::", + stringify!(padding) + ) + ); } |