Source-Changes-HG archive

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

[src/trunk]: src/sys/compat/linux/arch/arm Add support for breakpoints to ARM...



details:   https://anonhg.NetBSD.org/src/rev/16bf6b279af9
branches:  trunk
changeset: 521286:16bf6b279af9
user:      bjh21 <bjh21%NetBSD.org@localhost>
date:      Sun Jan 27 15:27:33 2002 +0000

description:
Add support for breakpoints to ARMLinux emulation.

diffstat:

 sys/compat/linux/arch/arm/linux_sys_machdep.c |  12 ++++++++++--
 sys/compat/linux/arch/arm/syscalls.master     |   4 ++--
 2 files changed, 12 insertions(+), 4 deletions(-)

diffs (51 lines):

diff -r e2f51d40ce2e -r 16bf6b279af9 sys/compat/linux/arch/arm/linux_sys_machdep.c
--- a/sys/compat/linux/arch/arm/linux_sys_machdep.c     Sun Jan 27 15:11:38 2002 +0000
+++ b/sys/compat/linux/arch/arm/linux_sys_machdep.c     Sun Jan 27 15:27:33 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: linux_sys_machdep.c,v 1.1 2002/01/23 15:52:59 bjh21 Exp $      */
+/*     $NetBSD: linux_sys_machdep.c,v 1.2 2002/01/27 15:27:33 bjh21 Exp $      */
 
 /*-
  * Copyright (c) 2002 Ben Harris
@@ -29,7 +29,7 @@
 
 #include <sys/param.h>
 
-__RCSID("$Id: linux_sys_machdep.c,v 1.1 2002/01/23 15:52:59 bjh21 Exp $");
+__RCSID("$Id: linux_sys_machdep.c,v 1.2 2002/01/27 15:27:33 bjh21 Exp $");
 
 #include <sys/systm.h>
 
@@ -42,6 +42,14 @@
 #include <arm/cpufunc.h>
 
 int
+linux_sys_breakpoint(struct proc *p, void *v, register_t *retval)
+{
+
+       trapsignal(p, SIGTRAP, 0);
+       return ERESTART; /* Leave PC pointing back at the breakpoint. */
+}
+
+int
 linux_sys_cacheflush(struct proc *p, void *v, register_t *retval)
 {
        struct linux_sys_cacheflush_args /* {
diff -r e2f51d40ce2e -r 16bf6b279af9 sys/compat/linux/arch/arm/syscalls.master
--- a/sys/compat/linux/arch/arm/syscalls.master Sun Jan 27 15:11:38 2002 +0000
+++ b/sys/compat/linux/arch/arm/syscalls.master Sun Jan 27 15:27:33 2002 +0000
@@ -1,4 +1,4 @@
-       $NetBSD: syscalls.master,v 1.5 2002/01/27 14:08:56 bjh21 Exp $
+       $NetBSD: syscalls.master,v 1.6 2002/01/27 15:27:33 bjh21 Exp $
 
 ; Derived from sys/compat/linux/arch/*/syscalls.master
 ; and from Linux 2.4.12 arch/arm/kernel/calls.S
@@ -413,7 +413,7 @@
 ; array for the whole lot.
 
 256    UNIMPL
-257    UNIMPL          breakpoint
+257    STD             { int linux_sys_breakpoint(void); }
 258    STD             { int linux_sys_cacheflush(uintptr_t from, \
                                intptr_t to); }
 259    UNIMPL          usr26



Home | Main Index | Thread Index | Old Index