From owner-freebsd-current@FreeBSD.ORG Fri May 26 15:31:15 2006 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2BFFA16A424 for ; Fri, 26 May 2006 15:31:15 +0000 (UTC) (envelope-from joseph.koshy@gmail.com) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.168]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7DE5A43D4C for ; Fri, 26 May 2006 15:31:14 +0000 (GMT) (envelope-from joseph.koshy@gmail.com) Received: by ug-out-1314.google.com with SMTP id m2so194235uge for ; Fri, 26 May 2006 08:31:12 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=sRetBya6LtejL8nnHhXo5aDjV3z516HGrgBcR9/BID8EJqoyoZ0wwNxEIDi3joYVd5A0AKKc0gSjfvLCF7RL+EtSra1Y2AFdG1BNR66AIjzmjJCH9A5tRanasQSu3DbbC6gR6vaNIxHvBJBKv4ZSiWZbFY3X1efF1UdZlhcH5g0= Received: by 10.78.31.18 with SMTP id e18mr120461hue; Fri, 26 May 2006 08:31:12 -0700 (PDT) Received: by 10.78.71.19 with HTTP; Fri, 26 May 2006 08:31:12 -0700 (PDT) Message-ID: <84dead720605260831n65cecbc2r7c6a2a7b45416379@mail.gmail.com> Date: Fri, 26 May 2006 21:01:12 +0530 From: "Joseph Koshy" To: "John Birrell" In-Reply-To: <20060525195346.GA25270@what-creek.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <20060525065510.GA20475@what-creek.com> <20060525082633.GA724@turion.vk2pj.dyndns.org> <20060525195346.GA25270@what-creek.com> Cc: Peter Jeremy , current@freebsd.org Subject: Re: DTrace for FreeBSD - Status Update X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 May 2006 15:31:16 -0000 > The place were DTrace is really, really machine dependent is > in the trap handling code. DTrace has what it calls 'safe' > loads where it goes to read from a memory address which a > flag set to stop a panic if a trap occurs during the > message access. Is there any way we can do some code refactoring when DTrace is brought in? For example, Dtrace has a 'stack()' primitive that walks the kernel stack and a 'ustack()' primitive that walks userland stacks. Both of these are useful for hwpmc, and are useful in other contexts (e.g., recording stack traces for userland processes that dump core). Similarly, alq(9), ktrace(2) and hwpmc(4) all implement kernel->userland logging in some form or the other. DTrace's logging requirements are probably a superset of all of these so having a common logging layer could help reduce code bloat in the kernel. -- FreeBSD Developer, http://people.freebsd.org/~jkoshy