From owner-cvs-all Sun Jul 4 17:35:24 1999 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (Postfix) with ESMTP id C06F31523D; Sun, 4 Jul 1999 17:35:21 -0700 (PDT) (envelope-from jasone@FreeBSD.org) Received: (from jasone@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id RAA48088; Sun, 4 Jul 1999 17:35:21 -0700 (PDT) (envelope-from jasone@FreeBSD.org) Message-Id: <199907050035.RAA48088@freefall.freebsd.org> From: Jason Evans Date: Sun, 4 Jul 1999 17:35:21 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/libc_r Makefile src/lib/libc_r/uthread pthread_private.h uthread_create.c uthread_gc.c uthread_init.c Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk jasone 1999/07/04 17:35:20 PDT Modified files: lib/libc_r Makefile lib/libc_r/uthread pthread_private.h uthread_create.c uthread_gc.c uthread_init.c Log: Use growable stacks for thread stacks that are the default stack size. Cache discarded default thread stacks for use in subsequent thread creations. Create a red zone at the end of each stack (including the initial thread stack), with the hope of causing a segfault if a stack overflows. To activate these modifications, add -D_PTHREAD_GSTACK to CFLAGS in src/lib/libc_r/Makefile. Since the modifications depend on the VM_STACK kernel option, I'm not sure how to safely use growable stacks by default. Testing, as well as algorithmic and stylistic comments are welcome. Revision Changes Path 1.16 +5 -2 src/lib/libc_r/Makefile 1.21 +44 -2 src/lib/libc_r/uthread/pthread_private.h 1.14 +57 -1 src/lib/libc_r/uthread/uthread_create.c 1.5 +30 -2 src/lib/libc_r/uthread/uthread_gc.c 1.13 +28 -15 src/lib/libc_r/uthread/uthread_init.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message