Source-Changes-HG archive

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

[src/trunk]: src/sys/arch/sparc64/sparc64 fill_ddb_regs_from_tf() now fetches...



details:   https://anonhg.NetBSD.org/src/rev/8aab64a18c60
branches:  trunk
changeset: 344992:8aab64a18c60
user:      palle <palle%NetBSD.org@localhost>
date:      Sun May 01 20:12:54 2016 +0000

description:
fill_ddb_regs_from_tf() now fetches Local and In registers as well.

diffstat:

 sys/arch/sparc64/sparc64/db_interface.c |  13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

diffs (41 lines):

diff -r 86b4079278ab -r 8aab64a18c60 sys/arch/sparc64/sparc64/db_interface.c
--- a/sys/arch/sparc64/sparc64/db_interface.c   Sun May 01 19:57:55 2016 +0000
+++ b/sys/arch/sparc64/sparc64/db_interface.c   Sun May 01 20:12:54 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: db_interface.c,v 1.132 2013/09/12 19:38:59 martin Exp $ */
+/*     $NetBSD: db_interface.c,v 1.133 2016/05/01 20:12:54 palle Exp $ */
 
 /*
  * Copyright (c) 1996-2002 Eduardo Horvath.  All rights reserved.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: db_interface.c,v 1.132 2013/09/12 19:38:59 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: db_interface.c,v 1.133 2016/05/01 20:12:54 palle Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ddb.h"
@@ -232,7 +232,7 @@
        }
        /* We should do a proper copyin and xlate 64-bit stack frames, but... */
 /*     if (tf->tf_tstate & TSTATE_PRIV) { .. } */
-       
+
 #if 0
        /* make sure this is not causing ddb problems. */
        if (tf->tf_out[6] & 1) {
@@ -257,6 +257,13 @@
                DDB_REGS->db_fr.fr_fp = (long)tfr.fr_fp;
                DDB_REGS->db_fr.fr_pc = tfr.fr_pc;
        }
+#else
+       int i;
+       for (i=0; i<8; i++)
+         DDB_REGS->db_fr.fr_local[i] = tf->tf_local[i];
+       for (i=0; i<6; i++)
+         DDB_REGS->db_fr.fr_arg[i] = tf->tf_in[i];
+       /* XXX tp and pc are missing */
 #endif
        DDB_REGS->db_tl = savetstate(&DDB_REGS->db_ts[0]);
 }



Home | Main Index | Thread Index | Old Index