From d98fd43d82e69ca8d2b28c1e597ade33a555207e Mon Sep 17 00:00:00 2001 From: neal Date: Sat, 16 Aug 2008 13:35:09 +0000 Subject: hurd/ 2008-08-16 Neal H. Walfield * thread.h (thread_start_sp_ip): New function. libpthread/ 2008-08-16 Neal H. Walfield * sysdeps/l4/hurd/pt-docancel.c: New file. --- hurd/ChangeLog | 4 ++++ hurd/thread.h | 15 +++++++++++++++ 2 files changed, 19 insertions(+) (limited to 'hurd') diff --git a/hurd/ChangeLog b/hurd/ChangeLog index 25b5827..ed94ead 100644 --- a/hurd/ChangeLog +++ b/hurd/ChangeLog @@ -1,3 +1,7 @@ +2008-08-16 Neal H. Walfield + + * thread.h (thread_start_sp_ip): New function. + 2008-07-04 Neal H. Walfield * mutex.h (ss_mutex_lock): Only complain about a possible deadlock diff --git a/hurd/thread.h b/hurd/thread.h index fd504b0..c583723 100644 --- a/hurd/thread.h +++ b/hurd/thread.h @@ -211,6 +211,21 @@ thread_start (addr_t thread) in, &out); } +static inline error_t +thread_start_sp_ip (addr_t thread, uintptr_t sp, uintptr_t ip) +{ + struct hurd_thread_exregs_in in; + struct hurd_thread_exregs_out out; + + in.sp = sp; + in.ip = ip; + + return rm_thread_exregs (ADDR_VOID, thread, + HURD_EXREGS_START | HURD_EXREGS_ABORT_IPC + | HURD_EXREGS_SET_SP_IP, + in, &out); +} + static inline error_t thread_stop (addr_t thread) { -- cgit v1.2.3