On Mon, 2018-03-26 at 13:04 +0200, Hannes Reinecke wrote:
> On Fri, 23 Mar 2018 21:30:17 +0100
> 
> > I believe that various files besides the three above contain code
> > which has been copied from kernel sources and would thus be under
> > GPLv2 (the alua code, for example).
> > 
> > Again, IANAL, but this looks like a mess that really ought to be
> > cleaned up. As long as we don't do that, there's no point in
> > changing
> > the address headers.
> > 
> > It would make sense to generally agree on a GPL version (2, 2 or
> > later, 3, 3 or later), and apply LGPL to (some of) the libraries
> > and
> > GPL to the tools.
> > 
> 
> Well, as I'm the one responsible for adding 'sysfs.c' and 'uevent.c'
> to
> multipath-tools I should allowed to change the license there, right?

I guess so.

> If so I'm happy to change them to LPGL to make things easier.

That'd be helpful, but not sufficient, because there's a couple of
other files under "GPLv2 or later" left, and because the GPLv2/v3
problem for libdmpp remains.

It'd be a good idea to upgrade generally from "Library GPL v2" at least
to LGPLv2.1. That shouldn't be a problem, as the only major
differerence between LGPLv2 and LGPLv2.1 is the addition of §6b in the
latter, allowing the use of "a suitable shared library mechanism for
linking with the library".

According to https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility
, LGPLv2.1 is compatible with GPLv3, although the "combination is under
GPLv3".

The key question is whether we need *L*GPL at all. We only do if we
want to allow prioprietary code to link with our code. Because
libmultipath is no "library" intended for general use, rather a set of
common code between multipath and multipathd, I don't see a strong case
for *L*GPL for it. The parts of the code that might be interesting for
external parties to use are libmpathcmd, libmpathpersist, and libdmmp,
where the GPLv3 of the latter explicity forbids use by proprietary
code. libmpathcmd doesn't need to link libmultipath, but
libmpathpersist in its current form does.

I vote to change libmpathcmd and libmpathpersist to "LGPLv2.1 or
later", and everything else to "GPLv2 or later" (*). But I own just a
marginal portion of the code, so that's for others to decide.

Cheers,
Martin

(*) Caveat: code which has been copied from kernel sources (list.h?,
alua code?, ... ?) would be under "GPLv2 only", and changing that would
require consent of the original copyright holders, which might be
difficult to obtain.

-- 
Dr. Martin Wilck <mwi...@suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

Reply via email to