diff --git a/arch/x86_64/include/intel64/irq.h b/arch/x86_64/include/intel64/irq.h index bc8dd7cd6f..c21694d771 100644 --- a/arch/x86_64/include/intel64/irq.h +++ b/arch/x86_64/include/intel64/irq.h @@ -545,15 +545,6 @@ struct xcptcontext uint64_t *regs; -#ifdef CONFIG_LIB_SYSCALL - /* The following array holds information needed to return from each nested - * system call. - */ - - uint8_t nsyscalls; - struct xcpt_syscall_s syscall[CONFIG_SYS_NNEST]; -#endif - #ifdef CONFIG_ARCH_ADDRENV # ifdef CONFIG_ARCH_KERNEL_STACK /* In this configuration, all syscalls execute from an internal kernel diff --git a/arch/x86_64/src/common/x86_64_syscall.c b/arch/x86_64/src/common/x86_64_syscall.c index 1da8e300b7..216727a2ca 100644 --- a/arch/x86_64/src/common/x86_64_syscall.c +++ b/arch/x86_64/src/common/x86_64_syscall.c @@ -296,14 +296,6 @@ uint64_t *x86_64_syscall(uint64_t *regs) struct tcb_s *rtcb = nxsched_self(); syscall_stub_t stub = (syscall_stub_t)g_stublookup[nbr]; - DEBUGASSERT(nbr < SYS_nsyscalls); - DEBUGASSERT(rtcb->xcp.nsyscalls < CONFIG_SYS_NNEST); - - /* Setup nested syscall */ - - rtcb->xcp.syscall[rtcb->xcp.nsyscalls].sysreturn = regs[REG_RCX]; - rtcb->xcp.nsyscalls += 1; - #ifdef CONFIG_ARCH_KERNEL_STACK /* Store reference to user RSP for signals */ @@ -314,11 +306,6 @@ uint64_t *x86_64_syscall(uint64_t *regs) ret = stub(nbr, arg1, arg2, arg3, arg4, arg5, arg6); - /* Setup return from nested syscall */ - - rtcb->xcp.nsyscalls -= 1; - regs[REG_RCX] = rtcb->xcp.syscall[rtcb->xcp.nsyscalls].sysreturn; - break; } }