svn commit: r356142 - in head/sys: dev/ofw sys

Pedro Giffuni pfg at FreeBSD.org
Sat Dec 28 14:41:30 UTC 2019


On 28/12/2019 00:27, Rodney W. Grimes wrote:
> [ Charset UTF-8 unsupported, converting... ]
>> On 2019-12-27 23:24, Rodney W. Grimes wrote:
>>> [ Charset UTF-8 unsupported, converting... ]
>>>> On 2019-12-27 22:16, Rodney W. Grimes wrote:
>>>>>> Author: pfg
>>>>>> Date: Sat Dec 28 02:58:30 2019
>>>>>> New Revision: 356142
>>>>>> URL: https://svnweb.freebsd.org/changeset/base/356142
>>>>>>
>>>>>> Log:
>>>>>>    SPDX: update some tags with two licenses.
>>>>>>
>>>>>> Modified:
>>>>>>    head/sys/dev/ofw/openfirm.h
>>>>>>    head/sys/sys/sched.h
>>>>>>
>>>>>> Modified: head/sys/dev/ofw/openfirm.h
>>>>>> ==============================================================================
>>>>>> --- head/sys/dev/ofw/openfirm.h	Sat Dec 28 02:11:41 2019	(r356141)
>>>>>> +++ head/sys/dev/ofw/openfirm.h	Sat Dec 28 02:58:30 2019	(r356142)
>>>>>> @@ -1,7 +1,7 @@
>>>>>>   /*	$NetBSD: openfirm.h,v 1.1 1998/05/15 10:16:00 tsubai Exp $	*/
>>>>>>   
>>>>>>   /*-
>>>>>> - * SPDX-License-Identifier: BSD-4-Clause
>>>>>> + * SPDX-License-Identifier: (BSD-4-Clause AND BSD-2-Clause-FreeBSD)
>>>>>>    *
>>>>>>    * Copyright (C) 1995, 1996 Wolfgang Solfrank.
>>>>>>    * Copyright (C) 1995, 1996 TooLs GmbH.
>>>>>>
>>>>>> Modified: head/sys/sys/sched.h
>>>>>> ==============================================================================
>>>>>> --- head/sys/sys/sched.h	Sat Dec 28 02:11:41 2019	(r356141)
>>>>>> +++ head/sys/sys/sched.h	Sat Dec 28 02:58:30 2019	(r356142)
>>>>>> @@ -1,5 +1,5 @@
>>>>>>   /*-
>>>>>> - * SPDX-License-Identifier: BSD-4-Clause
>>>>>> + * SPDX-License-Identifier: (BSD-4-Clause AND BSD-2-Clause-FreeBSD)
>>>>>>    *
>>>>>>    * Copyright (c) 1996, 1997
>>>>>>    *      HD Associates, Inc.  All rights reserved.
>>>>>>
>>>>> This situation should not of occured, and leads to an ambigous license state.
>>>> It actually happens a lot (I mean two or more licenses in the same
>>>> file): SPDX explicitly uses AND (not OR) for cases like this.
>>>>
>>>>> What code is under license 2 clause and what under 4 clause?
>>>> Anyone redistributing the file has to respect both licenses. If you are
>>>> lucky enough to have access to version control you may be able to
>>>> discern the author and the corresponding license, otherwise you are
>>>> trapped with both.
>>> So the 2 clause add is null, so why have it there?
>> So that eventually, when the project gets to a point where sufficient
>> part of the code is rewritten they can opt to change the license to the
>> simpler form. There are ways to relicense projects gradually, and its
>> nothing new, in fact it is very much in the BSD spirit to gradually
>> replace more restricted UNIX code.
> The only changing we have done to BSD licenses as in thost cases
> that the Regents requested/granted the right to change to lesser
> clauses.  Until you get HD & Associtates (in this one case) to
> grant that right your walking on a grey edge I would rather not
> walk on.


As an independent developer I don't have to adopt on my code 
restrictions that other developers have adopted for their code.


> The reference to BSD spirit and replacing more restricted UNIX (tm)
> code is way off base in this context.  This is not an AT & T
> license we are talking about here.  And again you can not just
> modify the existing 4 clause licensed file by slapping a 2 clause
> license into it, or the project would of done that everyplace
> ages ago.

We are talking about restrictions. You probably missed it, but in the 
late 90's the project opted for removing restrictions, even if that 
meant the code could eventually end up in copyleft codebases. FreeBSD 
has been flexible and pragmatic about it but the other BSDs made 
basically the same decision.

> What is done here in this file is a mistake, and should be corrected.
> Can you point me to other files that actually have multiple BSD
> licenses in them?

I have better things to do in my holidays, but there are plenty.

I will note for reference that this is indeed official project policy:

https://www.freebsd.org/internal/software-license.html

" ... We invite and greatly appreciate the contribution of both changes 
and additions under the two-clause BSD license, and encourage the 
adoption of this license by other open source projects."

>> It may be a long shot but it has happened on other projects as well:
>> libdialog (in our tree) was rewritten and relicensed from GPL to LGPL.
>>
>>
>>>>> It looks to me as if this was done by Jeff Robinson as the 2 clause is
>>>>> attached to his copyright and we should probably just ask him to relax
>>>>> that back to the files existing 4 clause license, and or go after Greg
>>>>> Ansley of HD associtates to get them to relax the 4 clause.
>>>>>
>>>> No, Jeff (or anyone else, as I said there are many cases in our tree) is
>>>> entitled to choose his own license as long as it is compatible with the
>>>> pre-existing licensing.
>>> I was specifically sighting this one file, sys/sys/sched.h.
>>>
>>> Actually that might be a grey area, no place does the BSD license grant
>>> you rights to modify the terms of the license, and that is in effect
>>> what adding this second license does.
>> No one is modifying the original license: it is there and applies to the
>> original code.
>>
>>
>>> You can choose your own license for original work, sure, but obliterating
>>> parts of an existing license by applying a second license which is in
>>> conflict is probably a poor idea.
>>
>> We don't do that at all: pretty clearly there is no conflict between
>> both licenses as you can comply with both.
> The only way to comply with both is to comply with the full 4
> clause license.  Hense the 2 clause is pointless in being there
> and can never apply until all 4 clause authors agree to change
> to 2 clause.

Both 4 Clause and 2 Clause authors may disappear, they call it "bus 
factor" in other projects, and in that case leaving some evidence of the 
openness of changing the license by an individual is useful.

Pedro.



More information about the svn-src-head mailing list