Source-Changes-HG archive

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

[src/trunk]: src/sys/arch/x86/x86 Remove outdated comments, typos, rename and...



details:   https://anonhg.NetBSD.org/src/rev/4d04d7ece8f2
branches:  trunk
changeset: 348004:4d04d7ece8f2
user:      maxv <maxv%NetBSD.org@localhost>
date:      Thu Sep 29 17:01:43 2016 +0000

description:
Remove outdated comments, typos, rename and reorder a few things.

diffstat:

 sys/arch/x86/x86/fpu.c |  103 +++++++++++++++++++-----------------------------
 1 files changed, 40 insertions(+), 63 deletions(-)

diffs (207 lines):

diff -r 9e1a307dec43 -r 4d04d7ece8f2 sys/arch/x86/x86/fpu.c
--- a/sys/arch/x86/x86/fpu.c    Thu Sep 29 15:25:28 2016 +0000
+++ b/sys/arch/x86/x86/fpu.c    Thu Sep 29 17:01:43 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: fpu.c,v 1.11 2016/08/18 12:36:35 maxv Exp $    */
+/*     $NetBSD: fpu.c,v 1.12 2016/09/29 17:01:43 maxv Exp $    */
 
 /*-
  * Copyright (c) 2008 The NetBSD Foundation, Inc.  All
@@ -95,12 +95,8 @@
  *     @(#)npx.c       7.2 (Berkeley) 5/12/91
  */
 
-/*
- * XXXfvdl update copyright notice. this started out as a stripped isa/npx.c
- */
-
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: fpu.c,v 1.11 2016/08/18 12:36:35 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: fpu.c,v 1.12 2016/09/29 17:01:43 maxv Exp $");
 
 #include "opt_multiprocessor.h"
 
@@ -137,24 +133,6 @@
        return &pcb->pcb_savefpu;
 }
 
-/*
- * We do lazy initialization and switching using the TS bit in cr0 and the
- * MDL_USEDFPU bit in mdlwp.
- *
- * DNA exceptions are handled like this:
- *
- * 1) If there is no FPU, send SIGILL.
- * 2) If someone else has used the FPU, save its state into that lwp's PCB.
- * 3a) If MDL_USEDFPU is not set, set it and initialize the FPU.
- * 3b) Otherwise, reload the lwp's previous FPU state.
- *
- * When a lwp is created or exec()s, its saved cr0 image has the TS bit
- * set and the MDL_USEDFPU bit clear.  The MDL_USEDFPU bit is set when the
- * lwp first gets a DNA and the FPU is initialized.  The TS bit is turned
- * off when the FPU is used, and turned on again later when the lwp's FPU
- * state is saved.
- */
-
 /* 
  * The following table is used to ensure that the FPE_... value
  * that is passed as a trapcode to the signal handler of the user
@@ -235,7 +213,7 @@
 /*
  * Init the FPU.
  *
- * This might not be structly necessary since it will be initialised
+ * This might not be strictly necessary since it will be initialised
  * for each process.  However it does no harm.
  */
 void
@@ -249,18 +227,6 @@
        stts();
 }
 
-void
-fpu_set_default_cw(struct lwp *lwp, unsigned int x87_cw)
-{
-       union savefpu *fpu_save = process_fpframe(lwp);
-
-       if (i386_use_fxsave)
-               fpu_save->sv_xmm.fx_cw = x87_cw;
-       else
-               fpu_save->sv_87.s87_cw = x87_cw;
-       fpu_save->sv_os.fxo_dflt_cw = x87_cw;
-}
-
 static void
 send_sigill(void *rip)
 {
@@ -538,22 +504,32 @@
        }
 }
 
+void
+fpu_set_default_cw(struct lwp *l, unsigned int x87_cw)
+{
+       union savefpu *fpu_save = process_fpframe(l);
+
+       if (i386_use_fxsave)
+               fpu_save->sv_xmm.fx_cw = x87_cw;
+       else
+               fpu_save->sv_87.s87_cw = x87_cw;
+       fpu_save->sv_os.fxo_dflt_cw = x87_cw;
+}
+
 /*
- * exec needs to clear the fpu save area to avoid leaking info from the
+ * Exec needs to clear the fpu save area to avoid leaking info from the
  * old process to userspace.
- * We must also (later) load these values into the fpu - otherwise the process
- * will see another processes fpu registers.
  */
 void
-fpu_save_area_clear(struct lwp *lwp, unsigned int x87_cw)
+fpu_save_area_clear(struct lwp *l, unsigned int x87_cw)
 {
        union savefpu *fpu_save;
 
-       fpusave_lwp(lwp, false);
-       fpu_save = process_fpframe(lwp);
+       fpusave_lwp(l, false);
+       fpu_save = process_fpframe(l);
 
        if (i386_use_fxsave) {
-               memset(&fpu_save->sv_xmm, 0, sizeof fpu_save->sv_xmm);
+               memset(&fpu_save->sv_xmm, 0, sizeof(fpu_save->sv_xmm));
                fpu_save->sv_xmm.fx_mxcsr = __INITIAL_MXCSR__;
                fpu_save->sv_xmm.fx_mxcsr_mask = __INITIAL_MXCSR_MASK__;
                fpu_save->sv_xmm.fx_cw = x87_cw;
@@ -567,9 +543,9 @@
 
 /* For signal handlers the register values don't matter */
 void
-fpu_save_area_reset(struct lwp *lwp)
+fpu_save_area_reset(struct lwp *l)
 {
-       union savefpu *fpu_save = process_fpframe(lwp);
+       union savefpu *fpu_save = process_fpframe(l);
 
        if (i386_use_fxsave) {
                fpu_save->sv_xmm.fx_mxcsr = __INITIAL_MXCSR__;
@@ -604,16 +580,15 @@
  * Buffer has usually come from userspace so should not be trusted.
  */
 void
-process_write_fpregs_xmm(struct lwp *lwp, const struct fxsave *fpregs)
+process_write_fpregs_xmm(struct lwp *l, const struct fxsave *fpregs)
 {
        union savefpu *fpu_save;
 
-       fpusave_lwp(lwp, false);
-       fpu_save = process_fpframe(lwp);
+       fpusave_lwp(l, false);
+       fpu_save = process_fpframe(l);
 
        if (i386_use_fxsave) {
-               memcpy(&fpu_save->sv_xmm, fpregs,
-                   sizeof fpu_save->sv_xmm);
+               memcpy(&fpu_save->sv_xmm, fpregs, sizeof(fpu_save->sv_xmm));
                /* Invalid bits in the mxcsr_mask will cause faults */
                fpu_save->sv_xmm.fx_mxcsr_mask &= __INITIAL_MXCSR_MASK__;
        } else {
@@ -623,17 +598,19 @@
 
 /* We need to use x87 format for 32bit ptrace */
 void
-process_write_fpregs_s87(struct lwp *lwp, const struct save87 *fpregs)
+process_write_fpregs_s87(struct lwp *l, const struct save87 *fpregs)
 {
+       union savefpu *fpu_save;
 
        if (i386_use_fxsave) {
                /* Save so we don't lose the xmm registers */
-               fpusave_lwp(lwp, true);
-               process_s87_to_xmm(fpregs, &process_fpframe(lwp)->sv_xmm);
+               fpusave_lwp(l, true);
+               fpu_save = process_fpframe(l);
+               process_s87_to_xmm(fpregs, &fpu_save->sv_xmm);
        } else {
-               fpusave_lwp(lwp, false);
-               memcpy(&process_fpframe(lwp)->sv_87, fpregs,
-                   sizeof process_fpframe(lwp)->sv_87);
+               fpusave_lwp(l, false);
+               fpu_save = process_fpframe(l);
+               memcpy(&fpu_save->sv_87, fpregs, sizeof(fpu_save->sv_87));
        }
 }
 
@@ -642,12 +619,12 @@
  * Ensure we write to the entire structure.
  */
 void
-process_read_fpregs_xmm(struct lwp *lwp, struct fxsave *fpregs)
+process_read_fpregs_xmm(struct lwp *l, struct fxsave *fpregs)
 {
        union savefpu *fpu_save;
 
-       fpusave_lwp(lwp, true);
-       fpu_save = process_fpframe(lwp);
+       fpusave_lwp(l, true);
+       fpu_save = process_fpframe(l);
 
        if (i386_use_fxsave) {
                memcpy(fpregs, &fpu_save->sv_xmm, sizeof(fpu_save->sv_xmm));
@@ -659,12 +636,12 @@
 }
 
 void
-process_read_fpregs_s87(struct lwp *lwp, struct save87 *fpregs)
+process_read_fpregs_s87(struct lwp *l, struct save87 *fpregs)
 {
        union savefpu *fpu_save;
 
-       fpusave_lwp(lwp, true);
-       fpu_save = process_fpframe(lwp);
+       fpusave_lwp(l, true);
+       fpu_save = process_fpframe(l);
 
        if (i386_use_fxsave) {
                memset(fpregs, 0, 12);



Home | Main Index | Thread Index | Old Index