Source-Changes-HG archive

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

[src/netbsd-1-5]: src/sys/arch/i386/i386 Pull up revision 1.30 (via patch, re...



details:   https://anonhg.NetBSD.org/src/rev/ea7d17197491
branches:  netbsd-1-5
changeset: 491930:ea7d17197491
user:      he <he%NetBSD.org@localhost>
date:      Sun Jun 17 22:28:55 2001 +0000

description:
Pull up revision 1.30 (via patch, requested by sommerfeld):
  Add %fs/%gs to trap frame and save/restore them on trap/interupt/
  syscall entry from userspace.

  Remove special-case ``by hand'' validation of %fs/%gs register
  values s well as special handling of them in various signal
  handling paths.  Now, like %ds and %es, they are validated by
  the hardware on return to userland.

  This paves the way for the use of %fs for per-cpu data on multi-
  processor systems, and fixes an otherwise difficult-to-fix
  interaction between threads/clone(2) and USER_LDT.

diffstat:

 sys/arch/i386/i386/db_trace.c |  6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diffs (21 lines):

diff -r 4d5fa6ca23aa -r ea7d17197491 sys/arch/i386/i386/db_trace.c
--- a/sys/arch/i386/i386/db_trace.c     Sun Jun 17 22:28:32 2001 +0000
+++ b/sys/arch/i386/i386/db_trace.c     Sun Jun 17 22:28:55 2001 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: db_trace.c,v 1.28 2000/05/31 16:24:24 mycroft Exp $    */
+/*     $NetBSD: db_trace.c,v 1.28.2.1 2001/06/17 22:28:55 he Exp $     */
 
 /* 
  * Mach Operating System
@@ -43,8 +43,10 @@
  * Machine register set.
  */
 struct db_variable db_regs[] = {
+       { "ds",         (long *)&ddb_regs.tf_ds,     FCN_NULL },
        { "es",         (long *)&ddb_regs.tf_es,     FCN_NULL },
-       { "ds",         (long *)&ddb_regs.tf_ds,     FCN_NULL },
+       { "fs",         (long *)&ddb_regs.tf_fs,     FCN_NULL },
+       { "gs",         (long *)&ddb_regs.tf_gs,     FCN_NULL },
        { "edi",        (long *)&ddb_regs.tf_edi,    FCN_NULL },
        { "esi",        (long *)&ddb_regs.tf_esi,    FCN_NULL },
        { "ebp",        (long *)&ddb_regs.tf_ebp,    FCN_NULL },



Home | Main Index | Thread Index | Old Index