Mercurial > illumos > illumos-gate
diff usr/src/uts/intel/ia32/os/archdep.c @ 4503:8cf697a3acff
6493689 Jvm crash: curthread set by kernel incorrect
author | sudheer |
---|---|
date | Wed, 20 Jun 2007 03:26:40 -0700 |
parents | 5903aece022d |
children | af6e7cd796cc |
line wrap: on
line diff
--- a/usr/src/uts/intel/ia32/os/archdep.c Tue Jun 19 22:41:58 2007 -0700 +++ b/usr/src/uts/intel/ia32/os/archdep.c Wed Jun 20 03:26:40 2007 -0700 @@ -442,7 +442,7 @@ grp[REG_GSBASE] = pcb->pcb_gsbase; if (thisthread) kpreempt_disable(); - if (pcb->pcb_flags & RUPDATE_PENDING) { + if (pcb->pcb_rupdate == 1) { grp[REG_DS] = pcb->pcb_ds; grp[REG_ES] = pcb->pcb_es; grp[REG_FS] = pcb->pcb_fs; @@ -478,7 +478,7 @@ if (thisthread) kpreempt_disable(); - if (pcb->pcb_flags & RUPDATE_PENDING) { + if (pcb->pcb_rupdate == 1) { grp[GS] = (uint16_t)pcb->pcb_gs; grp[FS] = (uint16_t)pcb->pcb_fs; grp[DS] = (uint16_t)pcb->pcb_ds; @@ -712,7 +712,7 @@ /* * Ensure that we go out via update_sregs */ - pcb->pcb_flags |= RUPDATE_PENDING; + pcb->pcb_rupdate = 1; lwptot(lwp)->t_post_sys = 1; if (thisthread) kpreempt_enable(); @@ -757,7 +757,7 @@ /* * Ensure that we go out via update_sregs */ - pcb->pcb_flags |= RUPDATE_PENDING; + pcb->pcb_rupdate = 1; lwptot(lwp)->t_post_sys = 1; if (thisthread) kpreempt_enable();