On 07/09/14 23:31, Andi Kleen wrote: > Andrey Ryabinin <a.ryabinin@xxxxxxxxxxx> writes: >> + >> +#undef memcpy >> +void *kasan_memset(void *ptr, int val, size_t len); >> +void *kasan_memcpy(void *dst, const void *src, size_t len); >> +void *kasan_memmove(void *dst, const void *src, size_t len); >> + >> +#define memcpy(dst, src, len) kasan_memcpy((dst), (src), (len)) >> +#define memset(ptr, val, len) kasan_memset((ptr), (val), (len)) >> +#define memmove(dst, src, len) kasan_memmove((dst), (src), (len)) > > I don't think just define is enough, gcc can call these functions > implicitely too (both with and without __). For example for a struct copy. > > You need to have true linker level aliases. > It's true, but problem with linker aliases that they cannot be disabled for some files we don't want to instrument. > -Andi > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>