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

Jeff Roberson jroberson at jroberson.net
Sat Dec 28 20:11:53 UTC 2019


On Fri, 27 Dec 2019, 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.
>
> 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.
>
> 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?

It seems to be the prevailing theory that headers are not even 
really copyrightable.  This has even been tested in court a few times 
(bsd, java).

http://lkml.iu.edu/hypermail/linux/kernel/0301.1/0362.html

The original definitions from this file were part of posix.1b and so it's 
hard to argue they are anything but public.  Coincidentally I know Greg 
and I'm sure he would not object to reducing the whole file to a two 
clause license.

However, I'm not so certain as you are that it is not possible to have two 
copyrights in the same file so long as they are compatible.  In many cases 
we have multiple authors attributed to an individual file.  There are 
cases where software is purposefully licensed under multiple licenses.

https://en.wikipedia.org/wiki/Multi-licensing

This is not an identical situation but it is a common one.  I called my 
brother who is an IP lawyer and spoke with him about it today.  He 
believes this is sufficiently nuanced that we would need a proper legal 
opinion to determine that.

I wrote the original file 17 years ago and placed a two clause copyright 
in it.  trhodes combined sys/posix4/sched.h with sys/sched.h 13 years ago 
in the following commit: 
https://svnweb.freebsd.org/base/head/sys/sys/sched.h?revision=164185&view=markup

So the original license was in fact two clause.

If a mistake was made, it was made 13 years ago and it is almost 
guaranteed to be legally harmless.  It has nothing to do with what Pedro 
committed today.  I don't trust the armchair lawyering of software 
engineers and so to resolve this we would need to ask the foundation to 
pay their lawyers to pursue it.

In my opinion, this has already wasted everyone's time with an irrelevant 
nit-picking argument.  The onus is not on Pedro to chase this down just so 
he can add SPDX tags.  If this is important to you then you are welcome to 
go sort out the details and then post patches for review.  I'm sure myself 
and greg would be happy to do so.  However it seems that this wasn't even 
worth reading the revision history for you to begin lecturing.

Jeff

>
>>
>> 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.
>
>> Pedro.
>
> -- 
> Rod Grimes                                                 rgrimes at freebsd.org
>


More information about the svn-src-all mailing list