From owner-freebsd-bugs@FreeBSD.ORG Fri Apr 13 21:50:11 2012 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 2C5241065676 for ; Fri, 13 Apr 2012 21:50:11 +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 E130D8FC17 for ; Fri, 13 Apr 2012 21:50:10 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q3DLoAVg075285 for ; Fri, 13 Apr 2012 21:50:10 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q3DLoA8W075284; Fri, 13 Apr 2012 21:50:10 GMT (envelope-from gnats) Resent-Date: Fri, 13 Apr 2012 21:50:10 GMT Resent-Message-Id: <201204132150.q3DLoA8W075284@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, Ryan Stone Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 87935106566B for ; Fri, 13 Apr 2012 21:43:37 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id 7388D8FC0A for ; Fri, 13 Apr 2012 21:43:37 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.4/8.14.4) with ESMTP id q3DLhbU7083650 for ; Fri, 13 Apr 2012 21:43:37 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.4/8.14.4/Submit) id q3DLhb78083629; Fri, 13 Apr 2012 21:43:37 GMT (envelope-from nobody) Message-Id: <201204132143.q3DLhb78083629@red.freebsd.org> Date: Fri, 13 Apr 2012 21:43:37 GMT From: Ryan Stone To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: kern/166928: fbt provider does not destroy probes when module unloaded 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: Fri, 13 Apr 2012 21:50:11 -0000 >Number: 166928 >Category: kern >Synopsis: fbt provider does not destroy probes when module unloaded >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: Fri Apr 13 21:50:10 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Ryan Stone >Release: 8.2-RELEASE >Organization: >Environment: >Description: # kldload dtraceall # kldload hwpmc # dtrace -n 'fbt:hwpmc::' # kldunload hwpmc # dtrace -n 'fbt:hwpmc::' * kernel panic * The first invocation of dtrace(1) creates the fbt probes for the hwpmc module, and they are not destroyed when hwpmc is unloaded. In Solaris and its derivatives this is done by dtrace_module_unloaded in dtrace.c. The implementation of dtrace_module_unloaded() is a bit hackish though and could incur collateral damage -- it looks like if I unload foo.ko, all probes matching *:foo:*:* will be destroyed, not just fbt:foo:*:*. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted: