summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/acmacros.h
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2014-02-26 03:28:32 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2014-02-27 00:45:59 +0100
commit4ac4c5fad8a320f75cb84543403fb8bae5ad2254 (patch)
tree93b6c6a9dbc086412a1c2603cd5b47cc4d322e1f /drivers/acpi/acpica/acmacros.h
parentACPICA: Add boot option to disable auto return object repair (diff)
downloadlinux-4ac4c5fad8a320f75cb84543403fb8bae5ad2254.tar.xz
linux-4ac4c5fad8a320f75cb84543403fb8bae5ad2254.zip
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>
Diffstat (limited to 'drivers/acpi/acpica/acmacros.h')
-rw-r--r--drivers/acpi/acpica/acmacros.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/acmacros.h b/drivers/acpi/acpica/acmacros.h
index 4bceb11c7380..9b0ce226bf5d 100644
--- a/drivers/acpi/acpica/acmacros.h
+++ b/drivers/acpi/acpica/acmacros.h
@@ -44,6 +44,8 @@
#ifndef __ACMACROS_H__
#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.
@@ -427,4 +429,6 @@
#define ACPI_IS_OCTAL_DIGIT(d) (((char)(d) >= '0') && ((char)(d) <= '7'))
+#pragma pack(pop) /* Restore original struct packing */
+
#endif /* ACMACROS_H */