From owner-freebsd-bugs@FreeBSD.ORG Wed Jun 29 14:50:08 2011 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C4D371065673 for ; Wed, 29 Jun 2011 14:50:08 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 9F7598FC14 for ; Wed, 29 Jun 2011 14:50:08 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p5TEo83V007128 for ; Wed, 29 Jun 2011 14:50:08 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p5TEo8qw007127; Wed, 29 Jun 2011 14:50:08 GMT (envelope-from gnats) Resent-Date: Wed, 29 Jun 2011 14:50:08 GMT Resent-Message-Id: <201106291450.p5TEo8qw007127@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Pan Tsu Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A3A7B106566B for ; Wed, 29 Jun 2011 14:43:48 +0000 (UTC) (envelope-from inyaoo@gmail.com) Received: from mail-ww0-f50.google.com (mail-ww0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id 265768FC18 for ; Wed, 29 Jun 2011 14:43:47 +0000 (UTC) Received: by wwe6 with SMTP id 6so1308747wwe.31 for ; Wed, 29 Jun 2011 07:43:47 -0700 (PDT) Received: by 10.227.179.14 with SMTP id bo14mr795692wbb.90.1309358626978; Wed, 29 Jun 2011 07:43:46 -0700 (PDT) Received: from localhost (load-me-in-a-browser-if-this-tor-node-is-causing-you-grief.riseup.net [77.109.139.87]) by mx.google.com with ESMTPS id en1sm957495wbb.35.2011.06.29.07.43.40 (version=SSLv3 cipher=OTHER); Wed, 29 Jun 2011 07:43:44 -0700 (PDT) Message-Id: <86r56cu29j.fsf@gmail.com> Date: Wed, 29 Jun 2011 18:43:20 +0400 From: Pan Tsu To: FreeBSD-gnats-submit@FreeBSD.org Cc: Subject: bin/158431: [dtrace] crash in dt_proc_lookup when attaching to PID, assert(dpr != NULL) X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jun 2011 14:50:08 -0000 >Number: 158431 >Category: bin >Synopsis: [dtrace] crash in dt_proc_lookup when attaching to PID, assert(dpr != NULL) >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jun 29 14:50:08 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Pan Tsu >Release: FreeBSD 9.0-CURRENT r223641M amd64 >Organization: >Environment: include GENERIC option KDTRACE_HOOKS option KDTRACE_FRAME option DDB_CTF makeoption WITH_CTF=1 >Description: Tracing of an already running process doesn't seem to work, e.g. $ dtruss -p 1234 $ dtrace -P pid1234 also without any probes $ dtrace -p 1234 or when no PID is specified explicitly $ dtrace -P 'syscall { @[probefunc,ustack()] = count(); }' >How-To-Repeat: # kldload dtraceall # sleep 60 & # gdb -q --args dtrace -p $! (gdb) r Starting program: /usr/sbin/dtrace -p 31535 [New LWP 100977] [New Thread 80b807400 (LWP 100977/dtrace)] [New Thread 80b80f800 (LWP 100513/dtrace)] dtrace: no probes specified Assertion failed: (dpr != NULL), file /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c, line 751. Program received signal SIGABRT, Aborted. [Switching to Thread 80b807400 (LWP 100977/dtrace)] 0x00000008101429dc in thr_kill () at thr_kill.S:3 3 thr_kill.S: No such file or directory. in thr_kill.S Current language: auto; currently asm (gdb) bt #0 0x00000008101429dc in thr_kill () at thr_kill.S:3 #1 0x00000008101e3fd3 in abort () at /usr/src/lib/libc/stdlib/abort.c:65 #2 0x0000000808d8a031 in __assert (expr=Could not find the frame base for "__assert". ) at assert.h:56 #3 0x0000000808d8af2d in dt_proc_lookup (dtp=0x80b841000, P=0x80d7ffb40, remove=0) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c:751 #4 0x0000000808d8af92 in dt_proc_destroy (dtp=0x80b841000, P=0x80d7ffb40) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c:763 #5 0x0000000808d8bc6e in dt_proc_hash_destroy (dtp=0x80b841000) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c:1162 #6 0x0000000808daa4b5 in dtrace_close (dtp=0x80b841000) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c:1554 #7 0x0000000000402775 in dfatal (fmt=0x408572 "no probes %s\n") at /usr/src/cddl/usr.sbin/dtrace/../../../cddl/contrib/opensolaris/cmd/dtrace/dtrace.c:236 #8 0x0000000000406b2c in main (argc=3, argv=0x7ffffffed9c0) at /usr/src/cddl/usr.sbin/dtrace/../../../cddl/contrib/opensolaris/cmd/dtrace/dtrace.c:1825 (gdb) bt f #0 0x00000008101429dc in thr_kill () at thr_kill.S:3 No locals. #1 0x00000008101e3fd3 in abort () at /usr/src/lib/libc/stdlib/abort.c:65 act = { __sigaction_u = { __sa_handler = 0, __sa_sigaction = 0 }, sa_flags = 0, sa_mask = { __bits = {4294967263, 4294967295, 4294967295, 4294967295} } } #2 0x0000000808d8a031 in __assert (expr=Could not find the frame base for "__assert". ) at assert.h:56 No locals. #3 0x0000000808d8af2d in dt_proc_lookup (dtp=0x80b841000, P=0x80d7ffb40, remove=0) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c:751 dph = (dt_proc_hash_t *) 0x80b894300 pid = 0 dpr = (dt_proc_t *) 0x0 dpp = (dt_proc_t **) 0x80b894338 #4 0x0000000808d8af92 in dt_proc_destroy (dtp=0x80b841000, P=0x80d7ffb40) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c:763 dpr = (dt_proc_t *) 0x80b841000 dph = (dt_proc_hash_t *) 0xfefefefefefefeff npr = (dt_proc_notify_t *) 0x7ffffffed028 npp = (dt_proc_notify_t **) 0x0 rflag = -2139062144 #5 0x0000000808d8bc6e in dt_proc_hash_destroy (dtp=0x80b841000) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c:1162 dph = (dt_proc_hash_t *) 0x80b894300 dpr = (dt_proc_t *) 0x80bbea800 #6 0x0000000808daa4b5 in dtrace_close (dtp=0x80b841000) at /usr/src/cddl/lib/libdtrace/../../../cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c:1554 idp = (dt_ident_t *) 0x7ffffffed9c0 ndp = (dt_ident_t *) 0x206 dmp = (dt_module_t *) 0xa pvp = (dt_provider_t *) 0xff0100001f000001 pgp = (dtrace_prog_t *) 0x6 dxp = (dt_xlator_t *) 0x8080808080808080 dirp = (dt_dirpath_t *) 0x80b841000 i = 8 #7 0x0000000000402775 in dfatal (fmt=0x408572 "no probes %s\n") at /usr/src/cddl/usr.sbin/dtrace/../../../cddl/contrib/opensolaris/cmd/dtrace/dtrace.c:236 ap = {{ gp_offset = 16, fp_offset = 48, overflow_arg_area = 0x7ffffffed750, reg_save_area = 0x7ffffffed680 }} #8 0x0000000000406b2c in main (argc=3, argv=0x7ffffffed9c0) at /usr/src/cddl/usr.sbin/dtrace/../../../cddl/contrib/opensolaris/cmd/dtrace/dtrace.c:1825 buf = { dtbd_size = 0, dtbd_cpu = 0, dtbd_errors = 0, dtbd_drops = 0, dtbd_data = 0x0, dtbd_oldest = 0 } act = { __sigaction_u = { __sa_handler = 0x7ffffffed900, __sa_sigaction = 0x7ffffffed900 }, sa_flags = -75296, sa_mask = { __bits = {32767, 4294891968, 32767, 0} } } oact = { __sigaction_u = { __sa_handler = 0x1, __sa_sigaction = 0x1 }, sa_flags = 6363853, sa_mask = { __bits = {8, 4294891632, 32767, 4294891608} } } status = {{ dtst_dyndrops = 0, dtst_dyndrops_rinsing = 0, dtst_dyndrops_dirty = 0, dtst_specdrops = 0, dtst_specdrops_busy = 0, dtst_specdrops_unavail = 0, dtst_errors = 0, dtst_filled = 0, dtst_stkstroverflows = 0, dtst_dblerrors = 0, dtst_killed = 0 '\0', dtst_exiting = 0 '\0', dtst_pad = "\000\000\000\000\000" }, { dtst_dyndrops = 0, dtst_dyndrops_rinsing = 0, dtst_dyndrops_dirty = 0, dtst_specdrops = 0, dtst_specdrops_busy = 0, dtst_specdrops_unavail = 0, dtst_errors = 0, dtst_filled = 0, dtst_stkstroverflows = 0, dtst_dblerrors = 0, dtst_killed = 0 '\0', dtst_exiting = 0 '\0', dtst_pad = "\000\000\000\000\000" }} opt = -2 dcp = (dtrace_cmd_t *) 0x3 done = 0 mode = 0 err = 32767 i = 0 c = -1 p = 0x7ffffffedd81 "" v = (char **) 0x0 P = (struct proc_handle *) 0x80d7ffb40 pid = 31535 >Fix: >Release-Note: >Audit-Trail: >Unformatted: