Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Nov 2002 00:29:54 -0800 (PST)
From:      Julian Elischer <julian@elischer.org>
To:        David Xu <davidxu@FreeBSD.org>
Cc:        Maxime Henrion <mux@FreeBSD.org>, "cvs-committers@FreeBSD.org" <cvs-committers@FreeBSD.org>, "cvs-all@FreeBSD.org" <cvs-all@FreeBSD.org>
Subject:   Re: cvs commit: src/sys/kern kern_thread.c src/sys/sys proc.h      src/sys/i386/i386 vm_machdep.c src/sys/alpha/alpha vm_machdep.c         src/sys/ia64/ia64 vm_machdep.c src/                            vm_machdep.c src/sys/sparc64/sparc64 vm_machdep.c
Message-ID:  <Pine.BSF.4.21.0211230027320.13569-100000@InterJet.elischer.org>
In-Reply-To: <200211230804.gAN84ZX0003586@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help


On Sat, 23 Nov 2002, David Xu wrote:

> This commit cause kernel panic when run threaded program.
> try /usr/src/tools/KSE/ksetest

Maxime..

The extended PCB fields need to be freed for every
thread_exit(), not just when we eventually free the thread_structure
(which may never happen)



> 
> ----- Original Message ----- 
> From: "Maxime Henrion" <mux@FreeBSD.org>
> To: <cvs-committers@FreeBSD.org>; <cvs-all@FreeBSD.org>
> Sent: Saturday, November 23, 2002 7:57 AM
> Subject: cvs commit: src/sys/kern kern_thread.c src/sys/sys proc.h src/sys/i386/i386 vm_machdep.c src/sys/alpha/alpha vm_machdep.c src/sys/ia64/ia64 vm_machdep.c src/sys/powerpc/powerpc vm_machdep.c src/sys/sparc64/sparc64 vm_machdep.c
> 
> mux         2002/11/22 15:57:02 PST
> 
>   Modified files:
>     sys/kern             kern_thread.c 
>     sys/sys              proc.h 
>     sys/i386/i386        vm_machdep.c 
>     sys/alpha/alpha      vm_machdep.c 
>     sys/ia64/ia64        vm_machdep.c 
>     sys/powerpc/powerpc  vm_machdep.c 
>     sys/sparc64/sparc64  vm_machdep.c 
>   Log:
>   Under certain circumstances, we were calling kmem_free() from
>   i386 cpu_thread_exit().  This resulted in a panic with WITNESS
>   since we need to hold Giant to call kmem_free(), and we weren't
>   helding it anymore in cpu_thread_exit().  We now do this from a
>   new MD function, cpu_thread_dtor(), called by thread_dtor().
>   
>   Approved by:    re@
>   Suggested by:   jhb
>   
>   Revision  Changes    Path
>   1.75      +5 -0      src/sys/alpha/alpha/vm_machdep.c
>   1.194     +17 -9     src/sys/i386/i386/vm_machdep.c
>   1.49      +5 -0      src/sys/ia64/ia64/vm_machdep.c
>   1.66      +3 -0      src/sys/kern/kern_thread.c
>   1.78      +5 -0      src/sys/powerpc/powerpc/vm_machdep.c
>   1.28      +5 -0      src/sys/sparc64/sparc64/vm_machdep.c
>   1.283     +1 -0      src/sys/sys/proc.h
> 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0211230027320.13569-100000>