Index: uspace/lib/c/arch/abs32le/src/fibril.c
===================================================================
--- uspace/lib/c/arch/abs32le/src/fibril.c	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/abs32le/src/fibril.c	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -33,5 +33,5 @@
 #include <stdbool.h>
 
-int setjmp(context_t *ctx)
+int __setjmp(context_t *ctx)
 {
 	return 0;
Index: uspace/lib/c/arch/amd64/src/fibril.S
===================================================================
--- uspace/lib/c/arch/amd64/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/amd64/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -35,7 +35,7 @@
 #
 # Save CPU context to context_t variable
-# pointed by the 1st argument. Returns 0 in EAX.
+# pointed by the 1st argument. Returns 0 in RAX.
 #
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	movq (%rsp), %rdx     # the caller's return %eip
 
@@ -54,12 +54,12 @@
 	movq %rax, CONTEXT_OFFSET_TLS(%rdi)
 
-	xorq %rax, %rax                      # setjmp returns 0
+	xorq %rax, %rax                      # __setjmp returns 0
 	ret
-FUNCTION_END(setjmp)
+FUNCTION_END(__setjmp)
 
 ## Restore current CPU context
 #
 # Restore CPU context from context_t variable
-# pointed by the 1st argument. Returns RSI in EAX.
+# pointed by the 1st argument. Returns second argument in RAX.
 #
 FUNCTION_BEGIN(__longjmp)
Index: uspace/lib/c/arch/arm32/src/fibril.S
===================================================================
--- uspace/lib/c/arch/arm32/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/arm32/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -31,5 +31,5 @@
 .text
 
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	stmia r0!, {sp, lr}
 	stmia r0!, {r4-r11}
@@ -38,5 +38,5 @@
 	mov r0, #0
 	mov pc, lr
-FUNCTION_END(setjmp)
+FUNCTION_END(__setjmp)
 
 FUNCTION_BEGIN(__longjmp)
Index: uspace/lib/c/arch/ia32/src/fibril.S
===================================================================
--- uspace/lib/c/arch/ia32/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/ia32/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -37,5 +37,5 @@
 # pointed by the 1st argument. Returns 0 in EAX.
 #
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	movl 0(%esp), %eax  # the caller's return %eip
 	movl 4(%esp), %edx  # address of the context variable to save context to
@@ -53,7 +53,7 @@
 	movl %eax, CONTEXT_OFFSET_TLS(%edx)	# tls -> ctx->tls
 
-	xorl %eax, %eax		# setjmp returns 0
+	xorl %eax, %eax		# __setjmp returns 0
 	ret
-FUNCTION_END(setjmp)
+FUNCTION_END(__setjmp)
 
 ## Restore saved CPU context
Index: uspace/lib/c/arch/ia64/include/libarch/fibril.h
===================================================================
--- uspace/lib/c/arch/ia64/include/libarch/fibril.h	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/ia64/include/libarch/fibril.h	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -43,5 +43,5 @@
 
 /*
- * setjmp() and __longjmp() are both leaf procedures.
+ * __setjmp() and __longjmp() are both leaf procedures.
  * No need to allocate scratch area.
  */
Index: uspace/lib/c/arch/ia64/src/fibril.S
===================================================================
--- uspace/lib/c/arch/ia64/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/ia64/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -32,5 +32,5 @@
 .text
 
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	alloc loc0 = ar.pfs, 1, 49, 0, 0
 	mov loc1 = ar.unat ;;
@@ -178,7 +178,7 @@
 	mov ar.unat = loc1
 
-	mov r8 = 0 	/* setjmp returns 0 */
+	mov r8 = 0 	/* __setjmp returns 0 */
 	br.ret.sptk.many b0
-FUNCTION_END(setjmp)
+FUNCTION_END(__setjmp)
 
 FUNCTION_BEGIN(__longjmp)
Index: uspace/lib/c/arch/mips32/src/fibril.S
===================================================================
--- uspace/lib/c/arch/mips32/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/mips32/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -35,5 +35,5 @@
 #include <libarch/fibril_context.h>
 
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	sw $s0, CONTEXT_OFFSET_S0($a0)
 	sw $s1, CONTEXT_OFFSET_S1($a0)
@@ -87,8 +87,8 @@
 	sw $sp, CONTEXT_OFFSET_SP($a0)
 
-	# setjmp returns 0
+	# __setjmp returns 0
 	j $ra
 	li $v0, 0
-FUNCTION_END(setjmp)
+FUNCTION_END(__setjmp)
 
 FUNCTION_BEGIN(__longjmp)
Index: uspace/lib/c/arch/ppc32/src/fibril.S
===================================================================
--- uspace/lib/c/arch/ppc32/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/ppc32/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -33,5 +33,5 @@
 #include <libarch/fibril_context.h>
 
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	stw sp, CONTEXT_OFFSET_SP(r3)
 	stw r2, CONTEXT_OFFSET_TLS(r3)
@@ -62,8 +62,8 @@
 	stw r4, CONTEXT_OFFSET_CR(r3)
 
-	# setjmp returns 0
+	# __setjmp returns 0
 	li r3, 0
 	blr
-FUNCTION_END(setjmp)
+FUNCTION_END(__setjmp)
 
 FUNCTION_BEGIN(__longjmp)
Index: uspace/lib/c/arch/riscv64/src/fibril.c
===================================================================
--- uspace/lib/c/arch/riscv64/src/fibril.c	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/riscv64/src/fibril.c	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -33,5 +33,5 @@
 #include <stdbool.h>
 
-int setjmp(context_t *ctx)
+int __setjmp(context_t *ctx)
 {
 	return 0;
Index: uspace/lib/c/arch/sparc64/src/fibril.S
===================================================================
--- uspace/lib/c/arch/sparc64/src/fibril.S	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/arch/sparc64/src/fibril.S	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -32,5 +32,5 @@
 .text
 
-FUNCTION_BEGIN(setjmp)
+FUNCTION_BEGIN(__setjmp)
 	#
 	# We rely on the kernel to flush our active register windows to memory
@@ -57,6 +57,6 @@
 	stx %g7, [%o0 + CONTEXT_OFFSET_TP]
 	retl
-	mov 0, %o0		! setjmp returns 0
-FUNCTION_END(setjmp)
+	mov 0, %o0		! __setjmp returns 0
+FUNCTION_END(__setjmp)
 
 FUNCTION_BEGIN(__longjmp)
Index: uspace/lib/c/generic/context.c
===================================================================
--- uspace/lib/c/generic/context.c	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/generic/context.c	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -43,5 +43,5 @@
 void context_swap(context_t *self, context_t *other)
 {
-	if (!setjmp(self))
+	if (!__setjmp(self))
 		__longjmp(other, 1);
 }
@@ -49,5 +49,5 @@
 void context_create(context_t *context, const context_create_t *arg)
 {
-	setjmp(context);
+	__setjmp(context);
 	context_set(context, FADDR(arg->fn), arg->stack_base,
 	    arg->stack_size, arg->tls);
Index: uspace/lib/c/include/setjmp.h
===================================================================
--- uspace/lib/c/include/setjmp.h	(revision 615e83d68dc1cfdb51a3e2557d4776a37010a7ca)
+++ uspace/lib/c/include/setjmp.h	(revision 55f068c2718ae33543fa18f49d0534ec95459b8d)
@@ -38,7 +38,9 @@
 typedef context_t jmp_buf[1];
 
-extern int setjmp(jmp_buf) __attribute__((returns_twice));
-extern void longjmp(jmp_buf, int) __attribute__((noreturn));
-extern void __longjmp(jmp_buf, int) __attribute__((noreturn));
+extern int __setjmp(jmp_buf) __attribute__((returns_twice));
+extern _Noreturn void __longjmp(jmp_buf, int);
+
+#define setjmp __setjmp
+extern _Noreturn void longjmp(jmp_buf, int);
 
 #endif
