From owner-freebsd-stable@FreeBSD.ORG Fri Dec 30 21:52:46 2005 Return-Path: X-Original-To: stable@FreeBSD.org Delivered-To: freebsd-stable@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 22F6D16A420 for ; Fri, 30 Dec 2005 21:52:46 +0000 (GMT) (envelope-from m@MHoerich.de) Received: from mail.gmx.net (mail.gmx.net [213.165.64.21]) by mx1.FreeBSD.org (Postfix) with SMTP id 6B5C243D7B for ; Fri, 30 Dec 2005 21:52:40 +0000 (GMT) (envelope-from m@MHoerich.de) Received: (qmail invoked by alias); 30 Dec 2005 21:52:26 -0000 Received: from p548B5DAB.dip.t-dialin.net (EHLO localhost) [84.139.93.171] by mail.gmx.net (mp027) with SMTP; 30 Dec 2005 22:52:26 +0100 X-Authenticated: #5114400 Date: Fri, 30 Dec 2005 22:51:09 +0100 From: Mario Hoerich To: stable@FreeBSD.org Message-ID: <20051230215108.GA99536@Xarfai.MHoerich.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.1i X-Y-GMX-Trusted: 0 Cc: dinoex@FreeBSD.org Subject: FBSD 6 and pthread_testcancel() X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Dec 2005 21:52:46 -0000 [ Since this specifically mentions licq, I've CCed the licq-maintainer ] Hi, Since at least -BETA4, I'm experiencing "random" app-crashes (most, if not all of them Qt/KDE-based), apparently due to problems with pthread. Something is *very* wrong here, but judging from the recent pthread_testcancel()-thread, the problem might be more than a mere pilot error. I've now found a reproducible case: licq-1.3.2. The previous port (1.3.0, I think) worked perfectly fine with the exact same environment. OS is 6.0-STABLE (Sat Dec 17 20:11:17 CET 2005), custom kernel. $ licq 20:59:39: [WRN] Licq: Ignoring stale lockfile (pid 99677) Licq Segmentation Violation Detected. zsh: 13123 abort (core dumped) licq $ gdb /usr/local/bin/licq /var/core/1001-licq.core Core was generated by `licq'. Program terminated with signal 6, Aborted. [[ Reading lots of symbols ]] Loaded symbols for /libexec/ld-elf.so.1 #0 0x285330ab in pthread_testcancel () from /usr/lib/libpthread.so.2 [New Thread 0x81d5000 (runnable)] [New Thread 0x81c3e00 (LWP 100135)] [New Thread 0x81c3c00 (sleeping)] [New Thread 0x81c3a00 (sleeping)] [New Thread 0x81c3800 (runnable)] [New Thread 0x81af600 (LWP 100104)] [New Thread 0x81af000 (sleeping)] (gdb) bt #0 0x285330ab in pthread_testcancel () from /usr/lib/libpthread.so.2 #1 0x285214cd in sigaction () from /usr/lib/libpthread.so.2 #2 0x2851aa95 in pthread_kill () from /usr/lib/libpthread.so.2 #3 0x2851a374 in raise () from /usr/lib/libpthread.so.2 #4 0x285fca6c in abort () from /lib/libc.so.6 #5 0x08134a1f in licq_handle_sigsegv (s=11) at sighandler.c:95 #6 0x2851f3a8 in sigaction () from /usr/lib/libpthread.so.2 #7 0x28520f62 in sigaction () from /usr/lib/libpthread.so.2 #8 0x2852a165 in pthread_mutexattr_init () from /usr/lib/libpthread.so.2 #9 0x2852a1e2 in pthread_mutexattr_init () from /usr/lib/libpthread.so.2 #10 0x285e5f1f in _ctx_start () from /lib/libc.so.6 #11 0x00000000 in ?? () #12 0xbf5fa430 in ?? () #13 0xbf5fa170 in ?? () #14 0x00000000 in ?? () #15 0x2852a1a0 in pthread_mutexattr_init () from /usr/lib/libpthread.so.2 #16 0x2877be22 in UserCodec::defaultEncoding () from /usr/local/lib/licq/licq_qt-gui.so #17 0x2877be79 in UserCodec::codecForICQUser () from /usr/local/lib/licq/licq_qt-gui.so #18 0x2873279f in CUserViewItem::setGraphics () from /usr/local/lib/licq/licq_qt-gui.so #19 0x287330e8 in CUserViewItem::CUserViewItem () from /usr/local/lib/licq/licq_qt-gui.so #20 0x286c743f in CMainWindow::CreateUserFloaty () from /usr/local/lib/licq/licq_qt-gui.so #21 0x286e4011 in CMainWindow::CMainWindow () from /usr/local/lib/licq/licq_qt-gui.so #22 0x286c425c in CLicqGui::Run () from /usr/local/lib/licq/licq_qt-gui.so #23 0x286c524b in LP_Main () from /usr/local/lib/licq/licq_qt-gui.so #24 0x286c5ddd in LP_Main_tep () from /usr/local/lib/licq/licq_qt-gui.so #25 0x285231db in pthread_create () from /usr/lib/libpthread.so.2 #26 0x285e5f1f in _ctx_start () from /lib/libc.so.6 (gdb) Not sure if this is related, but shortly after open("/home/mario/.licq/licq_fifo",0x2,00) = 11 (0xb) fstat(11,0xbfbfe700) = 0 (0x0) getdtablesize() = 11095 (0x2b57) fcntl(11,F_GETFL,0x0) = 2 (0x2) truss(1) detects *varying* unknown syscalls in the midst of literally thousands of kse_release(0x81adf44) = 0 (0x0) calls. $ diff -u truss.licq.1 truss.licq.2 | grep SYSCALL --- UNKNOWN SYSCALL -1080037532 -- --- UNKNOWN SYSCALL 135951512 -- --- UNKNOWN SYSCALL 136068608 -- --- UNKNOWN SYSCALL 135958528 -- +-- UNKNOWN SYSCALL -1080037532 -- +-- UNKNOWN SYSCALL 677545040 -- +-- UNKNOWN SYSCALL 136068608 -- Is there any additional information I might provide? Regards, Mario PS: I'm not subscribed to -stable (too many lists), so please keep me CCed. Thanks!