summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Moore <Robert.Moore@intel.com>2014-01-17 13:11:14 -0800
committerRobert Moore <Robert.Moore@intel.com>2014-01-17 13:11:14 -0800
commitaae576e5faefa8ba70647efa320d4747b6375f1e (patch)
tree3f966337ba2e23d312d3c5d9ba673d9656fb1422
parent984b44d6e7645a82bde98af2adc8491ad1d3d9e5 (diff)
Headers: Deploy #pragma pack (push) and (pop).
Use push and pop to both guarantee that the correct alignment is used, and to restore the alignment to whatever it was before the header was included. ACPICA BZ 1058.
-rw-r--r--source/include/acapps.h4
-rw-r--r--source/include/acbuffer.h5
-rw-r--r--source/include/acconfig.h4
-rw-r--r--source/include/acdebug.h4
-rw-r--r--source/include/acdisasm.h4
-rw-r--r--source/include/acdispat.h4
-rw-r--r--source/include/acevents.h4
-rw-r--r--source/include/acexcep.h4
-rw-r--r--source/include/acglobal.h4
-rw-r--r--source/include/achware.h4
-rw-r--r--source/include/acinterp.h4
-rw-r--r--source/include/aclocal.h4
-rw-r--r--source/include/acmacros.h4
-rw-r--r--source/include/acnamesp.h4
-rw-r--r--source/include/acobject.h4
-rw-r--r--source/include/acoutput.h4
-rw-r--r--source/include/acparser.h4
-rw-r--r--source/include/acpiosxf.h4
-rw-r--r--source/include/acpixf.h4
-rw-r--r--source/include/acpredef.h4
-rw-r--r--source/include/acresrc.h4
-rw-r--r--source/include/acrestyp.h4
-rw-r--r--source/include/acstruct.h5
-rw-r--r--source/include/actables.h4
-rw-r--r--source/include/actbl.h4
-rw-r--r--source/include/actbl1.h6
-rw-r--r--source/include/actbl2.h6
-rw-r--r--source/include/actbl3.h6
-rw-r--r--source/include/actypes.h4
-rw-r--r--source/include/acutils.h5
-rw-r--r--source/include/amlcode.h5
-rw-r--r--source/include/amlresrc.h5
-rw-r--r--source/tools/acpiexec/aecommon.h5
33 files changed, 134 insertions, 10 deletions
diff --git a/source/include/acapps.h b/source/include/acapps.h
index 3608d69ea..93b8faf39 100644
--- a/source/include/acapps.h
+++ b/source/include/acapps.h
@@ -117,6 +117,8 @@
#define _ACAPPS
+#pragma pack(push) /* Set default struct packing */
+
#ifdef _MSC_VER /* disable some level-4 warnings */
#pragma warning(disable:4100) /* warning C4100: unreferenced formal parameter */
#endif
@@ -293,4 +295,6 @@ AdWriteTable (
char *OemTableId);
#endif
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* _ACAPPS */
diff --git a/source/include/acbuffer.h b/source/include/acbuffer.h
index 3228bcad2..d6163f3b9 100644
--- a/source/include/acbuffer.h
+++ b/source/include/acbuffer.h
@@ -116,6 +116,9 @@
#ifndef __ACBUFFER_H__
#define __ACBUFFER_H__
+
+#pragma pack(push) /* Set default struct packing */
+
/*
* Contains buffer structures for these predefined names:
* _FDE, _GRT, _GTM, _PLD, _SRT
@@ -315,4 +318,6 @@ typedef struct acpi_pld_info
#define ACPI_PLD_SET_HORIZ_OFFSET(dword,value) ACPI_SET_BITS (dword, 16, ACPI_16BIT_MASK, value) /* Offset 128+16=144, Len 16 */
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* ACBUFFER_H */
diff --git a/source/include/acconfig.h b/source/include/acconfig.h
index 6b344845a..b57526a50 100644
--- a/source/include/acconfig.h
+++ b/source/include/acconfig.h
@@ -117,6 +117,8 @@
#define _ACCONFIG_H
+#pragma pack(push) /* Set default struct packing */
+
/******************************************************************************
*
* Configuration options
@@ -306,4 +308,6 @@
#define ACPI_DEBUGGER_EXECUTE_PROMPT '%'
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* _ACCONFIG_H */
diff --git a/source/include/acdebug.h b/source/include/acdebug.h
index 1807c3162..824bf2a19 100644
--- a/source/include/acdebug.h
+++ b/source/include/acdebug.h
@@ -117,6 +117,8 @@
#define __ACDEBUG_H__
+#pragma pack(push) /* Set default struct packing */
+
#define ACPI_DEBUG_BUFFER_SIZE 0x4000 /* 16K buffer for return objects */
typedef struct acpi_db_command_info
@@ -538,4 +540,6 @@ AcpiDbUint32ToHexString (
UINT32 Value,
char *Buffer);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACDEBUG_H__ */
diff --git a/source/include/acdisasm.h b/source/include/acdisasm.h
index 3a38dad8c..9814e2193 100644
--- a/source/include/acdisasm.h
+++ b/source/include/acdisasm.h
@@ -119,6 +119,8 @@
#include "amlresrc.h"
+#pragma pack(push) /* Set default struct packing */
+
#define BLOCK_NONE 0
#define BLOCK_PAREN 1
#define BLOCK_BRACE 2
@@ -1001,4 +1003,6 @@ AdDisassemblerHeader (
char *Filename);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACDISASM_H__ */
diff --git a/source/include/acdispat.h b/source/include/acdispat.h
index ed7d22c6d..e152017ec 100644
--- a/source/include/acdispat.h
+++ b/source/include/acdispat.h
@@ -118,6 +118,8 @@
#define _ACDISPAT_H_
+#pragma pack(push) /* Set default struct packing */
+
#define NAMEOF_LOCAL_NTE "__L0"
#define NAMEOF_ARG_NTE "__A0"
@@ -532,4 +534,6 @@ AcpiDsResultPush (
ACPI_OPERAND_OBJECT *Object,
ACPI_WALK_STATE *WalkState);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* _ACDISPAT_H_ */
diff --git a/source/include/acevents.h b/source/include/acevents.h
index 731defb0b..f895ccb97 100644
--- a/source/include/acevents.h
+++ b/source/include/acevents.h
@@ -117,6 +117,8 @@
#define __ACEVENTS_H__
+#pragma pack(push) /* Set default struct packing */
+
/*
* evevent
*/
@@ -428,4 +430,6 @@ void
AcpiEvTerminate (
void))
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACEVENTS_H__ */
diff --git a/source/include/acexcep.h b/source/include/acexcep.h
index 89d98523b..807f4e300 100644
--- a/source/include/acexcep.h
+++ b/source/include/acexcep.h
@@ -117,6 +117,8 @@
#define __ACEXCEP_H__
+#pragma pack(push) /* Set default struct packing */
+
/* This module contains all possible exception codes for ACPI_STATUS */
/*
@@ -417,4 +419,6 @@ static const ACPI_EXCEPTION_INFO AcpiGbl_ExceptionNames_Ctrl[] =
#endif /* EXCEPTION_TABLE */
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACEXCEP_H__ */
diff --git a/source/include/acglobal.h b/source/include/acglobal.h
index 747fe5939..18d67e8a3 100644
--- a/source/include/acglobal.h
+++ b/source/include/acglobal.h
@@ -117,6 +117,8 @@
#define __ACGLOBAL_H__
+#pragma pack(push) /* Set default struct packing */
+
/*
* Ensure that the globals are actually defined and initialized only once.
*
@@ -603,4 +605,6 @@ ACPI_FILE ACPI_INIT_GLOBAL (AcpiGbl_DebugFile, NULL);
extern const AH_PREDEFINED_NAME AslPredefinedInfo[];
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACGLOBAL_H__ */
diff --git a/source/include/achware.h b/source/include/achware.h
index ed39a36e2..7ac74db73 100644
--- a/source/include/achware.h
+++ b/source/include/achware.h
@@ -117,6 +117,8 @@
#define __ACHWARE_H__
+#pragma pack(push) /* Set default struct packing */
+
/* Values for the _SST predefined method */
#define ACPI_SST_INDICATOR_OFF 0
@@ -296,4 +298,6 @@ AcpiHwDerivePciId (
ACPI_HANDLE PciRegion);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACHWARE_H__ */
diff --git a/source/include/acinterp.h b/source/include/acinterp.h
index fbe089061..3459af962 100644
--- a/source/include/acinterp.h
+++ b/source/include/acinterp.h
@@ -117,6 +117,8 @@
#define __ACINTERP_H__
+#pragma pack(push) /* Set default struct packing */
+
#define ACPI_WALK_OPERANDS (&(WalkState->Operands [WalkState->NumOperands -1]))
/* Macros for tables used for debug output */
@@ -795,4 +797,6 @@ AcpiExDataTableSpaceHandler (
void *HandlerContext,
void *RegionContext);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __INTERP_H__ */
diff --git a/source/include/aclocal.h b/source/include/aclocal.h
index e31aedce9..9c8cc99d7 100644
--- a/source/include/aclocal.h
+++ b/source/include/aclocal.h
@@ -117,6 +117,8 @@
#define __ACLOCAL_H__
+#pragma pack(push) /* Set default struct packing */
+
/* acpisrc:StructDefs -- for acpisrc conversion */
#define ACPI_SERIALIZED 0xFF
@@ -1421,4 +1423,6 @@ typedef struct ah_predefined_name
} AH_PREDEFINED_NAME;
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACLOCAL_H__ */
diff --git a/source/include/acmacros.h b/source/include/acmacros.h
index aa8bd563c..14c85efbe 100644
--- a/source/include/acmacros.h
+++ b/source/include/acmacros.h
@@ -117,6 +117,8 @@
#define __ACMACROS_H__
+#pragma pack(push) /* Set default struct packing */
+
/*
* Extract data using a pointer. Any more than a byte and we
* get into potential aligment issues -- see the STORE macros below.
@@ -505,4 +507,6 @@
#define ACPI_IS_OCTAL_DIGIT(d) (((char)(d) >= '0') && ((char)(d) <= '7'))
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* ACMACROS_H */
diff --git a/source/include/acnamesp.h b/source/include/acnamesp.h
index 883e9c41c..2a31cdd41 100644
--- a/source/include/acnamesp.h
+++ b/source/include/acnamesp.h
@@ -117,6 +117,8 @@
#define __ACNAMESP_H__
+#pragma pack(push) /* Set default struct packing */
+
/* To search the entire name space, pass this as SearchBase */
#define ACPI_NS_ALL ((ACPI_HANDLE)0)
@@ -607,4 +609,6 @@ void
AcpiNsTerminate (
void);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACNAMESP_H__ */
diff --git a/source/include/acobject.h b/source/include/acobject.h
index 534fe31c2..d890f96c8 100644
--- a/source/include/acobject.h
+++ b/source/include/acobject.h
@@ -116,6 +116,8 @@
#ifndef _ACOBJECT_H
#define _ACOBJECT_H
+#pragma pack(push) /* Set default struct packing */
+
/* acpisrc:StructDefs -- for acpisrc conversion */
@@ -653,6 +655,6 @@ typedef union acpi_descriptor
} ACPI_DESCRIPTOR;
-#pragma pack()
+#pragma pack(pop) /* Restore original struct packing */
#endif /* _ACOBJECT_H */
diff --git a/source/include/acoutput.h b/source/include/acoutput.h
index 2311c441c..4875a5f08 100644
--- a/source/include/acoutput.h
+++ b/source/include/acoutput.h
@@ -116,6 +116,8 @@
#ifndef __ACOUTPUT_H__
#define __ACOUTPUT_H__
+#pragma pack(push) /* Set default struct packing */
+
/*
* Debug levels and component IDs. These are used to control the
* granularity of the output of the ACPI_DEBUG_PRINT macro -- on a
@@ -536,4 +538,6 @@
#endif /* ACPI_DEBUG_OUTPUT */
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACOUTPUT_H__ */
diff --git a/source/include/acparser.h b/source/include/acparser.h
index 5827a8cc9..90df9c15e 100644
--- a/source/include/acparser.h
+++ b/source/include/acparser.h
@@ -118,6 +118,8 @@
#define __ACPARSER_H__
+#pragma pack(push) /* Set default struct packing */
+
#define OP_HAS_RETURN_VALUE 1
/* Variable number of arguments. This field must be 32 bits */
@@ -425,4 +427,6 @@ AcpiPsShow (
ACPI_PARSE_OBJECT *op);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACPARSER_H__ */
diff --git a/source/include/acpiosxf.h b/source/include/acpiosxf.h
index 00922c7eb..43e99ee48 100644
--- a/source/include/acpiosxf.h
+++ b/source/include/acpiosxf.h
@@ -122,6 +122,8 @@
#include "actypes.h"
+#pragma pack(push) /* Set default struct packing */
+
/* Types for AcpiOsExecute */
typedef enum
@@ -623,4 +625,6 @@ AcpiOsCloseDirectory (
#endif
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACPIOSXF_H__ */
diff --git a/source/include/acpixf.h b/source/include/acpixf.h
index 4e344387c..0c6c23299 100644
--- a/source/include/acpixf.h
+++ b/source/include/acpixf.h
@@ -126,6 +126,8 @@
#include "actbl.h"
#include "acbuffer.h"
+#pragma pack(push) /* Set default struct packing */
+
/*
* Globals that are publically available
*/
@@ -903,4 +905,6 @@ AcpiDebugPrintRaw (
...);
#endif
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACXFACE_H__ */
diff --git a/source/include/acpredef.h b/source/include/acpredef.h
index 5e8b00c50..f7bca7576 100644
--- a/source/include/acpredef.h
+++ b/source/include/acpredef.h
@@ -117,6 +117,8 @@
#define __ACPREDEF_H__
+#pragma pack(push) /* Set default struct packing */
+
/******************************************************************************
*
* Return Package types
@@ -1133,4 +1135,6 @@ static const ACPI_PREDEFINED_INFO AcpiGbl_ScopeNames[] = {
extern const ACPI_PREDEFINED_INFO AcpiGbl_ResourceNames[];
#endif
+#pragma pack(pop) /* Restore original struct packing */
+
#endif
diff --git a/source/include/acresrc.h b/source/include/acresrc.h
index d1366f081..db23891a2 100644
--- a/source/include/acresrc.h
+++ b/source/include/acresrc.h
@@ -122,6 +122,8 @@
#include "amlresrc.h"
+#pragma pack(push) /* Set default struct packing */
+
/*
* If possible, pack the following structures to byte alignment, since we
* don't care about performance for debug output. Two cases where we cannot
@@ -510,4 +512,6 @@ extern ACPI_RSDUMP_INFO AcpiRsDumpUartSerialBus[];
extern ACPI_RSDUMP_INFO AcpiRsDumpGeneralFlags[];
#endif
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACRESRC_H__ */
diff --git a/source/include/acrestyp.h b/source/include/acrestyp.h
index 9cf948bc7..9ff05217a 100644
--- a/source/include/acrestyp.h
+++ b/source/include/acrestyp.h
@@ -117,6 +117,8 @@
#define __ACRESTYP_H__
+#pragma pack(push) /* Set default struct packing */
+
/*
* Definitions for Resource Attributes
*/
@@ -769,4 +771,6 @@ typedef struct acpi_pci_routing_table
} ACPI_PCI_ROUTING_TABLE;
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACRESTYP_H__ */
diff --git a/source/include/acstruct.h b/source/include/acstruct.h
index ee4f989bb..e0f72528d 100644
--- a/source/include/acstruct.h
+++ b/source/include/acstruct.h
@@ -116,6 +116,9 @@
#ifndef __ACSTRUCT_H__
#define __ACSTRUCT_H__
+
+#pragma pack(push) /* Set default struct packing */
+
/* acpisrc:StructDefs -- for acpisrc conversion */
/*****************************************************************************
@@ -339,4 +342,6 @@ typedef struct acpi_walk_info
#define ACPI_DISPLAY_SHORT (UINT8) 2
+#pragma pack(pop) /* Restore original struct packing */
+
#endif
diff --git a/source/include/actables.h b/source/include/actables.h
index ed0e1b09a..8ec349c8e 100644
--- a/source/include/actables.h
+++ b/source/include/actables.h
@@ -117,6 +117,8 @@
#define __ACTABLES_H__
+#pragma pack(push) /* Set default struct packing */
+
ACPI_STATUS
AcpiAllocateRootTable (
UINT32 InitialTableCount);
@@ -266,4 +268,6 @@ ACPI_STATUS
AcpiTbParseRootTable (
ACPI_PHYSICAL_ADDRESS RsdpAddress);
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACTABLES_H__ */
diff --git a/source/include/actbl.h b/source/include/actbl.h
index b30066128..37d44d751 100644
--- a/source/include/actbl.h
+++ b/source/include/actbl.h
@@ -117,6 +117,8 @@
#define __ACTBL_H__
+#pragma pack(push) /* Set default struct packing */
+
/*******************************************************************************
*
* Fundamental ACPI tables
@@ -512,4 +514,6 @@ typedef struct acpi_table_desc
#define ACPI_FADT_V3_SIZE (UINT32) (ACPI_FADT_OFFSET (SleepControl))
#define ACPI_FADT_V5_SIZE (UINT32) (sizeof (ACPI_TABLE_FADT))
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACTBL_H__ */
diff --git a/source/include/actbl1.h b/source/include/actbl1.h
index 47106722c..24a51a37e 100644
--- a/source/include/actbl1.h
+++ b/source/include/actbl1.h
@@ -117,6 +117,8 @@
#define __ACTBL1_H__
+#pragma pack(push) /* Set default struct packing */
+
/*******************************************************************************
*
* Additional ACPI Tables (1)
@@ -1213,8 +1215,6 @@ typedef struct acpi_srat_x2apic_cpu_affinity
#define ACPI_SRAT_CPU_ENABLED (1) /* 00: Use affinity structure */
-/* Reset to default packing */
-
-#pragma pack()
+#pragma pack(pop) /* Restore original struct packing */
#endif /* __ACTBL1_H__ */
diff --git a/source/include/actbl2.h b/source/include/actbl2.h
index 2ae8ce3d1..5123a93ca 100644
--- a/source/include/actbl2.h
+++ b/source/include/actbl2.h
@@ -117,6 +117,8 @@
#define __ACTBL2_H__
+#pragma pack(push) /* Set default struct packing */
+
/*******************************************************************************
*
* Additional ACPI Tables (2)
@@ -1488,8 +1490,6 @@ typedef struct acpi_table_wdrt
} ACPI_TABLE_WDRT;
-/* Reset to default packing */
-
-#pragma pack()
+#pragma pack(pop) /* Restore original struct packing */
#endif /* __ACTBL2_H__ */
diff --git a/source/include/actbl3.h b/source/include/actbl3.h
index efec7e8fb..5ab1ff56f 100644
--- a/source/include/actbl3.h
+++ b/source/include/actbl3.h
@@ -117,6 +117,8 @@
#define __ACTBL3_H__
+#pragma pack(push) /* Set default struct packing */
+
/*******************************************************************************
*
* Additional ACPI Tables (3)
@@ -804,8 +806,6 @@ typedef struct acpi_tpm2_control
} ACPI_TPM2_CONTROL;
-/* Reset to default packing */
-
-#pragma pack()
+#pragma pack(pop) /* Restore original struct packing */
#endif /* __ACTBL3_H__ */
diff --git a/source/include/actypes.h b/source/include/actypes.h
index a02cd108d..b2dc8a746 100644
--- a/source/include/actypes.h
+++ b/source/include/actypes.h
@@ -116,6 +116,8 @@
#ifndef __ACTYPES_H__
#define __ACTYPES_H__
+#pragma pack(push) /* Set default struct packing */
+
/* acpisrc:StructDefs -- for acpisrc conversion */
/*
@@ -1387,4 +1389,6 @@ typedef struct acpi_memory_list
#define ACPI_OSI_WIN_8 0x0C
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __ACTYPES_H__ */
diff --git a/source/include/acutils.h b/source/include/acutils.h
index f1c2c8bd3..1bf431940 100644
--- a/source/include/acutils.h
+++ b/source/include/acutils.h
@@ -117,6 +117,8 @@
#define _ACUTILS_H
+#pragma pack(push) /* Set default struct packing */
+
extern const UINT8 AcpiGbl_ResourceAmlSizes[];
extern const UINT8 AcpiGbl_ResourceAmlSerialBusSizes[];
@@ -1171,4 +1173,7 @@ AcpiUtMethodError (
const char *Path,
ACPI_STATUS LookupStatus);
+
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* _ACUTILS_H */
diff --git a/source/include/amlcode.h b/source/include/amlcode.h
index 5eaf30c60..8cf250cb5 100644
--- a/source/include/amlcode.h
+++ b/source/include/amlcode.h
@@ -118,6 +118,9 @@
#ifndef __AMLCODE_H__
#define __AMLCODE_H__
+#pragma pack(push) /* Set default struct packing */
+
+
/* primary opcodes */
#define AML_NULL_CHAR (UINT16) 0x00
@@ -581,4 +584,6 @@ typedef enum
#define AML_METHOD_SYNC_LEVEL 0xF0
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* __AMLCODE_H__ */
diff --git a/source/include/amlresrc.h b/source/include/amlresrc.h
index 3fcd9edd6..c54ae1f4d 100644
--- a/source/include/amlresrc.h
+++ b/source/include/amlresrc.h
@@ -119,6 +119,8 @@
#define __AMLRESRC_H
+#pragma pack(push) /* Set default struct packing */
+
/*
* Resource descriptor tags, as defined in the ACPI specification.
* Used to symbolically reference fields within a descriptor.
@@ -646,4 +648,7 @@ typedef union aml_resource
} AML_RESOURCE;
+
+#pragma pack(pop) /* Restore original struct packing */
+
#endif
diff --git a/source/tools/acpiexec/aecommon.h b/source/tools/acpiexec/aecommon.h
index 5aac8f82a..599abbc97 100644
--- a/source/tools/acpiexec/aecommon.h
+++ b/source/tools/acpiexec/aecommon.h
@@ -135,6 +135,8 @@
#include <string.h>
#include <signal.h>
+#pragma pack(push) /* Set default struct packing */
+
extern BOOLEAN AcpiGbl_IgnoreErrors;
extern UINT8 AcpiGbl_RegionFillValue;
extern UINT8 AcpiGbl_UseHwReducedFadt;
@@ -268,4 +270,7 @@ AeGlobalEventHandler (
UINT32 EventNumber,
void *Context);
+
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* _AECOMMON */