Call lwp_detach in pthread_detach
authorDavid Bartley <dtbartle@glibc.(none)>
Fri, 6 Feb 2009 10:05:16 +0000 (10:05 +0000)
committerDavid Bartley <dtbartle@glibc.(none)>
Fri, 6 Feb 2009 10:05:16 +0000 (10:05 +0000)
nptl/sysdeps/unix/sysv/solaris2/kopensolaris-gnu/pthreadP.h
nptl/sysdeps/unix/sysv/solaris2/kopensolaris-gnu/pthreaddef.h

index 4c1c474..8b7e210 100644 (file)
@@ -96,6 +96,13 @@ static inline int __internal_kill_1 (int *errval, int sig)
   return ret.sys_rval1;
 }
 
+static inline int __internal_tdetach_1 (int *errval, pthread_t tid)
+{
+  sysret_t ret;
+  *errval = __systemcall (&ret, SYS_lwp_detach, tid);
+  return ret.sys_rval1;
+}
+
 static inline pthread_t __internal_set_tid_address_1 (int *errval, pthread_t *tid)
 {
   sysret_t ret;
index c6bedcf..990c97f 100644 (file)
@@ -88,3 +88,6 @@ DECLARE_INLINE_SYSCALL (void, lwp_exit, void);
 
 /* Pthread structs are opaque so don't assume any struct internals.  */
 #define OPAQUE_STRUCTS
+
+/* Need to let the kernel know about detaching threads.  */
+#define NEED_TDETACH