linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Primiano Tucci <primiano@google.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	"Joel Fernandes, Google" <joel@joelfernandes.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	aneesh kumar <aneesh.kumar@linux.ibm.com>,
	Carmen Jackson <carmenjackson@google.com>,
	Dan Williams <dan.j.williams@intel.com>,
	Daniel Colascione <dancol@google.com>,
	jglisse@redhat.com, linux-mm <linux-mm@kvack.org>,
	Mayank Gupta <mayankgupta@google.com>,
	Michal Hocko <mhocko@suse.com>, Minchan Kim <minchan@kernel.org>,
	mm-commits@vger.kernel.org, rcampbell@nvidia.com,
	Tim Murray <timmurray@google.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Vlastimil Babka <vbabka@suse.cz>,
	Matthew Wilcox <willy@infradead.org>
Subject: Re: [patch 026/158] mm: emit tracepoint when RSS changes
Date: Tue, 3 Dec 2019 10:58:42 -0500	[thread overview]
Message-ID: <20191203105842.2e504fca@gandalf.local.home> (raw)
In-Reply-To: <CA+yH71d0R8-D1mUFPnZa7JWBL-Z6Ktwj2wibircU-ZeK8PpkKg@mail.gmail.com>

On Tue, 3 Dec 2019 10:44:36 +0000
Primiano Tucci <primiano@google.com> wrote:

> Furthermore, from a pure technical viewpoint, dynamic linking is a major pain
> for many cross-platform projects because has different subtleties on each
> platform. Most projects just ship big statically linked monoliths.
> Having a LGPL dependency in Perfetto means telling them "if you want to use
> this tracing project you need to change your build rules / packaging strategy
> and start dealing with dynamic linking on four different platforms
> (Linux, Android, Mac, Windows)". This would be a show-stopper for our
> project.
>

LGPL does not impose restrictions on having to be dynamically linked.
You can legally statically link a LGPL project as well. There's no
problem with that. You can do that with glibc too.

The one reason I can see that Google wouldn't want to include it, is
that you would also be required to maintain the library that you use.
That is, if someone wants the source code of the library you are using,
you must be able to provide it for them. That's the requirement that
LGPL imposes.

Now it is true that if someone wants to modify the LGPL library, enough
must be distributed to allow the user to do that. But as your code is
Apache, I'm guessing you can give people enough code to still do that.

From: https://copyleft.org/guide/comprehensive-gpl-guidech11.html#x14-10100010.1

"There are, however, subtle differences and additions. For example not
 only is CCS required (as would be with normal versions of GPL), but
 also the CCS provided must enable a developer to regenerate the
 modified version of the entire combined work, using with a modified
 version of the LGPL’d work (as a replacement for the version a
 distributor provided). For example, LGPL’d code is statically linked to
 a non-copyleft executable, the required source code must also include
 sufficient material to split the distributed executable and relink with
 a modified version of the library."

Thus, you are right that code licensed under LGPL is a "handle with
care". But there's a lot of code under LGPL, I'm surprised that there's
not better mechanisms to handle it.

One solution I'm looking at is creating flex/bison templates to do the
parsing. If we do this, those could be licensed under a different
license that would make it easier for others to include this code.

-- Steve


  reply	other threads:[~2019-12-03 15:58 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-01  1:50 [patch 026/158] mm: emit tracepoint when RSS changes akpm
2019-12-02 17:14 ` Steven Rostedt
2019-12-02 21:13   ` Joel Fernandes
2019-12-02 21:56     ` Steven Rostedt
2019-12-02 23:45       ` Joel Fernandes
2019-12-02 23:53         ` Steven Rostedt
2019-12-03  2:48           ` Primiano Tucci
2019-12-03  5:38             ` Mathieu Desnoyers
2019-12-03 10:44               ` Primiano Tucci
2019-12-03 15:58                 ` Steven Rostedt [this message]
2019-12-04  4:08                   ` Joel Fernandes
2019-12-03 14:53             ` Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191203105842.2e504fca@gandalf.local.home \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=aneesh.kumar@linux.ibm.com \
    --cc=carmenjackson@google.com \
    --cc=dan.j.williams@intel.com \
    --cc=dancol@google.com \
    --cc=jglisse@redhat.com \
    --cc=joel@joelfernandes.org \
    --cc=linux-mm@kvack.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=mayankgupta@google.com \
    --cc=mhocko@suse.com \
    --cc=minchan@kernel.org \
    --cc=mm-commits@vger.kernel.org \
    --cc=primiano@google.com \
    --cc=rcampbell@nvidia.com \
    --cc=timmurray@google.com \
    --cc=torvalds@linux-foundation.org \
    --cc=vbabka@suse.cz \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).