ACPICA: 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.

It is reported that the #pragma pack(push/pop) directives are not supported
by the specific GCCs, but this patch still doesn't affect kernel build
as there are already #pragma pack([1]) directives used in the old ACPICA
headers, which means there shouldn't be GCCs that are currently used to
compile the ACPI kernels do not support #pragma pack() directives.

References: https://bugs.acpica.org/show_bug.cgi?id=1058
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Bob Moore
2014-02-26 10:28:32 +08:00
gecommit door Rafael J. Wysocki
bovenliggende 4dde507fc1
commit 4ac4c5fad8
30 gewijzigde bestanden met toevoegingen van 115 en 10 verwijderingen

Bestand weergeven

@@ -44,6 +44,8 @@
#ifndef __ACINTERP_H__
#define __ACINTERP_H__
#pragma pack(push) /* Set default struct packing */
#define ACPI_WALK_OPERANDS (&(walk_state->operands [walk_state->num_operands -1]))
/* Macros for tables used for debug output */
@@ -531,4 +533,6 @@ acpi_ex_data_table_space_handler(u32 function,
u64 *value,
void *handler_context, void *region_context);
#pragma pack(pop) /* Restore original struct packing */
#endif /* __INTERP_H__ */