list_del (&pd->header.data.list);
list_del (&pd->list);
__deallocate_stack (struct pthread *pd){  lll_lock (stack_cache_lock);  /* Remove the thread from the list of threads with user defined     stacks.  */  list_del (&pd->header.data.list);  /* Not much to do.  Just free the mmap()ed memory.  Note that we do     not reset the 'used' flag in the 'tid' field.  This is done by     the kernel.  If no thread has been created yet this field is     still zero.  */  if (__builtin_expect (! pd->user_stack, 1))    (void) queue_stack (pd);  else    /* Free the memory associated with the ELF TLS.  */    _dl_deallocate_tls (pd, false);  lll_unlock (stack_cache_lock);}