x86/Sandy Bridge: mark arrays in __init functions as __initconst
authorH. Peter Anvin <hpa@linux.intel.com>
Mon, 14 Jan 2013 04:36:39 +0000 (20:36 -0800)
committerH. Peter Anvin <hpa@linux.intel.com>
Mon, 14 Jan 2013 04:36:39 +0000 (20:36 -0800)
Mark static arrays as __initconst so they get removed when the init
sections are flushed.

Reported-by: Mathias Krause <minipli@googlemail.com>
Link: http://lkml.kernel.org/r/75F4BEE6-CB0E-4426-B40B-697451677738@googlemail.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
arch/x86/kernel/setup.c

index 9dcb325..18182d1 100644 (file)
@@ -614,7 +614,7 @@ static bool __init snb_gfx_workaround_needed(void)
 {
        int i;
        u16 vendor, devid;
-       static const u16 snb_ids[] = {
+       static const __initconst u16 snb_ids[] = {
                0x0102,
                0x0112,
                0x0122,
@@ -646,7 +646,7 @@ static bool __init snb_gfx_workaround_needed(void)
  */
 static void __init trim_snb_memory(void)
 {
-       static const unsigned long bad_pages[] = {
+       static const __initconst unsigned long bad_pages[] = {
                0x20050000,
                0x20110000,
                0x20130000,