51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| --- a/arch/um/kernel/dyn.lds.S
 | |
| +++ b/arch/um/kernel/dyn.lds.S
 | |
| @@ -50,8 +50,21 @@ SECTIONS
 | |
|    .rela.got       : { *(.rela.got) }
 | |
|    .rel.bss        : { *(.rel.bss .rel.bss.* .rel.gnu.linkonce.b.*) }
 | |
|    .rela.bss       : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) }
 | |
| -  .rel.plt        : { *(.rel.plt) }
 | |
| -  .rela.plt       : { *(.rela.plt) }
 | |
| +  /* Deal with multilib libc */
 | |
| +  .rel.plt        :
 | |
| +  {
 | |
| +    *(.rel.plt)
 | |
| +    PROVIDE_HIDDEN (__rel_iplt_start = .);
 | |
| +    *(.rel.iplt)
 | |
| +    PROVIDE_HIDDEN (__rel_iplt_end = .);
 | |
| +  }
 | |
| +  .rela.plt       :
 | |
| +  {
 | |
| +    *(.rela.plt)
 | |
| +    PROVIDE_HIDDEN (__rela_iplt_start = .);
 | |
| +    *(.rela.iplt)
 | |
| +    PROVIDE_HIDDEN (__rela_iplt_end = .);
 | |
| +  }
 | |
|    .init           : {
 | |
|      KEEP (*(.init))
 | |
|    } =0x90909090
 | |
| --- a/arch/um/kernel/uml.lds.S
 | |
| +++ b/arch/um/kernel/uml.lds.S
 | |
| @@ -35,6 +35,21 @@ SECTIONS
 | |
|      *(.gnu.warning)
 | |
|      *(.gnu.linkonce.t*)
 | |
|    }
 | |
| +  /* Deal with multilib libc */
 | |
| +  .rel.plt        :
 | |
| +  {
 | |
| +    *(.rel.plt)
 | |
| +    PROVIDE_HIDDEN (__rel_iplt_start = .);
 | |
| +    *(.rel.iplt)
 | |
| +    PROVIDE_HIDDEN (__rel_iplt_end = .);
 | |
| +  }
 | |
| +  .rela.plt       :
 | |
| +  {
 | |
| +    *(.rela.plt)
 | |
| +    PROVIDE_HIDDEN (__rela_iplt_start = .);
 | |
| +    *(.rela.iplt)
 | |
| +    PROVIDE_HIDDEN (__rela_iplt_end = .);
 | |
| +  }
 | |
|  
 | |
|    . = ALIGN(PAGE_SIZE);
 | |
|    .syscall_stub : {
 |