Re: [PATCH v10 17/17] kasan: enable instrumentation of global variables

From: Andrey Ryabinin
Date: Fri Jan 30 2015 - 18:18:13 EST


2015-01-31 0:45 GMT+03:00 Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
> On Fri, 30 Jan 2015 20:47:13 +0300 Andrey Ryabinin <a.ryabinin@xxxxxxxxxxx> wrote:
>
>> >> +struct kasan_global {
>> >> + const void *beg; /* Address of the beginning of the global variable. */
>> >> + size_t size; /* Size of the global variable. */
>> >> + size_t size_with_redzone; /* Size of the variable + size of the red zone. 32 bytes aligned */
>> >> + const void *name;
>> >> + const void *module_name; /* Name of the module where the global variable is declared. */
>> >> + unsigned long has_dynamic_init; /* This needed for C++ */
>> >
>> > This can be removed?
>> >
>>
>> No, compiler dictates layout of this struct. That probably deserves a comment.
>
> I see. A link to the relevant gcc doc would be good.
>

There is no doc, only gcc source code.

> Perhaps the compiler provides a header file so clients of this feature
> don't need to write their own?
>

Nope.
Actually, we are the only client of this feature outside gcc code.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/