Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#919356: Licensing of include/linux/hash.h

92 views
Skip to first unread message

Domenico Andreoli

unread,
Jan 23, 2019, 4:00:05 AM1/23/19
to
Ben Finney <big...@debian.org> writes:
> Domenico Andreoli <ca...@debian.org> writes:
>
> > the situation of dwarves-dfsg improved a lot over the weekend
>
> That's good to hear. What is the event you're referring to? Can you give
> a URL to something that describes this change?

Upstream (in CC) reacted to my request of clarification and patches
have been applied upstream and on Salsa. See bug 919356 [0] (please
keep in CC).

> > the only knot left is now the license of hash.h
> >
> > This file is also present in the kernel [0] with an updated copyright
> > but still without license.
>
> The file you show (in the Linux code base) seems likely to have an
> equivalent implementation under a different license, from some other
> code base.

This will require research and work unlikely to be done before Buster
release. Are we going to drop this package for now?

> > I received a private email from somebody in the kernel community who
> > already tried to contact Nadia in the past but did not get any reply.
>
> Thank you also for contacting the Linux developers forum to ask
> <URL:https://www.mail-archive.com/linux-...@vger.kernel.org/msg1900588.html>.

(also in CC now)

> > I think that pushing it to non-free is formally the right thing but I
> > actually feel it's not the right thing.
>
> To know that work (that file) is free software, we need a clear grant of
> some specific license, for that work.
>
> If the work is not free, it would be incorrect to have the work in Debian.

Is it possible that for the kernel it is instead correct because it is,
as whole, covered by its COPYING?

> Alternatives, for complying with the Debian Free Software Guidelines with
> this package, include:
>
> * Find a credible grant of license under some GPL-compatible free
> license to that exact file. Document that explicit grant in the Debian
> package. This demonstrates the work is DFSG-free.
>
> * Convince ‘dwarves-dfsg’ upstream to replace that file with a different
> implementation (I don't know whether such an implementation exists)
> under a license compatible with the same version of GNU GPL. Document
> that explicit grant in the Debian package. This demonstrates the
> modified work is DFSG-free.

Arnaldo, what priority would you give to this task?

>
> * Replace that file in Debian only, with a different implementation as
> above. Document that explicit grant in the Debian package. This
> demonstrates the modified Debian package is DFSG-free.
>
> * Move the work to the ‘non-free’ area.
>
> * Remove the work altogether.
>
> Those are in descending order of (my recommended) preference.

Thanks,
Domenico

[0] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=919356

--
3B10 0CA1 8674 ACBA B4FE FCD2 CE5B CF17 9960 DE13
signature.asc

Domenico Andreoli

unread,
Feb 11, 2019, 2:40:07 AM2/11/19
to
On Mon, Feb 11, 2019 at 12:08:32AM +0100, Kristian Fiskerstrand wrote:
> On 1/23/19 9:50 AM, Domenico Andreoli wrote:
> > Ben Finney <big...@debian.org> writes:
> >> Domenico Andreoli <ca...@debian.org> writes:

[...]

> >>> the only knot left is now the license of hash.h
> >>>
> >>> This file is also present in the kernel [0] with an updated copyright
> >>> but still without license.

[...]

> >> To know that work (that file) is free software, we need a clear grant of
> >> some specific license, for that work.
> >>
> >> If the work is not free, it would be incorrect to have the work in Debian.
> >
> > Is it possible that for the kernel it is instead correct because it is,
> > as whole, covered by its COPYING?
> >
> >> Alternatives, for complying with the Debian Free Software Guidelines with
> >> this package, include:
> >>
> >> * Find a credible grant of license under some GPL-compatible free
> >> license to that exact file. Document that explicit grant in the Debian
> >> package. This demonstrates the work is DFSG-free.
> >>
> >> * Convince ???dwarves-dfsg??? upstream to replace that file with a different
> >> implementation (I don't know whether such an implementation exists)
> >> under a license compatible with the same version of GNU GPL. Document
> >> that explicit grant in the Debian package. This demonstrates the
> >> modified work is DFSG-free.
> >>
> >> * Replace that file in Debian only, with a different implementation as
> >> above. Document that explicit grant in the Debian package. This
> >> demonstrates the modified Debian package is DFSG-free.
> >>
> >> * Move the work to the ???non-free??? area.
> >>
> >> * Remove the work altogether.
> >>
> >> Those are in descending order of (my recommended) preference.

[...]

> It was [pointed out] by one of our license group that [hash.h] is the
> same that has a GPL-2+ in [fio] which has a signed-off-by.
>
> References:
> [pointed out]
> https://bugs.gentoo.org/677586#c1
>
> [hash.h]
> https://git.kernel.org/pub/scm/linux/kernel/git/axboe/fio.git/commit/hash.h?id=bdc7211e190482f0c17c109a0d90834a6611be1c

Yes, the Signed-off-by is from Jens Axboe (in CC) but he's not the
original author, I guess he just copied the file as Arnaldo did. The
file he committed has not any reference to the license.

> [fio]
> https://metadata.ftp-master.debian.org/changelogs/main/f/fio/fio_3.12-2_copyright

I'm afraid that this entry in wrong. I'll seek confirmation with Martin Steigerwald.

Regards,
Domenico
signature.asc

Ulrich Mueller

unread,
Feb 11, 2019, 7:50:07 AM2/11/19
to
Not sure if this will help, but hash.h originally appeared in
Linux 2.5.7. In the following commit one can see that most of its code
was moved or copied from mm/filemap.c:
https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/?id=882ad449046cec136c484dd2b3659fb4c683e0a3

filemap.c has a copyright line by Linus, but git blame shows that
the relevant code was added in 2002 with a commit by Rik van Riel:
https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/?id=e5191c50d12621e04f8bc247dcb6a0f4ad76ae26

The relevant thread in LKML is here:
https://lkml.org/lkml/2002/2/18/1970

Ulrich

Jens Axboe

unread,
Feb 11, 2019, 6:00:08 PM2/11/19
to
On 2/11/19 3:50 AM, Martin Steigerwald wrote:
> Adding in ax...@kernel.dk, as I am not sure whether the oracle.com address
> from Jens is actually valid / up to date.
>
> Domenico Andreoli - 11.02.19, 08:22:
>> On Mon, Feb 11, 2019 at 12:08:32AM +0100, Kristian Fiskerstrand wrote:
>> >
> Mit freundlichen Grüßen / With kind regards​
>
> Martin Steigerwald  • 
> Proact Deutschland GmbH
>
> Trainer
>
> Telefon: *+49 911 30999 0* <tel:+49%20911%2030999%200>  • 
> Fax: *+49 911 30999 99* <tel:>
>
> Südwestpark 43  • 
> 90449  Nürnberg  • 
> Germany
>
> *Martin.St...@proact.de* <mailto:Martin.St...@proact.de>  • 
> *www.proact.de* <https://www.proact.de/>
>
>  
> Amtsgericht Nürnberg
>  • 
> HRB 18320
>
> Geschäftsführer: 
> Oliver Kügow  • 
> Richard Müller  • 
> Jakob Høholdt
>  • 
> Peter Mikael Javestad
>
>  
> – Delivering Business Agility –
> Which entry to you refer to? I assume the one about hash.h.
>
> Well the file has in its header:
>
> /* Fast hashing routine for a long.
> (C) 2002 William Lee Irwin III, IBM */
>
> /*
> * Knuth recommends primes in approximately golden ratio to the maximum
> * integer representable by a machine word for multiplicative hashing.
> * Chuck Lever verified the effectiveness of this technique:
> * http://www.citi.umich.edu/techreports/reports/citi-tr-00-1.pdf
> *
> * These primes are chosen to be bit-sparse, that is operations on
> * them can use shifts and additions instead of multiplications for
> * machines where multiplications are slow.
> */
>
> It has been quite a while ago. I bet back then I did not regard this as
> license information since it does not specify a license. Thus I assumed it to
> be GPL-2 as the other files which have no license boiler plate. I.e.: Check file
> is it has different license, if not, then assume it has license as specified in
> COPYING.
>
> Not specifying a license can however also mean in this context that it has no
> license as the file contains copyright information from another author.
>
> Of course I can update copyright file in case my conclusion from a long time
> ago was wrong.
>
> Jens?

Right, if nothing else is noted, it's GPL v2.

--
Jens Axboe

Jens Axboe

unread,
Feb 12, 2019, 11:20:07 AM2/12/19
to
On 2/11/19 11:27 PM, Ben Finney wrote:
> Martin Steigerwald <Martin.St...@proact.de> writes:
>
>> Well the file has in its header:
>>
>> /* Fast hashing routine for a long.
>> (C) 2002 William Lee Irwin III, IBM */
>>
>> /*
>> * Knuth recommends primes in approximately golden ratio to the maximum
>> * integer representable by a machine word for multiplicative hashing.
>> * Chuck Lever verified the effectiveness of this technique:
>> * http://www.citi.umich.edu/techreports/reports/citi-tr-00-1.pdf
>> *
>> * These primes are chosen to be bit-sparse, that is operations on
>> * them can use shifts and additions instead of multiplications for
>> * machines where multiplications are slow.
>> */
>>
>> It has been quite a while ago. I bet back then I did not regard this
>> as license information since it does not specify a license. Thus I
>> assumed it to be GPL-2 as the other files which have no license boiler
>> plate. I.e.: Check file is it has different license, if not, then
>> assume it has license as specified in COPYING.
>>
>> Not specifying a license can however also mean in this context that it
>> has no license as the file contains copyright information from another
>> author.
>
> If a work (even one file) “has no license”, that means no special
> permissions are granted and normal copyright applies: All rights
> reserved, i.e. not redistributable. So, no license is grounds to
> consider a work non-free and non-redistributable.
>
> If, on the other hand, the file is to be free software, there would need
> to be a clear grant of some free software license to that work.
>
> Given the confusion over this file, I would consider it a significant
> risk to just assume we have GPLv2 permissions without being told that
> explicitly by the copyright holder. Rather, the reason we are seeking a
> clearly-granted free license for this one file, is because we are trying
> to replace a probably non-free file with the same code in it.
>
> It seems we need to keep looking, and in the meantime assume we have no
> free license in this file.

FWIW, fio.c includes the following mention:

* The license below covers all files distributed with fio unless otherwise
* noted in the file itself.

followed by the GPL v2 license. I'll go through and add SPDX headers to
everything to avoid wasting anymore time on this nonsense.

--
Jens Axboe

Ben Finney

unread,
Feb 12, 2019, 5:20:06 PM2/12/19
to
Jens Axboe <ax...@kernel.dk> writes:

> On 2/11/19 11:27 PM, Ben Finney wrote:
> > If, on the other hand, the file is to be free software, there would need
> > to be a clear grant of some free software license to that work.
>
> FWIW, fio.c includes the following mention:
>
> * The license below covers all files distributed with fio unless otherwise
> * noted in the file itself.
>
> followed by the GPL v2 license.

Great! That does appear to be a positive assertion from the copyright
holder, that we have a grant to use that work under GPLv2.

That written grant of license can be used in the Debian package to
demonstrate our license to the work.

> I'll go through and add SPDX headers to everything to avoid wasting
> anymore time on this nonsense.

Not necessary from my point of view for this specific case, because we
have the clear explicit grant of license. Don't let me stop you from
doing the good work of documenting more clearly :-)

--
\ “Come on Milhouse, there’s no such thing as a soul! It’s just |
`\ something they made up to scare kids, like the Boogie Man or |
_o__) Michael Jackson.” —Bart, _The Simpsons_ |
Ben Finney
0 new messages