[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v2 for-4.9 1/2] x86/emul: Use explicit __attribute__((packed)) rather than __packed
x86_emulate.h is included by the userspace test harness. Avoid using constructs which don't come from standard header files. Reposition the test harnesses inclusion of x86_emulate.h to avoid relying on any definitons intended for use by x86_emulate.c alone. Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- CC: Jan Beulich <JBeulich@xxxxxxxx> --- tools/tests/x86_emulator/test_x86_emulator.c | 2 -- tools/tests/x86_emulator/x86_emulate.c | 6 ++---- xen/arch/x86/x86_emulate/x86_emulate.h | 4 ++-- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/tools/tests/x86_emulator/test_x86_emulator.c b/tools/tests/x86_emulator/test_x86_emulator.c index 15d100a..6f6d70f 100644 --- a/tools/tests/x86_emulator/test_x86_emulator.c +++ b/tools/tests/x86_emulator/test_x86_emulator.c @@ -8,8 +8,6 @@ #include <xen/xen.h> #include <sys/mman.h> -#define __packed __attribute__((packed)) - #include "x86_emulate/x86_emulate.h" #include "blowfish.h" diff --git a/tools/tests/x86_emulator/x86_emulate.c b/tools/tests/x86_emulator/x86_emulate.c index 50a4262..af90b6e 100644 --- a/tools/tests/x86_emulator/x86_emulate.c +++ b/tools/tests/x86_emulator/x86_emulate.c @@ -6,6 +6,8 @@ #include <string.h> #include <xen/xen.h> +#include "x86_emulate/x86_emulate.h" + typedef bool bool_t; #define is_canonical_address(x) (((int64_t)(x) >> 47) == ((int64_t)(x) >> 63)) @@ -23,8 +25,6 @@ typedef bool bool_t; #define cpu_has_amd_erratum(nr) 0 #define mark_regs_dirty(r) ((void)(r)) -#define __packed __attribute__((packed)) - /* For generic assembly code: use macros to define operation/operand sizes. */ #ifdef __i386__ # define __OS "l" /* Operation Suffix */ @@ -34,8 +34,6 @@ typedef bool bool_t; # define __OP "r" /* Operand Prefix */ #endif -#include "x86_emulate/x86_emulate.h" - #define get_stub(stb) ((void *)((stb).addr = (uintptr_t)(stb).buf)) #define put_stub(stb) diff --git a/xen/arch/x86/x86_emulate/x86_emulate.h b/xen/arch/x86/x86_emulate/x86_emulate.h index 641711e..2b39b81 100644 --- a/xen/arch/x86/x86_emulate/x86_emulate.h +++ b/xen/arch/x86/x86_emulate/x86_emulate.h @@ -71,7 +71,7 @@ enum x86_swint_emulation { * Attribute for segment selector. This is a copy of bit 40:47 & 52:55 of the * segment descriptor. It happens to match the format of an AMD SVM VMCB. */ -typedef union __packed segment_attributes { +typedef union __attribute__((packed)) segment_attributes { uint16_t bytes; struct { @@ -91,7 +91,7 @@ typedef union __packed segment_attributes { * Full state of a segment register (visible and hidden portions). * Again, this happens to match the format of an AMD SVM VMCB. */ -struct __packed segment_register { +struct __attribute__((packed)) segment_register { uint16_t sel; segment_attributes_t attr; uint32_t limit; -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |