summaryrefslogtreecommitdiffhomepage
path: root/vdso/vdso.cc
diff options
context:
space:
mode:
authorBin Lu <bin.lu@arm.com>2020-02-11 02:35:39 -0500
committerBin Lu <bin.lu@arm.com>2020-04-17 05:07:59 -0400
commitfe001edb14e6e879ab4ebca0d2ac71d770ac8cce (patch)
tree53af5c22b9522bc5b9643a9ab660ea315c1b7e52 /vdso/vdso.cc
parent0dd9ee0d1e08d4207f78ab032a5fde171343c4b4 (diff)
Arm64: VDSO support for signal
The vdso is enabled, so we can use the sigreturn trampolines the vdso provides in arch module. Signed-off-by: Bin Lu <bin.lu@arm.com>
Diffstat (limited to 'vdso/vdso.cc')
-rw-r--r--vdso/vdso.cc12
1 files changed, 6 insertions, 6 deletions
diff --git a/vdso/vdso.cc b/vdso/vdso.cc
index 8bb80a7a4..62f59766d 100644
--- a/vdso/vdso.cc
+++ b/vdso/vdso.cc
@@ -69,6 +69,12 @@ int __common_gettimeofday(struct timeval* tv, struct timezone* tz) {
}
} // namespace
+// __kernel_rt_sigreturn() implements rt_sigreturn()
+extern "C" void __kernel_rt_sigreturn(unsigned long unused) {
+ // No optimizations yet, just make the real system call.
+ sys_rt_sigreturn();
+}
+
#if __x86_64__
// __vdso_clock_gettime() implements clock_gettime()
@@ -139,12 +145,6 @@ extern "C" int __kernel_clock_getres(clockid_t clock, struct timespec* res) {
return ret;
}
-// __kernel_rt_sigreturn() implements gettimeofday()
-extern "C" int __kernel_rt_sigreturn(unsigned long unused) {
- // No optimizations yet, just make the real system call.
- return sys_rt_sigreturn();
-}
-
#else
#error "unsupported architecture"
#endif