~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/x86/entry/vdso/vdso-layout.lds.S

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/x86/entry/vdso/vdso-layout.lds.S (Version linux-6.12-rc7) and /arch/i386/entry/vdso/vdso-layout.lds.S (Version linux-5.19.17)


  1 /* SPDX-License-Identifier: GPL-2.0 */            
  2 #include <asm/vdso.h>                             
  3                                                   
  4 /*                                                
  5  * Linker script for vDSO.  This is an ELF sha    
  6  * its virtual address, and with only one read    
  7  * This script controls its layout.               
  8  */                                               
  9                                                   
 10 SECTIONS                                          
 11 {                                                 
 12         /*                                        
 13          * User/kernel shared data is before t    
 14          * uglier than putting it after the vD    
 15          * non-allocatable things that dangle     
 16          * segment.                               
 17          */                                       
 18                                                   
 19         vvar_start = . - 4 * PAGE_SIZE;           
 20         vvar_page  = vvar_start;                  
 21                                                   
 22         /* Place all vvars at the offsets in a    
 23 #define EMIT_VVAR(name, offset) vvar_ ## name     
 24 #include <asm/vvar.h>                             
 25 #undef EMIT_VVAR                                  
 26                                                   
 27         pvclock_page = vvar_start + PAGE_SIZE;    
 28         hvclock_page = vvar_start + 2 * PAGE_S    
 29         timens_page  = vvar_start + 3 * PAGE_S    
 30                                                   
 31 #undef _ASM_X86_VVAR_H                            
 32         /* Place all vvars in timens too at th    
 33 #define EMIT_VVAR(name, offset) timens_ ## nam    
 34 #include <asm/vvar.h>                             
 35 #undef EMIT_VVAR                                  
 36                                                   
 37         . = SIZEOF_HEADERS;                       
 38                                                   
 39         .hash           : { *(.hash) }            
 40         .gnu.hash       : { *(.gnu.hash) }        
 41         .dynsym         : { *(.dynsym) }          
 42         .dynstr         : { *(.dynstr) }          
 43         .gnu.version    : { *(.gnu.version) }     
 44         .gnu.version_d  : { *(.gnu.version_d)     
 45         .gnu.version_r  : { *(.gnu.version_r)     
 46                                                   
 47         .dynamic        : { *(.dynamic) }         
 48                                                   
 49         .rodata         : {                       
 50                 *(.rodata*)                       
 51                 *(.data*)                         
 52                 *(.sdata*)                        
 53                 *(.got.plt) *(.got)               
 54                 *(.gnu.linkonce.d.*)              
 55                 *(.bss*)                          
 56                 *(.dynbss*)                       
 57                 *(.gnu.linkonce.b.*)              
 58         }                                         
 59                                                   
 60         /*                                        
 61          * Discard .note.gnu.property sections    
 62          * different alignment requirement fro    
 63          */                                       
 64         /DISCARD/ : {                             
 65                 *(.note.gnu.property)             
 66         }                                         
 67         .note           : { *(.note.*) }          
 68                                                   
 69         .eh_frame_hdr   : { *(.eh_frame_hdr) }    
 70         .eh_frame       : { KEEP (*(.eh_frame)    
 71                                                   
 72                                                   
 73         /*                                        
 74          * Text is well-separated from actual     
 75          * stuff that isn't used at runtime in    
 76          */                                       
 77                                                   
 78         .text           : {                       
 79                 *(.text*)                         
 80         }                                         
 81                                                   
 82                                                   
 83                                                   
 84         .altinstructions        : { *(.altinst    
 85         .altinstr_replacement   : { *(.altinst    
 86                                                   
 87         __ex_table              : { *(__ex_tab    
 88                                                   
 89         /DISCARD/ : {                             
 90                 *(.discard)                       
 91                 *(.discard.*)                     
 92                 *(__bug_table)                    
 93         }                                         
 94 }                                                 
 95                                                   
 96 /*                                                
 97  * Very old versions of ld do not recognize th    
 98  */                                               
 99 #define PT_GNU_EH_FRAME 0x6474e550                
100                                                   
101 /*                                                
102  * We must supply the ELF program headers expl    
103  * PT_LOAD segment, and set the flags explicit    
104  */                                               
105 PHDRS                                             
106 {                                                 
107         text            PT_LOAD         FLAGS(    
108         dynamic         PT_DYNAMIC      FLAGS(    
109         note            PT_NOTE         FLAGS(    
110         eh_frame_hdr    PT_GNU_EH_FRAME;          
111 }                                                 
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php