From owner-freebsd-current Wed Mar 3 17:18: 7 1999 Delivered-To: freebsd-current@freebsd.org Received: from psf.Pinyon.ORG (ip-17-114.prc.primenet.com [207.218.17.114]) by hub.freebsd.org (Postfix) with ESMTP id 63A581511D for ; Wed, 3 Mar 1999 17:17:07 -0800 (PST) (envelope-from rcarter@psf.Pinyon.ORG) Received: from psf.Pinyon.ORG (localhost [127.0.0.1]) by psf.Pinyon.ORG (8.9.3/8.9.2) with ESMTP id SAA17500 for ; Wed, 3 Mar 1999 18:13:43 -0700 (MST) (envelope-from rcarter@psf.Pinyon.ORG) Message-Id: <199903040113.SAA17500@psf.Pinyon.ORG> X-Mailer: exmh version 2.0.2 2/24/98 To: current@FreeBSD.ORG Subject: Re: SMP and SO5.0 In-reply-to: Your message of "Wed, 17 Feb 1999 14:40:38 EST." <199902171940.OAA69973@y.dyson.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 03 Mar 1999 18:13:43 -0700 From: "Russell L. Carter" Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG John Dyson extemporised: %Julian Elischer said: %> %> %> On Tue, 16 Feb 1999, Luoqi Chen wrote: %> > You may try my patch at http://www.freebsd.org/~luoqi, which would allow %> > linux threads to run on SMP. %> %> I've gone through these patches and I can see that they are really needed %> for SMP where address spaces are shared. %> %I agree -- a per-cpu page directory per multithreaded process is the way that %I had implemented. Excellent!!! % So I tried these out. The examples work in the linuxthreads dir but many other things do not. For instance, Built debug ACE+TAO with egcs-2.91.62, March 2 -current, newest LinuxThreads port. Uniprocessor has no errors. SMP fails, for instance: rcarter@mazatzal:~/ace/ACE_wrappers/tests [82] ./TSS_Test TSS_Test in malloc(): warning: recursive call. TSS_Test in malloc(): warning: recursive call. Abort trap (core dumped) rcarter@mazatzal:~/ace/ACE_wrappers/tests [83] gdb TSS_Test -core TSS_Test.coreGDB is free software and you are welcome to distribute copies of it under certain conditions; type "show copying" to see the conditions. There is absolutely no warranty for GDB; type "show warranty" for details. GDB 4.16 (i386-unknown-freebsd), Copyright 1996 Free Software Foundation, Inc... Core was generated by `TSS_Test'. Program terminated with signal 6, Abort trap. Reading symbols from /home/rcarter/ace/ACE_wrappers/ace/libACE.so...done. Reading symbols from /usr/local/lib/liblthread.so.0...done. Reading symbols from /usr/lib/libm.so.2...done. Reading symbols from /usr/lib/libc.so.3...done. Reading symbols from /usr/libexec/ld-elf.so.1...done. #0 0x18243bf4 in sched_yield () (gdb) where #0 0x18243bf4 in sched_yield () #1 0x181eb051 in sched_yield () at sched.c:58 #2 0x181eac79 in _spinlock (lck=0x18281738) at spinlock.c:88 #3 0x18278a02 in free () #4 0x181a8765 in __builtin_delete (ptr=0x8054170) #5 0x804ada5 in worker (c=0x64) at TSS_Test.cpp:222 #6 0x180fc4e2 in ACE_Thread_Adapter::invoke (this=0x8051540) at OS.cpp:2075 #7 0x180fc556 in ace_thread_adapter (args=0x8051540) at OS.cpp:2194 #8 0x181ebe8c in pthread_start_thread (arg=0xeb5ffd04) at manager.c:160 #9 0x181ec49d in _clone () at clone.S:1 #10 0xffffffff in ?? () #11 0x1805ec5c in .curbrk () Cannot access memory at address 0xf9dc. (gdb) Russell To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message