svn commit: r344487 - in head/sys: conf gnu/gcov
kmacy at freebsd.org
Tue Feb 26 01:11:48 UTC 2019
> We had a brief discussion of this commit within a subset of core. This
> addition of GPLv2 code is fine as the code is easily removal to a module
> (per kmoore@) should the day come that we're read to evict all GPL code.
I don't execute the ctors until coverage is enabled because I have to
manually find the symbols. The linker doesn't actually generate a ctor
section for functions in text.startup in spite of what Juniper's
linker commit would lead one to believe - presumably they have a
private linker script in addition to a private gcov port. Thus, it
really could just work fine as a module. Nonetheless, everything to be
profiled needs to be compiled with instrumentation, so separating it
out makes very little sense to me. Although, I suppose ctfconvert +
dtrace module is somewhat analogous.
> The modest increase in activation energy for that task seems worth it
> for the short-term gains of reduced integration cost (this code will
> greatly improve our ZFS-on-Linux test coverage.)
> Rod rightly points out that we haven't accepted SPDX tags alone as
> license statements. The standard GPL v2.0 boiler plate should be added
> to this file along side the tag.
I've copied the full copyright attribution that is in the
corresponding files on Linux. Is there some reason why FreeBSD
requires the files to be inflated with the full license text where the
original lacks it?
> An additional issue is that the a warning tag was not added to
> sys/conf/files. A warning along the lines of:
> warning "kernel contains GPLv2 licensed GCOV"
> needs to be added.
> This commit needed more through review.
How would this be achieved:? I had several people on the review and no
one had substantive feedback.
> We intend to update our license policy to require core sign off for
> new GPL code to ensure we're not adding new, tightly integrated
> dependencies, to document that we're doing so knowingly, and
> to make sure steps aren't missed. The current document is at:
More information about the svn-src-all