Author: tijl
Date: Tue Jul 27 13:06:18 2010
New Revision: 210536
URL: http://svn.freebsd.org/changeset/base/210536

Log:
  MFC r210294:
  
  Store fsbase and gsbase in the right fields of the mcontext. They were
  switched.
  
  PR:           i386/148344
  Approved by:  kib (mentor)

Modified:
  stable/8/sys/i386/i386/machdep.c
  stable/8/sys/pc98/pc98/machdep.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/i386/i386/machdep.c
==============================================================================
--- stable/8/sys/i386/i386/machdep.c    Tue Jul 27 12:53:53 2010        
(r210535)
+++ stable/8/sys/i386/i386/machdep.c    Tue Jul 27 13:06:18 2010        
(r210536)
@@ -644,10 +644,10 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, 
        /*
         * Unconditionally fill the fsbase and gsbase into the mcontext.
         */
-       sdp = &td->td_pcb->pcb_gsd;
+       sdp = &td->td_pcb->pcb_fsd;
        sf.sf_uc.uc_mcontext.mc_fsbase = sdp->sd_hibase << 24 |
            sdp->sd_lobase;
-       sdp = &td->td_pcb->pcb_fsd;
+       sdp = &td->td_pcb->pcb_gsd;
        sf.sf_uc.uc_mcontext.mc_gsbase = sdp->sd_hibase << 24 |
            sdp->sd_lobase;
 
@@ -3255,9 +3255,9 @@ get_mcontext(struct thread *td, mcontext
         * mcontext after mc_fpstate.
         */
        get_fpcontext(td, mcp);
-       sdp = &td->td_pcb->pcb_gsd;
-       mcp->mc_fsbase = sdp->sd_hibase << 24 | sdp->sd_lobase;
        sdp = &td->td_pcb->pcb_fsd;
+       mcp->mc_fsbase = sdp->sd_hibase << 24 | sdp->sd_lobase;
+       sdp = &td->td_pcb->pcb_gsd;
        mcp->mc_gsbase = sdp->sd_hibase << 24 | sdp->sd_lobase;
 
        return (0);

Modified: stable/8/sys/pc98/pc98/machdep.c
==============================================================================
--- stable/8/sys/pc98/pc98/machdep.c    Tue Jul 27 12:53:53 2010        
(r210535)
+++ stable/8/sys/pc98/pc98/machdep.c    Tue Jul 27 13:06:18 2010        
(r210536)
@@ -566,10 +566,10 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, 
        /*
         * Unconditionally fill the fsbase and gsbase into the mcontext.
         */
-       sdp = &td->td_pcb->pcb_gsd;
+       sdp = &td->td_pcb->pcb_fsd;
        sf.sf_uc.uc_mcontext.mc_fsbase = sdp->sd_hibase << 24 |
            sdp->sd_lobase;
-       sdp = &td->td_pcb->pcb_fsd;
+       sdp = &td->td_pcb->pcb_gsd;
        sf.sf_uc.uc_mcontext.mc_gsbase = sdp->sd_hibase << 24 |
            sdp->sd_lobase;
 
@@ -2454,9 +2454,9 @@ get_mcontext(struct thread *td, mcontext
        mcp->mc_ss = tp->tf_ss;
        mcp->mc_len = sizeof(*mcp);
        get_fpcontext(td, mcp);
-       sdp = &td->td_pcb->pcb_gsd;
-       mcp->mc_fsbase = sdp->sd_hibase << 24 | sdp->sd_lobase;
        sdp = &td->td_pcb->pcb_fsd;
+       mcp->mc_fsbase = sdp->sd_hibase << 24 | sdp->sd_lobase;
+       sdp = &td->td_pcb->pcb_gsd;
        mcp->mc_gsbase = sdp->sd_hibase << 24 | sdp->sd_lobase;
 
        return (0);
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to