diff options
| author | Marcel Moolenaar <marcel@FreeBSD.org> | 2003-12-07 20:47:33 +0000 |
|---|---|---|
| committer | Marcel Moolenaar <marcel@FreeBSD.org> | 2003-12-07 20:47:33 +0000 |
| commit | 47eb01b82235a63190ac3642f7c1d169a73e0274 (patch) | |
| tree | 7aa3fc85bba2ec14ba56723694cb68dc2c17e301 /lib/libpthread | |
| parent | 377e7be4166692aa562237f8dc300c48568e4ec4 (diff) | |
Notes
Diffstat (limited to 'lib/libpthread')
| -rw-r--r-- | lib/libpthread/arch/ia64/include/pthread_md.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/libpthread/arch/ia64/include/pthread_md.h b/lib/libpthread/arch/ia64/include/pthread_md.h index 6598f3dc6305..a72c95343684 100644 --- a/lib/libpthread/arch/ia64/include/pthread_md.h +++ b/lib/libpthread/arch/ia64/include/pthread_md.h @@ -232,6 +232,12 @@ _thread_switch(struct kcb *kcb, struct tcb *tcb, int setmbox) mc->mc_special.isr = (intptr_t)&tcb->tcb_tmbx; } _ia64_break_setcontext(mc); + } else if (mc->mc_flags & _MC_FLAGS_SYSCALL_CONTEXT) { + if (setmbox) + kse_switchin(mc, (long)&tcb->tcb_tmbx, + (long *)&kcb->kcb_kmbx.km_curthread); + else + kse_switchin(mc, 0L, NULL); } else { if (setmbox) _ia64_restore_context(mc, (intptr_t)&tcb->tcb_tmbx, |
