 f02e8a6596
			
		
	
	
	f02e8a6596
	
	
	
		
			
			This patch places every exported symbol in its own section (i.e. "___ksymtab+printk"). Thus the linker will use its SORT() directive to sort and finally merge all symbol in the right and final section (i.e. "__ksymtab"). The symbol prefixed archs use an underscore as prefix for symbols. To avoid collision we use a different character to create the temporary section names. This work was supported by a hardware donation from the CE Linux Forum. Signed-off-by: Alessio Igor Bogani <abogani@kernel.org> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (folded in '+' fixup) Tested-by: Dirk Behme <dirk.behme@googlemail.com>
		
			
				
	
	
		
			19 lines
		
	
	
	
		
			737 B
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
	
		
			737 B
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| /*
 | |
|  * Common module linker script, always used when linking a module.
 | |
|  * Archs are free to supply their own linker scripts.  ld will
 | |
|  * combine them automatically.
 | |
|  */
 | |
| SECTIONS {
 | |
| 	/DISCARD/ : { *(.discard) }
 | |
| 
 | |
| 	__ksymtab		: { *(SORT(___ksymtab+*)) }
 | |
| 	__ksymtab_gpl		: { *(SORT(___ksymtab_gpl+*)) }
 | |
| 	__ksymtab_unused	: { *(SORT(___ksymtab_unused+*)) }
 | |
| 	__ksymtab_unused_gpl	: { *(SORT(___ksymtab_unused_gpl+*)) }
 | |
| 	__ksymtab_gpl_future	: { *(SORT(___ksymtab_gpl_future+*)) }
 | |
| 	__kcrctab		: { *(SORT(___kcrctab+*)) }
 | |
| 	__kcrctab_gpl		: { *(SORT(___kcrctab_gpl+*)) }
 | |
| 	__kcrctab_unused	: { *(SORT(___kcrctab_unused+*)) }
 | |
| 	__kcrctab_unused_gpl	: { *(SORT(___kcrctab_unused_gpl+*)) }
 | |
| 	__kcrctab_gpl_future	: { *(SORT(___kcrctab_gpl_future+*)) }
 | |
| }
 |