From owner-freebsd-current@FreeBSD.ORG Fri Sep 21 07:47:53 2007 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 17AE516A419; Fri, 21 Sep 2007 07:47:53 +0000 (UTC) (envelope-from dfr@rabson.org) Received: from itchy.rabson.org (unknown [IPv6:2001:618:400::50b1:e8f2]) by mx1.freebsd.org (Postfix) with ESMTP id 8121113C45B; Fri, 21 Sep 2007 07:47:52 +0000 (UTC) (envelope-from dfr@rabson.org) Received: from [80.177.232.250] (herring.rabson.org [80.177.232.250]) by itchy.rabson.org (8.13.3/8.13.3) with ESMTP id l8L7lnGW028050; Fri, 21 Sep 2007 08:47:49 +0100 (BST) (envelope-from dfr@rabson.org) From: Doug Rabson To: John Birrell In-Reply-To: <20070921070347.GA17990@what-creek.com> References: <6385B28C-01D1-459A-9543-E36C89C7F36E@xview.net> <20070920203413.GA13737@what-creek.com> <46F367E0.4000300@freebsd.org> <20070921070347.GA17990@what-creek.com> Content-Type: text/plain Date: Fri, 21 Sep 2007 08:47:48 +0100 Message-Id: <1190360869.1627.9.camel@herring.rabson.org> Mime-Version: 1.0 X-Mailer: Evolution 2.10.2 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV 0.87.1/4355/Thu Sep 20 18:09:53 2007 on itchy.rabson.org X-Virus-Status: Clean Cc: Darren Reed , Olivier Warin , freebsd-current@freebsd.org Subject: Re: Dtrace port status 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, 21 Sep 2007 07:47:53 -0000 On Fri, 2007-09-21 at 07:03 +0000, John Birrell wrote: > On Thu, Sep 20, 2007 at 11:42:40PM -0700, Darren Reed wrote: > > John Birrell wrote: > > >DTrace consists mainly of kernel modules, however in order for DTrace > > >to inspect the kernel internals it has to have some code inside > > >existing BSD licensed files. > > > > > > > This should not be a problem. > > Code added to BSD licensed files should be BSD licensed. > > Only if it is clean-room coded. > > In the case of DTrace, the only reference is the OpenSolaris > CDDL code. It's hard to claim something as BSD licensed when > all you are really doing is adding stuff like: > > (part of struct thread) > uintptr_t td_dtrace_pc; /* DTrace saved pc from fasttrap. */ > uintptr_t td_dtrace_npc; /* DTrace next pc from fasttrap. */ > uintptr_t td_dtrace_scrpc; > /* DTrace per-thread scratch location. */ > uintptr_t td_dtrace_astpc; > /* DTrace return sequence location. */ > u_int64_t td_hrtime; /* Last time on cpu. */ > > Sun still claims CDDL on snippets as simple as this (because the > reference was CDDL'd). > > I had hoped they'd just say "that's OK to be BSD licensed". > > But, no, their attitude is that FreeBSD can just suck up Sun's > patent clauses in the CDDL. > > I could just change the field names and re-arrange the words > in the comments to make it look like I thought of it. But if that's > OK by Sun's lawyers then they are just stupid. If they were to ask > me in a court of law (in a proceeding like the ones SCO has > been in), what would my answer be? Answer: I read the OpenSolaris > code which is CDDL'd and I worked out what I had to add to FreeBSD > and I added it. With vi. :-) For something like this example, I would suggest putting those fields in a separate structure declared in a CDDL licensed file and then embed that structure in our thread. I'm guessing not all of your problems are quite this tidy though.