From owner-freebsd-questions@FreeBSD.ORG Mon Jun 23 14:52:24 2003 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D214237B404 for ; Mon, 23 Jun 2003 14:52:23 -0700 (PDT) Received: from natural.keybaud.org (natural.keybaud.org [81.23.208.34]) by mx1.FreeBSD.org (Postfix) with ESMTP id 43D4643F85 for ; Mon, 23 Jun 2003 14:52:21 -0700 (PDT) (envelope-from steven@keybaud.org) Received: from sh (localhost [127.0.0.1]) by natural.keybaud.org (Postfix) with SMTP id 44B501C for ; Mon, 23 Jun 2003 22:52:16 +0100 (BST) From: "Steven Haywood" To: Date: Mon, 23 Jun 2003 22:52:19 +0100 Message-ID: <003301c339d1$b8b16f10$0100a8c0@sh> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook CWS, Build 9.0.2416 (9.0.2911.0) X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Importance: Normal Subject: Threads problem on 5.1-Release sparc64 X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: steven@keybaud.org List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Jun 2003 21:52:24 -0000 Hi folks I'm still having pthreads problems on Sparc64 (5.1 Release): The program concerned is: # cat conftest.c #include void* routine(void* p){return NULL;} int main(){ pthread_t p; if(pthread_create(&p,NULL,routine,NULL)!=0) return 1; (void)pthread_detach(p); return 0; } Compiled with: gcc -o moo -lc_r conftest.c no errors Trying to run it: bash-2.05b# truss ./moo mmap(0x0,7056,0x3,0x1000,-1,0x0) = 1075978240 (0x40222000) munmap(0x40222000,0x1b90) = 0 (0x0) __sysctl(0x7fdfffff490,0x2,0x40323110,0x7fdfffff488,0x0,0x0) = 0 (0x0) mmap(0x0,32768,0x3,0x1002,-1,0x0) = 1075978240 (0x40222000) geteuid() = 0 (0x0) getuid() = 0 (0x0) getegid() = 0 (0x0) getgid() = 0 (0x0) mmap(0x0,40960,0x3,0x1002,-1,0x0) = 1076011008 (0x4022a000) open("/var/run/ld-elf.so.hints",0x0,010010540070) = 3 (0x3) read(0x3,0x7fdfffff720,0x80) = 128 (0x80) lseek(3,0x80,-1) = 128 (0x80) read(0x3,0x4022e000,0x57) = 87 (0x57) close(3) = 0 (0x0) access("/usr/lib/libc_r.so.5",0) = 0 (0x0) open("/usr/lib/libc_r.so.5",0x0,06) = 3 (0x3) fstat(3,0x7fdfffff7e0) = 0 (0x0) read(0x3,0x7fdffffd720,0x2000) = 8192 (0x2000) mmap(0x0,1220608,0x5,0x20002,3,0x0) = 1077043200 (0x40326000) mprotect(0x40342000,0x2000,0x7) = 0 (0x0) mprotect(0x40342000,0x2000,0x5) = 0 (0x0) mmap(0x40442000,16384,0x7,0x12,3,0x0) = 1078206464 (0x40442000) mmap(0x40446000,40960,0x7,0x1012,-1,0x0) = 1078222848 (0x40446000) close(3) = 0 (0x0) access("/usr/lib/libc.so.5",0) = 0 (0x0) open("/usr/lib/libc.so.5",0x0,0137) = 3 (0x3) fstat(3,0x7fdfffff7e0) = 0 (0x0) read(0x3,0x7fdffffd720,0x2000) = 8192 (0x2000) mmap(0x0,2154496,0x5,0x20002,3,0x0) = 1078263808 (0x40450000) mprotect(0x40538000,0x2000,0x7) = 0 (0x0) mprotect(0x40538000,0x2000,0x5) = 0 (0x0) mmap(0x40638000,73728,0x7,0x12,3,0x0) = 1080262656 (0x40638000) mmap(0x4064a000,81920,0x7,0x1012,-1,0x0) = 1080336384 (0x4064a000) close(3) = 0 (0x0) mmap(0x0,304,0x3,0x1000,-1,0x0) = 1076051968 (0x40234000) munmap(0x40234000,0x130) = 0 (0x0) mmap(0x0,9456,0x3,0x1000,-1,0x0) = 1076051968 (0x40234000) munmap(0x40234000,0x24f0) = 0 (0x0) mmap(0x0,43072,0x3,0x1000,-1,0x0) = 1076051968 (0x40234000) munmap(0x40234000,0xa840) = 0 (0x0) __sysctl(0x7fdfffff4f0,0x2,0x4065b218,0x7fdfffff4e8,0x0,0x0) = 0 (0x0) getpid() = 28449 (0x6f21) fcntl(0x0,0x3,0x0) = 2 (0x2) fcntl(0x1,0x3,0x0) = 2 (0x2) fcntl(0x2,0x3,0x0) = 2 (0x2) pipe() = 3 (0x3) fcntl(0x3,0x3,0x0) = 2 (0x2) fcntl(0x3,0x4,0x6) = 0 (0x0) fcntl(0x4,0x3,0x0) = 2 (0x2) fcntl(0x4,0x4,0x6) = 0 (0x0) readlink("/etc/malloc.conf",0x7fdfffff320,63) ERR#2 'No such file or directory' issetugid() = 0 (0x0) getuid() = 0 (0x0) mmap(0x0,8192,0x3,0x1002,-1,0x0) = 1076051968 (0x40234000) break(0x200d68) = 0 (0x0) break(0x200d68) = 0 (0x0) break(0x204000) = 0 (0x0) break(0x204000) = 0 (0x0) break(0x206000) = 0 (0x0) break(0x206000) = 0 (0x0) break(0x208000) = 0 (0x0) break(0x208000) = 0 (0x0) break(0x20a000) = 0 (0x0) break(0x20a000) = 0 (0x0) break(0x20c000) = 0 (0x0) __sysctl(0x7fdfffff610,0x2,0x40443370,0x7fdfffff5c8,0x0,0x0) = 0 (0x0) mmap(0x7fdffefe000,8192,0x0,0x1000,-1,0x0) = -1056768 (0xffefe000) break(0x20c000) = 0 (0x0) break(0x20e000) = 0 (0x0) gettimeofday(0x40443390,0x0) = 0 (0x0) sysarch(0x2,0x4063e100) = 0 (0x0) sigaction(SIGHUP,0x0,0x40449420) = 0 (0x0) sigaction(SIGINT,0x0,0x40449440) = 0 (0x0) sigaction(SIGQUIT,0x0,0x40449460) = 0 (0x0) sigaction(SIGILL,0x0,0x40449480) = 0 (0x0) sigaction(SIGTRAP,0x0,0x404494a0) = 0 (0x0) sigaction(SIGABRT,0x0,0x404494c0) = 0 (0x0) sigaction(SIGEMT,0x0,0x404494e0) = 0 (0x0) sigaction(SIGFPE,0x0,0x40449500) = 0 (0x0) sigaction(SIGBUS,0x0,0x40449540) = 0 (0x0) sigaction(SIGSEGV,0x0,0x40449560) = 0 (0x0) sigaction(SIGSYS,0x0,0x40449580) = 0 (0x0) sigaction(SIGPIPE,0x0,0x404495a0) = 0 (0x0) sigaction(SIGALRM,0x0,0x404495c0) = 0 (0x0) sigaction(SIGTERM,0x0,0x404495e0) = 0 (0x0) sigaction(SIGURG,0x0,0x40449600) = 0 (0x0) sigaction(SIGTSTP,0x0,0x40449640) = 0 (0x0) sigaction(SIGCONT,0x0,0x40449660) = 0 (0x0) sigaction(SIGCHLD,0x0,0x40449680) = 0 (0x0) sigaction(SIGTTIN,0x0,0x404496a0) = 0 (0x0) sigaction(SIGTTOU,0x0,0x404496c0) = 0 (0x0) sigaction(SIGIO,0x0,0x404496e0) = 0 (0x0) sigaction(SIGXCPU,0x0,0x40449700) = 0 (0x0) sigaction(SIGXFSZ,0x0,0x40449720) = 0 (0x0) sigaction(SIGVTALRM,0x0,0x40449740) = 0 (0x0) sigaction(SIGPROF,0x0,0x40449760) = 0 (0x0) sigaction(SIGWINCH,0x0,0x40449780) = 0 (0x0) sigaction(SIGINFO,0x0,0x404497a0) = 0 (0x0) sigaction(SIGUSR1,0x0,0x404497c0) = 0 (0x0) sigaction(SIGUSR2,0x0,0x404497e0) = 0 (0x0) sigaction(SIGPROF,0x7fdfffff5d0,0x0) = 0 (0x0) sigaction(SIGINFO,0x7fdfffff5d0,0x0) = 0 (0x0) sigaction(SIGCHLD,0x7fdfffff5d0,0x0) = 0 (0x0) sigprocmask(0x3,0x0,0x40443418) = 0 (0x0) __sysctl(0x7fdfffff610,0x2,0x7fdfffff5f0,0x7fdfffff5c8,0x0,0x0) = 0 (0x0) getdtablesize() = 3405 (0xd4d) break(0x20e000) = 0 (0x0) break(0x216000) = 0 (0x0) break(0x216000) = 0 (0x0) break(0x21e000) = 0 (0x0) break(0x21e000) = 0 (0x0) break(0x220000) = 0 (0x0) fcntl(0x0,0x4,0x6) = 0 (0x0) fcntl(0x1,0x4,0x6) = 0 (0x0) fcntl(0x2,0x4,0x6) = 0 (0x0) sigprocmask(0x1,0x40322f40,0x7fdfffff850) = 0 (0x0) sigprocmask(0x3,0x40322f50,0x0) = 0 (0x0) sysarch(0x1,0x40639390) = 0 (0x0) mmap(0x7fdffeee000,65536,0x3,0x400,-1,0x0) = -1122304 (0xffeee000) setitimer(0x2,0x7fdfffff8d0,0x0) = 0 (0x0) poll(0x216000,0x0,0x0) = 0 (0x0) and it just hangs there until I ctrl-C it... Please help! Mysql won't work, and I think I'm going to have to regress this box back to 5.0-Release.... (and please don't tell me to ask on sparc64 - that list seems way too devoted to deep down hardcore hardware hacking - no-one responded there last time I asked this...) Thanks Steven