From: Joel Fernandes <joel@joelfernandes.org>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Primiano Tucci <primiano@google.com>,
Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
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 23:08:22 -0500 [thread overview]
Message-ID: <20191204040822.GA192877@google.com> (raw)
In-Reply-To: <20191203105842.2e504fca@gandalf.local.home>
On Tue, Dec 03, 2019 at 10:58:42AM -0500, Steven Rostedt wrote:
> 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.
I did know static link is Ok, thanks for clarifying that.
>
> 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.
Actually, this is not the concern here. CCS should not be an issue for
Perfetto since (AIUI) it is fully open source. Or, am I missing your point?
For fully open source projects, I don't think Google should have a problem
with statically linking to LGPL.
The only issue that can arise is if an Apache 2.0 project like Perfetto uses
libtraceevent, but instead of statically linking to libtraceevent, it
actually derives from libtraceevent. I think only this case it will be
problematic, right? All other cases should be fine.
thanks,
- Joel
> 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
next prev parent reply other threads:[~2019-12-04 4:08 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
2019-12-04 4:08 ` Joel Fernandes [this message]
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=20191204040822.GA192877@google.com \
--to=joel@joelfernandes.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=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=rostedt@goodmis.org \
--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