Re: [PATCH v6 0/6] Introduce GCC plugin infrastructure

From: Kees Cook
Date: Tue Apr 12 2016 - 14:27:57 EST


On Tue, Apr 12, 2016 at 10:46 AM, David Brown <david.brown@xxxxxxxxxx> wrote:
> On Thu, Apr 07, 2016 at 11:10:23PM +0200, Emese Revfy wrote:
>>
>> This patch set introduce the GCC plugin infrastructure with examples for
>> testing
>> and documentation.
>>
>> GCC plugins are loadable modules that provide extra features to the
>> compiler.
>> They are useful for runtime instrumentation and static analysis.
>>
>> The infrastructure supports all gcc versions from 4.5 to 6.0, building
>> out-of-tree modules and building in a separate directory.
>> Cross-compilation
>> is supported too but currently only the x86, arm and arm64 architectures
>> enables plugins.
>>
>> This infrastructure was ported from grsecurity/PaX. It is a CII project
>> supported by the Linux Foundation.
>>
>> Emese Revfy (6):
>> Shared library support
>> GCC plugin infrastructure
>> The GCC plugin infrastructure supports the arm and arm64 architectures too
>> Add Cyclomatic complexity plugin
>> Documentations of the GCC plugin infrastructre
>> Add sancov plugin
>
>
> I've tested the v6 patches on arm, and partially on arm64. The arm64
> gcc has a bug in make install that doesn't install all necessary
> headers to build plugins. I believe the patch will work once that
> version gets out. It does, however, print a helpful message now
> explaining the likely cause of the failure.
>
> Tested-by: David Brown <david.brown@xxxxxxxxxx>

Awesome! Thanks for testing this. I still need to finish getting my
arm64 environment built...

Do you happen to know if there's already a gcc bug open for the make
install problem?

Masahiro and Michal, does this series look good to you? I'd really
like to get this into -next for wider testing.

Emese, were you thinking of doing the initify plugin next after this
infrastructure lands?

-Kees

--
Kees Cook
Chrome OS & Brillo Security