summaryrefslogtreecommitdiffstats
path: root/lib/libc/amd64/sys/reboot.S
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/amd64/sys/reboot.S')
-rw-r--r--lib/libc/amd64/sys/reboot.S16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/libc/amd64/sys/reboot.S b/lib/libc/amd64/sys/reboot.S
index 450a65e..0ed4329 100644
--- a/lib/libc/amd64/sys/reboot.S
+++ b/lib/libc/amd64/sys/reboot.S
@@ -42,5 +42,19 @@ __FBSDID("$FreeBSD$");
#include "SYS.h"
-SYSCALL(reboot)
+ .weak _reboot
+ .set _reboot,__sys_reboot
+ .weak reboot
+ .set reboot,__sys_reboot
+ENTRY(__sys_reboot)
+ mov $SYS_reboot,%rax
+ KERNCALL
+ jb 1f
iretq
+1:
+#ifdef PIC
+ movq PIC_GOT(HIDENAME(cerror)),%rdx
+ jmp *%rdx
+#else
+ jmp HIDENAME(cerror)
+#endif
OpenPOWER on IntegriCloud