diff options
author | sp92102 <none@none> | 2007-08-16 23:36:19 -0700 |
---|---|---|
committer | sp92102 <none@none> | 2007-08-16 23:36:19 -0700 |
commit | 12afeb840cb695e5fdde3d17bc2f6e8b273f0d37 (patch) | |
tree | 20cb8ce6445a1ba6f41d08ee30999e2e6267c264 | |
parent | 49569606959a0fe8afc95ca0054b28a4ac77f765 (diff) | |
download | illumos-gate-12afeb840cb695e5fdde3d17bc2f6e8b273f0d37.tar.gz |
6588379 brand interpose handlers stick around if a branded process dumps core
-rw-r--r-- | usr/src/uts/intel/ia32/os/sundep.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/usr/src/uts/intel/ia32/os/sundep.c b/usr/src/uts/intel/ia32/os/sundep.c index 0f16acc954..60c7aabf7d 100644 --- a/usr/src/uts/intel/ia32/os/sundep.c +++ b/usr/src/uts/intel/ia32/os/sundep.c @@ -329,12 +329,12 @@ lwp_load(klwp_t *lwp, gregset_t grp, uintptr_t thrptr) * that means an extra system call and could hurt performance. */ if (grp[REG_FS] == 0x1bb) /* hard code legacy LWPFS_SEL */ - (void) lwp_setprivate(lwp, _LWP_FSBASE, - (uintptr_t)grp[REG_FSBASE]); + (void) lwp_setprivate(lwp, _LWP_FSBASE, + (uintptr_t)grp[REG_FSBASE]); if (grp[REG_GS] == 0x1c3) /* hard code legacy LWPGS_SEL */ - (void) lwp_setprivate(lwp, _LWP_GSBASE, - (uintptr_t)grp[REG_GSBASE]); + (void) lwp_setprivate(lwp, _LWP_GSBASE, + (uintptr_t)grp[REG_GSBASE]); } #else if (grp[GS] == LWPGS_SEL) @@ -646,10 +646,12 @@ lwp_attach_brand_hdlrs(klwp_t *lwp) ASSERT(PROC_IS_BRANDED(lwptoproc(lwp))); ASSERT(removectx(t, NULL, brand_interpositioning_disable, - brand_interpositioning_enable, NULL, NULL, NULL, NULL) == 0); + brand_interpositioning_enable, NULL, NULL, + brand_interpositioning_disable, NULL) == 0); installctx(t, NULL, brand_interpositioning_disable, - brand_interpositioning_enable, NULL, NULL, NULL, NULL); + brand_interpositioning_enable, NULL, NULL, + brand_interpositioning_disable, NULL); if (t == curthread) { kpreempt_disable(); |