__stop___ex_table = .;
        }
 
-       BUG_TABLE
-
        RODATA
 
        . = ALIGN(THREAD_SIZE);
 
        _etext = .;
 
        RODATA
-       BUG_TABLE
 
        /* writeable */
        /* Make sure this is page aligned so
 
 
        NOTES
 
-       BUG_TABLE
-
 /*
  * Init sections discarded at runtime
  */
 
        _etext = .;             /* End of text section */
 
        NOTES :text :note
-       BUG_TABLE :text
 
        RODATA
 
 
 
        _etext = .;                     /* End of text section */
 
-       BUG_TABLE
        NOTES
        RO_DATA(PAGE_SIZE)
 
 
 
        _etext = .;                     /* End of text section */
 
-       BUG_TABLE
        NOTES 
        RO_DATA(PAGE_SIZE)
 
 
        _etext = .;                     /* End of text section */
   } :text = 0x9090
 
+  NOTES :text :note
+
   . = ALIGN(16);               /* Exception table */
   __ex_table : AT(ADDR(__ex_table) - LOAD_OFFSET) {
        __start___ex_table = .;
         *(__ex_table)
        __stop___ex_table = .;
-  }
-
-  NOTES :text :note
-
-  BUG_TABLE :text
+  } :text = 0x9090
 
   . = ALIGN(4);
   .tracedata : AT(ADDR(.tracedata) - LOAD_OFFSET) {
 
        data PT_LOAD FLAGS(7);  /* RWE */
        user PT_LOAD FLAGS(7);  /* RWE */
        data.init PT_LOAD FLAGS(7);     /* RWE */
-       note PT_NOTE FLAGS(4);  /* R__ */
+       note PT_NOTE FLAGS(0);  /* ___ */
 }
 SECTIONS
 {
        _etext = .;             /* End of text section */
   } :text = 0x9090
 
+  NOTES :text :note
+
   . = ALIGN(16);               /* Exception table */
   __ex_table : AT(ADDR(__ex_table) - LOAD_OFFSET) {
        __start___ex_table = .;
         *(__ex_table)
        __stop___ex_table = .;
-  }
-
-  NOTES :text :note
-
-  BUG_TABLE :text
+  } :text = 0x9090
 
   RODATA
 
 
                *(.rodata1)                                             \
        }                                                               \
                                                                        \
+       BUG_TABLE                                                       \
+                                                                       \
        /* PCI quirks */                                                \
        .pci_fixup        : AT(ADDR(.pci_fixup) - LOAD_OFFSET) {        \
                VMLINUX_SYMBOL(__start_pci_fixups_early) = .;           \
                .stab.indexstr 0 : { *(.stab.indexstr) }                \
                .comment 0 : { *(.comment) }
 
+#ifdef CONFIG_GENERIC_BUG
 #define BUG_TABLE                                                      \
        . = ALIGN(8);                                                   \
        __bug_table : AT(ADDR(__bug_table) - LOAD_OFFSET) {             \
                *(__bug_table)                                          \
                __stop___bug_table = .;                                 \
        }
+#else
+#define BUG_TABLE
+#endif
 
 #define NOTES                                                          \
        .notes : AT(ADDR(.notes) - LOAD_OFFSET) {                       \