 1713ce7c43
			
		
	
	
	1713ce7c43
	
	
	
		
			
			Define the layout of the data structure shared between kernel and userspace. Track the vdso address in the mm_context; needed for communicating AT_SYSINFO_EHDR to the ELF loader. Add declarations for arm_install_vdso; implementation is in a following patch. Define AT_SYSINFO_EHDR, and, if CONFIG_VDSO=y, report the vdso shared object address via the ELF auxiliary vector. Note - this adds the AT_SYSINFO_EHDR in a new user-visible header asm/auxvec.h; this is consistent with other architectures. Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			503 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			503 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef __ASM_VDSO_H
 | |
| #define __ASM_VDSO_H
 | |
| 
 | |
| #ifdef __KERNEL__
 | |
| 
 | |
| #ifndef __ASSEMBLY__
 | |
| 
 | |
| struct mm_struct;
 | |
| 
 | |
| #ifdef CONFIG_VDSO
 | |
| 
 | |
| void arm_install_vdso(struct mm_struct *mm, unsigned long addr);
 | |
| 
 | |
| extern char vdso_start, vdso_end;
 | |
| 
 | |
| extern unsigned int vdso_total_pages;
 | |
| 
 | |
| #else /* CONFIG_VDSO */
 | |
| 
 | |
| static inline void arm_install_vdso(struct mm_struct *mm, unsigned long addr)
 | |
| {
 | |
| }
 | |
| 
 | |
| #define vdso_total_pages 0
 | |
| 
 | |
| #endif /* CONFIG_VDSO */
 | |
| 
 | |
| #endif /* __ASSEMBLY__ */
 | |
| 
 | |
| #endif /* __KERNEL__ */
 | |
| 
 | |
| #endif /* __ASM_VDSO_H */
 |