git: 815165be201e - main - linux(4): Remove function prototypes from the vDSO.

Dmitry Chagin dchagin at FreeBSD.org
Tue Jul 20 07:10:22 UTC 2021


The branch main has been updated by dchagin:

URL: https://cgit.FreeBSD.org/src/commit/?id=815165be201e49d118e93dec6c257cd63b69d158

commit 815165be201e49d118e93dec6c257cd63b69d158
Author:     Dmitry Chagin <dchagin at FreeBSD.org>
AuthorDate: 2021-07-20 06:52:08 +0000
Commit:     Dmitry Chagin <dchagin at FreeBSD.org>
CommitDate: 2021-07-20 06:52:08 +0000

    linux(4): Remove function prototypes from the vDSO.
    
    In preparation for vDSO code revision get rid of incomplete vDSO methods
    from locore, but leave .note.Linux section commented out.
    .note.Linux section is used by glibc rtld to get the kernel version, that
    saves one system call call. I'll try to implement it later, if figure out
    how to use it with jails.
    
    MFC after:      2 weeks
---
 sys/amd64/linux/linux_locore.asm | 26 --------------------------
 sys/arm64/linux/linux_locore.asm | 17 -----------------
 2 files changed, 43 deletions(-)

diff --git a/sys/amd64/linux/linux_locore.asm b/sys/amd64/linux/linux_locore.asm
index 4e358f583a45..dd482cb87cc8 100644
--- a/sys/amd64/linux/linux_locore.asm
+++ b/sys/amd64/linux/linux_locore.asm
@@ -32,32 +32,6 @@ ENTRY(linux_rt_sigcode)
 .endrtsigcode:
 0:	jmp	0b
 
-ENTRY(__vdso_clock_gettime)
-	movq	$LINUX_SYS_linux_clock_gettime,%rax
-	syscall
-	ret
-.weak clock_gettime
-.set clock_gettime, __vdso_clock_gettime
-
-ENTRY(__vdso_time)
-	movq	$LINUX_SYS_linux_time,%rax
-	syscall
-	ret
-.weak time
-.set time, __vdso_time
-
-ENTRY(__vdso_gettimeofday)
-	movq	$LINUX_SYS_gettimeofday,%rax
-	syscall
-	ret
-.weak gettimeofday
-.set gettimeofday, __vdso_gettimeofday
-
-ENTRY(__vdso_getcpu)
-	movq	$-38,%rax	/* not implemented */
-	ret
-.weak getcpu
-.set getcpu, __vdso_getcpu
 
 #if 0
 	.section .note.Linux, "a", at note
diff --git a/sys/arm64/linux/linux_locore.asm b/sys/arm64/linux/linux_locore.asm
index 5f0729b363e8..24a48d74f7b5 100644
--- a/sys/arm64/linux/linux_locore.asm
+++ b/sys/arm64/linux/linux_locore.asm
@@ -48,20 +48,3 @@ ENTRY(__kernel_rt_sigreturn)
 	brk #0 /* LINUXTODO: implement __kernel_rt_sigreturn */
 	ret
 END(__kernel_rt_sigreturn)
-
-ENTRY(__kernel_gettimeofday)
-	ldr	x8, =LINUX_SYS_gettimeofday
-	svc	#0
-	ret
-END(__kernel_gettimeofday)
-
-ENTRY(__kernel_clock_gettime)
-	ldr	x8, =LINUX_SYS_linux_clock_gettime
-	svc	#0
-	ret
-END(__kernel_clock_gettime)
-
-ENTRY(__kernel_clock_getres)
-	brk #0 /* LINUXTODO: implement __kernel_clock_getres */
-	ret
-END(__kernel_clock_getres)


More information about the dev-commits-src-main mailing list