From owner-freebsd-current Fri May 7 13:11: 3 1999 Delivered-To: freebsd-current@freebsd.org Received: from apollo.backplane.com (apollo.backplane.com [209.157.86.2]) by hub.freebsd.org (Postfix) with ESMTP id 1416C154EC for ; Fri, 7 May 1999 13:10:56 -0700 (PDT) (envelope-from dillon@apollo.backplane.com) Received: (from dillon@localhost) by apollo.backplane.com (8.9.3/8.9.1) id NAA46817; Fri, 7 May 1999 13:10:47 -0700 (PDT) (envelope-from dillon) Date: Fri, 7 May 1999 13:10:47 -0700 (PDT) From: Matthew Dillon Message-Id: <199905072010.NAA46817@apollo.backplane.com> To: Doug Rabson Cc: current@FreeBSD.ORG Subject: Re: Debugging FreeBSD user threads with gdb References: Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG :--- uthread_create.c 1999/03/23 05:07:55 1.12 :+++ uthread_create.c 1999/05/06 15:27:33 :@@ -42,6 +42,8 @@ : #include "pthread_private.h" : #include "libc_private.h" : :+static int next_tid = 1; :+ : int : pthread_create(pthread_t * thread, const pthread_attr_t * attr, : void *(*start_routine) (void *), void *arg) :@@ -87,6 +89,7 @@ : } else { : /* Initialise the thread structure: */ : memset(new_thread, 0, sizeof(struct pthread)); :+ new_thread->tid = next_tid++; : :Doug Rabson Mail: dfr@nlsystems.com :Nonlinear Systems Ltd. Phone: +44 181 442 9037 Hmmm. tid is only an int and some programs which create and destroy threads a lot are almost certainly going to overflow it. 4 billion is not hard to reach. This can result in duplicate tid's. -Matt Matthew Dillon To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message