From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966250AbeE2T0v (ORCPT ); Tue, 29 May 2018 15:26:51 -0400 Received: from mail-qk0-f194.google.com ([209.85.220.194]:42599 "EHLO mail-qk0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965759AbeE2T0s (ORCPT ); Tue, 29 May 2018 15:26:48 -0400 X-Google-Smtp-Source: ADUXVKKJbqz8ASXc02XkpqcgUludGYO4sIxSZ3GAwbbgwc1hRbCJ7tbvK3sTcAZtgmu/RyCXynCL5g== Date: Tue, 29 May 2018 15:26:43 -0400 From: Kent Overstreet To: "Luis R. Rodriguez" Cc: Coly Li , Ciaran Farrell , One Thousand Gnomes , linux-bcache@vger.kernel.org, "linux-kernel@vger.kernel.org" , Greg Kroah-Hartman , Tso Ted , Linus Torvalds , Thomas Gleixner , Philippe Ombredanne , Kate Stewart , Jonas Oberg Subject: Re: PostgreSQL licensed code on Linux Message-ID: <20180529192643.GA3487@kmo-pixel> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.0 (2018-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 29, 2018 at 12:14:01PM -0700, Luis R. Rodriguez wrote: > The question over future possible PostgreSQL licensed code on Linux came up > to me recently. While doing some quick of digging around I found code > already under such license it seems: > > The file drivers/md/bcache/util.c has: > > cafe563591446 (Kent Overstreet 2013-03-23 16:11:31 -0700 318) /* > cafe563591446 (Kent Overstreet 2013-03-23 16:11:31 -0700 319) * Portions > Copyright (c) 1996-2001, PostgreSQL Global Development Group (Any > cafe563591446 (Kent Overstreet 2013-03-23 16:11:31 -0700 320) * use > permitted, subject to terms of PostgreSQL license; see.) > > That seems to indicate that we've had already PostgreSQL licensed code on > Linux since Kent's addition of bcache to Linux in 2013. The portion of code > is rather small though, to me it seems to cover only crc_table[], > bch_crc64_update(), and bch_crc64(). Four things: Yep, it's just that code. > > a) This is the only code on Linux which seems to use PostgreSQL > b) The language for license seem to be cut off, 'see.' seems incomplete, > whereas typically it would point to a file with the full language text. > c) We can only infer what portions of the file are under this license > d) Even though some licenses claim to be GPL-Compatible, if possible we > should dual license such with the GPL if possible (*) > > If some folks are considering adding yet more code to Linux which is > currently under a PostgreSQL license I figured reviewing the existing > PostgreSQL code's use may be a good start to set precedent for future work. > Since we already have at least one file with a PostgreSQL-sort-of boiler > plate it at least sets the precedent we have already sort of dealt with > PostgreSQL. > > My recommendations: > > As silly as it may be we should split out the PostgreSQL licensed code from > drivers/md/bcache/util.c into its own file and while at it clarify the > license. > > If possible, if we can dual license this code with GPL it would be good as > it would do two things: > > 1) Removes any ambiguity in case of questions over GPL Compatibility in the > future about the PostgreSQL license > > 2) Other folks considering using PostgreSQL licensed code on Linux have a > template they can use Sounds good to me, I'll defer to your judgement since you have more experience with these things than me :) Let me know if there's anything you need from me. I never modified that code besides renaming the functions, but dual licensing would be fine by me.