* Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ [not found] ` <20090623191513.GA20253@Krystal> @ 2009-06-24 0:43 ` Mathieu Desnoyers 2009-06-24 8:33 ` Ingo Molnar 0 siblings, 1 reply; 7+ messages in thread From: Mathieu Desnoyers @ 2009-06-24 0:43 UTC (permalink / raw) To: Pierre-Marc Fournier, Tom Zanussi, karim, Michel Dagenais, ltt-dev, Lai Jiangshan, kosaki.motohiro, linux-kernel, Steven Rostedt, Paul E. McKenney, Robert Wisniewski Hi, We want to re-license LTTng as dual-license GPLv2 (or better)/LGPLv2.1 (or better) to facilitate code exchange between the GPLv2 LTTng kernel tracer and LGPLv2.1 userspace LTTng tracing library. This will also include kernel/marker.c, include/linux/marker.h, kernel/tracepoint.c and include/linux/tracepoint.h. For the LTTng tree, everything under the ltt/ subdirectory is targeted. I am the main author of most of these files, and I allow such license change as far as my code is concerned. Additionally, we need the approval of most people who contributed code to either LTTng, Linux Kernel Marker and Tracepoints. Some in ltt/ltt-relay-alloc.c and include/linux/ltt-relay.h is derived from kernel/relay.c, on which IBM owns the copyright. I would appreciate if Paul or Bob could have a look into this. Hopefully with lkml and ltt-dev, I am reaching most people concerned. Thanks, Mathieu * Pierre-Marc Fournier (pierre-marc.fournier@polymtl.ca) wrote: > Hello Tom and Karim, > > I am writing to you because you are mentioned as copyright holders in > LTTng files: > > ltt-relay-alloc.c > http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=blob;f=ltt/ltt-relay-alloc.c;h=d073163a75e1f85a9833741b4bce58f8ad27b3e5;hb=2.6.30-lttng-0.141 > > ltt-relay.h > http://git.kernel.org/?p=linux/kernel/git/compudj/linux-2.6-lttng.git;a=blob;f=include/linux/ltt-relay.h;h=a8c8836d5a86fd18ca3903f803b08a3672ba1ea9;hb=2.6.30-lttng-0.141 > > > At Polytechnique, we are making a userspace port of LTTng. In order for > this port to be available to as many users as possible, we would need to > license it under LGPL 2.1. Therefore, would you give your permission to > release the userspace port of the above files under LGPL 2.1? > > Userspace port of the files (please do not distribute as this is not yet > released): > > relay.c > http://git.dorsal.polymtl.ca/?p=ust.git;a=blob;f=libust/relay.c;h=27794f9e5e2070358d2658b1ab0fa86336d56fc9;hb=c39c72ee5890c7727ae2697f321ba1b3d6c862f5 > > relay.h > http://git.dorsal.polymtl.ca/?p=ust.git;a=blob;f=libust/relay.h;h=ba7c1d63aa2d10c35349bf2d86b70e9000228e04;hb=c39c72ee5890c7727ae2697f321ba1b3d6c862f5 > > > Another question: would you allow us to license the two first files > (ltt-relay-alloc.c and ltt-relay.h) from the kernel tracer as LGPL? This > would ease maintenance, as it would allow to port code from the kernel > tracer to the userspace tracer. Just to make this clearer : We plan to switch to a dual-license scheme for LTTng (GPLv2 + LGPLv2.1) to facilitate further resynchronization between the kernel LTTng and userspace library LTTng. Thanks, Mathieu > > Thanks > > pmf -- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ 2009-06-24 0:43 ` Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ Mathieu Desnoyers @ 2009-06-24 8:33 ` Ingo Molnar 2009-06-24 14:14 ` Mathieu Desnoyers 0 siblings, 1 reply; 7+ messages in thread From: Ingo Molnar @ 2009-06-24 8:33 UTC (permalink / raw) To: Mathieu Desnoyers, Christoph Hellwig Cc: Pierre-Marc Fournier, Tom Zanussi, karim, Michel Dagenais, ltt-dev, Lai Jiangshan, kosaki.motohiro, linux-kernel, Steven Rostedt, Paul E. McKenney, Robert Wisniewski * Mathieu Desnoyers <compudj@krystal.dyndns.org> wrote: > Hi, > > We want to re-license LTTng as > > dual-license GPLv2 (or better)/LGPLv2.1 (or better) > > to facilitate code exchange between the GPLv2 LTTng kernel tracer > and LGPLv2.1 userspace LTTng tracing library. This will also > include kernel/marker.c, include/linux/marker.h, > kernel/tracepoint.c and include/linux/tracepoint.h. For the LTTng > tree, everything under the ltt/ subdirectory is targeted. > > I am the main author of most of these files, and I allow such > license change as far as my code is concerned. Additionally, we > need the approval of most people who contributed code to either > LTTng, Linux Kernel Marker and Tracepoints. Why dont you license the user-space library under the GPLv2? Also, i dont agree that such interfaces should be ABIs, hence i oppose the librarization of such raw kernel interfaces. For example markers will be removed in the future, and tracepoints will sure undergo more corrective iterations as well. Ingo ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ 2009-06-24 8:33 ` Ingo Molnar @ 2009-06-24 14:14 ` Mathieu Desnoyers 2009-06-24 16:33 ` Frank Ch. Eigler 0 siblings, 1 reply; 7+ messages in thread From: Mathieu Desnoyers @ 2009-06-24 14:14 UTC (permalink / raw) To: Ingo Molnar Cc: Christoph Hellwig, Pierre-Marc Fournier, Tom Zanussi, karim, Michel Dagenais, ltt-dev, Lai Jiangshan, kosaki.motohiro, linux-kernel, Steven Rostedt, Paul E. McKenney, Robert Wisniewski * Ingo Molnar (mingo@elte.hu) wrote: > > * Mathieu Desnoyers <compudj@krystal.dyndns.org> wrote: > > > Hi, > > > > We want to re-license LTTng as > > > > dual-license GPLv2 (or better)/LGPLv2.1 (or better) > > > > to facilitate code exchange between the GPLv2 LTTng kernel tracer > > and LGPLv2.1 userspace LTTng tracing library. This will also > > include kernel/marker.c, include/linux/marker.h, > > kernel/tracepoint.c and include/linux/tracepoint.h. For the LTTng > > tree, everything under the ltt/ subdirectory is targeted. > > > > I am the main author of most of these files, and I allow such > > license change as far as my code is concerned. Additionally, we > > need the approval of most people who contributed code to either > > LTTng, Linux Kernel Marker and Tracepoints. > Hi Ingo, > Why dont you license the user-space library under the GPLv2? > The goal we pursue by dual-licensing with GPLv2/LGPLv2.1 is to permit instrumented applications to be themselves distributed under other license than GPL. We currently have a working userspace tracing library port of the LTTng tracer. The goal is to permit this library, which includes the tracepoints, markers and LTTng features, to be used by userspace applications and libraries so they can add static instrumentation (as we currently do in the kernel). We already got the OK from IBM to release the userspace RCU library I've created to support the userspace LTTng port under LGPL. We have also re-created most of the low-level primitives we needed under the MIT-style or LGPL license. > Also, i dont agree that such interfaces should be ABIs, hence i > oppose the librarization of such raw kernel interfaces. For example > markers will be removed in the future, and tracepoints will sure > undergo more corrective iterations as well. > > Ingo There might be some misunderstanding here: the portion of markers/tracepoints/LTTng added to a userspace library have absolutely nothing to do with the kernel anymore. Their scope is only the process they instrument and trace. Therefore this is a different and separate API provided by a userspace library. I don't see how this can be related to the kernel ABI.. ? And we plan to release these first versions of the library by stating clearly that we reserve all rights to change the interface to match the Linux kernel modifications. But we have to start somewhere you know. :) And keeping these libraries under LGPL will ensure that we offer interfaces that permits to re-link the applications with newer instrumentation/tracing libraries, so we won't get stucked with compatibility problems. Mathieu -- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ 2009-06-24 14:14 ` Mathieu Desnoyers @ 2009-06-24 16:33 ` Frank Ch. Eigler 2009-06-24 16:49 ` Mathieu Desnoyers 0 siblings, 1 reply; 7+ messages in thread From: Frank Ch. Eigler @ 2009-06-24 16:33 UTC (permalink / raw) To: Mathieu Desnoyers Cc: Ingo Molnar, Christoph Hellwig, Pierre-Marc Fournier, Tom Zanussi, karim, Michel Dagenais, ltt-dev, Lai Jiangshan, kosaki.motohiro, linux-kernel, Steven Rostedt, Paul E. McKenney, Robert Wisniewski Mathieu Desnoyers <compudj@krystal.dyndns.org> writes: > [...] The goal we pursue by dual-licensing with GPLv2/LGPLv2.1 is > to permit instrumented applications to be themselves distributed > under other license than GPL. [...] Is there some reason you can't just fork/copy off some earlier version of these files over which you had sole authorship (if any)? > [...]The goal is to permit this library, which includes the > tracepoints, markers and LTTng features, to be used by userspace > applications and libraries so they can add static instrumentation > (as we currently do in the kernel). [...] Just in case you're not aware, some API prior art for this is the dtrace sdt.h widget (already supported by systemtap), and of course it has no similarity to the various kernel tracing APIs. - FChE ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ 2009-06-24 16:33 ` Frank Ch. Eigler @ 2009-06-24 16:49 ` Mathieu Desnoyers 2009-06-24 17:23 ` Paul E. McKenney 2009-06-29 23:00 ` Mark Wielaard 0 siblings, 2 replies; 7+ messages in thread From: Mathieu Desnoyers @ 2009-06-24 16:49 UTC (permalink / raw) To: Frank Ch. Eigler Cc: Ingo Molnar, Christoph Hellwig, Pierre-Marc Fournier, Tom Zanussi, karim, Michel Dagenais, ltt-dev, Lai Jiangshan, kosaki.motohiro, linux-kernel, Steven Rostedt, Paul E. McKenney, Robert Wisniewski * Frank Ch. Eigler (fche@redhat.com) wrote: > Mathieu Desnoyers <compudj@krystal.dyndns.org> writes: > > > [...] The goal we pursue by dual-licensing with GPLv2/LGPLv2.1 is > > to permit instrumented applications to be themselves distributed > > under other license than GPL. [...] > > Is there some reason you can't just fork/copy off some earlier version > of these files over which you had sole authorship (if any)? > Actually, for LTTng, I own the copyright of almost everything we need. Most files written by others are mainly the debugfs interfaces done by Fujitsu. There is some derived work from RelayFS in ltt/ltt-relay-alloc.c and include/linux/ltt-relay.h, where getting IBM's approval would be good, but I think in the end this will end up being only a few tens of lines. > > > [...]The goal is to permit this library, which includes the > > tracepoints, markers and LTTng features, to be used by userspace > > applications and libraries so they can add static instrumentation > > (as we currently do in the kernel). [...] > > Just in case you're not aware, some API prior art for this is the > dtrace sdt.h widget (already supported by systemtap), and of course > it has no similarity to the various kernel tracing APIs. Yep, we're aware of this. However, last time I checked, dtrace SDT used a breakpoint even for their userspace tracing, which has a way too large performance overhead for our needs. Moreover, they support only very, very limited typing (0 to 5 u32). In this respect, tracepoints and markers are much more flexible. Thanks, Mathieu > > - FChE > -- Mathieu Desnoyers OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ 2009-06-24 16:49 ` Mathieu Desnoyers @ 2009-06-24 17:23 ` Paul E. McKenney 2009-06-29 23:00 ` Mark Wielaard 1 sibling, 0 replies; 7+ messages in thread From: Paul E. McKenney @ 2009-06-24 17:23 UTC (permalink / raw) To: Mathieu Desnoyers Cc: Frank Ch. Eigler, Ingo Molnar, Christoph Hellwig, Pierre-Marc Fournier, Tom Zanussi, karim, Michel Dagenais, ltt-dev, Lai Jiangshan, kosaki.motohiro, linux-kernel, Steven Rostedt, Robert Wisniewski On Wed, Jun 24, 2009 at 12:49:09PM -0400, Mathieu Desnoyers wrote: > * Frank Ch. Eigler (fche@redhat.com) wrote: > > Mathieu Desnoyers <compudj@krystal.dyndns.org> writes: > > > > > [...] The goal we pursue by dual-licensing with GPLv2/LGPLv2.1 is > > > to permit instrumented applications to be themselves distributed > > > under other license than GPL. [...] > > > > Is there some reason you can't just fork/copy off some earlier version > > of these files over which you had sole authorship (if any)? > > > > Actually, for LTTng, I own the copyright of almost everything we need. > Most files written by others are mainly the debugfs interfaces done by > Fujitsu. There is some derived work from RelayFS in > ltt/ltt-relay-alloc.c and include/linux/ltt-relay.h, where getting IBM's > approval would be good, but I think in the end this will end up being > only a few tens of lines. It is going to be a -lot- easier and faster to simply rewrite a few tens of lines than to get any kind of approval. ;-) I cannot reasonably argue that the prior approval for RCU covers tracing, sad to say. So unless there is something very special about the few tens of lines, could you please look at just clean-room rewriting them? Thanx, Paul > > > [...]The goal is to permit this library, which includes the > > > tracepoints, markers and LTTng features, to be used by userspace > > > applications and libraries so they can add static instrumentation > > > (as we currently do in the kernel). [...] > > > > Just in case you're not aware, some API prior art for this is the > > dtrace sdt.h widget (already supported by systemtap), and of course > > it has no similarity to the various kernel tracing APIs. > > Yep, we're aware of this. However, last time I checked, dtrace SDT used > a breakpoint even for their userspace tracing, which has a way too large > performance overhead for our needs. > > Moreover, they support only very, very limited typing (0 to 5 u32). In > this respect, tracepoints and markers are much more flexible. > > Thanks, > > Mathieu > > > > > - FChE > > > > -- > Mathieu Desnoyers > OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ 2009-06-24 16:49 ` Mathieu Desnoyers 2009-06-24 17:23 ` Paul E. McKenney @ 2009-06-29 23:00 ` Mark Wielaard 1 sibling, 0 replies; 7+ messages in thread From: Mark Wielaard @ 2009-06-29 23:00 UTC (permalink / raw) To: linux-kernel Mathieu Desnoyers <compudj <at> krystal.dyndns.org> writes: > * Frank Ch. Eigler (fche <at> redhat.com) wrote: > > > [...]The goal is to permit this library, which includes the > > > tracepoints, markers and LTTng features, to be used by userspace > > > applications and libraries so they can add static instrumentation > > > (as we currently do in the kernel). [...] > > > > Just in case you're not aware, some API prior art for this is the > > dtrace sdt.h widget (already supported by systemtap), and of course > > it has no similarity to the various kernel tracing APIs. > > Yep, we're aware of this. However, last time I checked, dtrace SDT used > a breakpoint even for their userspace tracing, which has a way too large > performance overhead for our needs. You might want to check again. Although the systemtap sdt.h should be source compatible with dtrace markers since it provides the same compile time interfaces/macros (which is how systemtap support java hotspot probing for example), it isn't tied to any implementation details. The default implementation inserts a NOP that can be replaced by a breakpoint instruction. But Stan Cox added variants that can use syscalls/utrace/kprobes which have different performance overhead tradeoffs (http://article.gmane.org/gmane.linux.systemtap/12667). This is an implementation detail though since the source interfaces are the same. Just recompiling your application and/or libraries against a newer version of the sdt.h interfaces will automagically provide the different probe types. Cheers, Mark ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2009-06-29 23:05 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <4A412702.80707@polymtl.ca>
[not found] ` <20090623191128.GA19010@Krystal>
[not found] ` <20090623191513.GA20253@Krystal>
2009-06-24 0:43 ` Dual-licensing LTTng, marker and tracepoints under GPLv2+/LGPLv2.1+ Mathieu Desnoyers
2009-06-24 8:33 ` Ingo Molnar
2009-06-24 14:14 ` Mathieu Desnoyers
2009-06-24 16:33 ` Frank Ch. Eigler
2009-06-24 16:49 ` Mathieu Desnoyers
2009-06-24 17:23 ` Paul E. McKenney
2009-06-29 23:00 ` Mark Wielaard
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox