Changeset 17186


Ignore:
Timestamp:
2009-08-09T03:55:13+02:00 (7 years ago)
Author:
nbd
Message:

fix the kernel symbol export patch for arm/powerpc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/generic-2.6/patches-2.6.30/028-module_exports.patch

    r17181 r17186  
    11--- a/include/asm-generic/vmlinux.lds.h 
    22+++ b/include/asm-generic/vmlinux.lds.h 
    3 @@ -4,6 +4,18 @@ 
     3@@ -4,6 +4,27 @@ 
    44 #define LOAD_OFFSET 0 
    55 #endif 
    66  
    77+#ifndef SYMTAB_KEEP_STR 
    8 +#define SYMTAB_KEEP_STR *(__ksymtab_strings.*) 
     8+#define SYMTAB_KEEP_STR *(__ksymtab_strings*) 
     9+#define SYMTAB_DISCARD_STR 
     10+#else 
     11+#define SYMTAB_DISCARD_STR *(__ksymtab_strings*) 
    912+#endif 
    1013+ 
    1114+#ifndef SYMTAB_KEEP 
    12 +#define SYMTAB_KEEP *(__ksymtab.*) 
     15+#define SYMTAB_KEEP *(__ksymtab*) 
     16+#define SYMTAB_DISCARD 
     17+#else 
     18+#define SYMTAB_DISCARD *(__ksymtab*) 
    1319+#endif 
    1420+ 
    1521+#ifndef SYMTAB_KEEP_GPL 
    16 +#define SYMTAB_KEEP_GPL *(__ksymtab_gpl.*) 
     22+#define SYMTAB_KEEP_GPL *(__ksymtab_gpl*) 
     23+#define SYMTAB_DISCARD_GPL 
     24+#else 
     25+#define SYMTAB_DISCARD_GPL *(__ksymtab_gpl*) 
    1726+#endif 
    1827+ 
     
    2029 #define VMLINUX_SYMBOL(_sym_) _sym_ 
    2130 #endif 
    22 @@ -176,35 +188,35 @@ 
     31@@ -176,35 +197,35 @@ 
    2332        /* Kernel symbol table: Normal symbols */                       \ 
    2433        __ksymtab         : AT(ADDR(__ksymtab) - LOAD_OFFSET) {         \ 
     
    4150                VMLINUX_SYMBOL(__start___ksymtab_unused) = .;           \ 
    4251-               *(__ksymtab_unused)                                     \ 
    43 +               *(__ksymtab_unused.*)                                   \ 
     52+               *(__ksymtab_unused*)                                    \ 
    4453                VMLINUX_SYMBOL(__stop___ksymtab_unused) = .;            \ 
    4554        }                                                               \ 
     
    4958                VMLINUX_SYMBOL(__start___ksymtab_unused_gpl) = .;       \ 
    5059-               *(__ksymtab_unused_gpl)                                 \ 
    51 +               *(__ksymtab_unused_gpl.*)                               \ 
     60+               *(__ksymtab_unused_gpl*)                                \ 
    5261                VMLINUX_SYMBOL(__stop___ksymtab_unused_gpl) = .;        \ 
    5362        }                                                               \ 
     
    5766                VMLINUX_SYMBOL(__start___ksymtab_gpl_future) = .;       \ 
    5867-               *(__ksymtab_gpl_future)                                 \ 
    59 +               *(__ksymtab_gpl_future.*)                               \ 
     68+               *(__ksymtab_gpl_future*)                                \ 
    6069                VMLINUX_SYMBOL(__stop___ksymtab_gpl_future) = .;        \ 
    6170        }                                                               \ 
    6271                                                                        \ 
    63 @@ -245,7 +257,13 @@ 
     72@@ -245,7 +266,13 @@ 
    6473                                                                        \ 
    6574        /* Kernel symbol table: strings */                              \ 
     
    116125 # The asm symlink changes when $(ARCH) changes. 
    117126 # Detect this and ask user to run make mrproper 
     127--- a/arch/arm/kernel/vmlinux.lds.S 
     128+++ b/arch/arm/kernel/vmlinux.lds.S 
     129@@ -78,18 +78,6 @@ SECTIONS 
     130 #endif 
     131        } 
     132  
     133-       /DISCARD/ : {                   /* Exit code and data           */ 
     134-               EXIT_TEXT 
     135-               EXIT_DATA 
     136-               *(.exitcall.exit) 
     137-               *(.ARM.exidx.exit.text) 
     138-               *(.ARM.extab.exit.text) 
     139-#ifndef CONFIG_MMU 
     140-               *(.fixup) 
     141-               *(__ex_table) 
     142-#endif 
     143-       } 
     144- 
     145        .text : {                       /* Real text segment            */ 
     146                _text = .;              /* Text and read-only data      */ 
     147                        __exception_text_start = .; 
     148@@ -194,6 +182,20 @@ SECTIONS 
     149                *(COMMON) 
     150                _end = .; 
     151        } 
     152+ 
     153+       /DISCARD/ : {                   /* Exit code and data           */ 
     154+               EXIT_TEXT 
     155+               EXIT_DATA 
     156+               *(.discard) 
     157+               *(.exitcall.exit) 
     158+               *(.ARM.exidx.exit.text) 
     159+               *(.ARM.extab.exit.text) 
     160+#ifndef CONFIG_MMU 
     161+               *(.fixup) 
     162+               *(__ex_table) 
     163+#endif 
     164+       } 
     165+ 
     166                                        /* Stabs debugging sections.    */ 
     167        .stab 0 : { *(.stab) } 
     168        .stabstr 0 : { *(.stabstr) } 
     169--- a/arch/powerpc/kernel/vmlinux.lds.S 
     170+++ b/arch/powerpc/kernel/vmlinux.lds.S 
     171@@ -37,12 +37,6 @@ jiffies = jiffies_64 + 4; 
     172 #endif 
     173 SECTIONS 
     174 { 
     175-       /* Sections to be discarded. */ 
     176-       /DISCARD/ : { 
     177-       *(.exitcall.exit) 
     178-       EXIT_DATA 
     179-       } 
     180- 
     181        . = KERNELBASE; 
     182  
     183 /* 
     184@@ -295,6 +289,12 @@ SECTIONS 
     185                __bss_stop = .; 
     186        } 
     187  
     188+       /* Sections to be discarded. */ 
     189+       /DISCARD/ : { 
     190+       *(.exitcall.exit) 
     191+       EXIT_DATA 
     192+       } 
     193+ 
     194        . = ALIGN(PAGE_SIZE); 
     195        _end = . ; 
     196        PROVIDE32 (end = .); 
Note: See TracChangeset for help on using the changeset viewer.