Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/i386/i386 syscall (setcontext) can alter eax, so do...



details:   https://anonhg.NetBSD.org/src/rev/949a66a88f66
branches:  trunk
changeset: 769981:949a66a88f66
user:      christos <christos%NetBSD.org@localhost>
date:      Wed Sep 28 17:27:21 2011 +0000

description:
syscall (setcontext) can alter eax, so don't attempt to get code again from it
in order to avoid register spills.

diffstat:

 sys/arch/i386/i386/linux_syscall.c |  5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diffs (26 lines):

diff -r bb854c27ad74 -r 949a66a88f66 sys/arch/i386/i386/linux_syscall.c
--- a/sys/arch/i386/i386/linux_syscall.c        Wed Sep 28 16:28:27 2011 +0000
+++ b/sys/arch/i386/i386/linux_syscall.c        Wed Sep 28 17:27:21 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_syscall.c,v 1.50 2009/11/21 03:11:00 rmind Exp $ */
+/*     $NetBSD: linux_syscall.c,v 1.51 2011/09/28 17:27:21 christos Exp $      */
 
 /*-
  * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscall.c,v 1.50 2009/11/21 03:11:00 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscall.c,v 1.51 2011/09/28 17:27:21 christos Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_vm86.h"
@@ -103,7 +103,6 @@
                error = trace_enter(code, args, callp->sy_narg);
                if (__predict_true(error == 0)) {
                        error = sy_call(callp, l, args, rval);
-                       code = frame->tf_eax & (LINUX_SYS_NSYSENT - 1);
                        trace_exit(code, rval, error);
                }
        } else



Home | Main Index | Thread Index | Old Index