Re: [PATCH v1 03/16] khwasan: add CONFIG_KASAN_GENERIC and CONFIG_KASAN_HW

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 22, 2018 at 4:25 PM, Andrey Konovalov <andreyknvl@xxxxxxxxxx> wrote:
> On Mon, May 14, 2018 at 6:57 PM, Andrey Ryabinin
> <aryabinin@xxxxxxxxxxxxx> wrote:
>>
>>
>> On 05/08/2018 08:20 PM, Andrey Konovalov wrote:
>>
>>> diff --git a/scripts/Makefile.kasan b/scripts/Makefile.kasan
>>> index 69552a39951d..47023daf5606 100644
>>> --- a/scripts/Makefile.kasan
>>> +++ b/scripts/Makefile.kasan
>>> @@ -1,5 +1,5 @@
>>>  # SPDX-License-Identifier: GPL-2.0
>>> -ifdef CONFIG_KASAN
>>> +ifdef CONFIG_KASAN_GENERIC
>>>  ifdef CONFIG_KASAN_INLINE
>>>       call_threshold := 10000
>>>  else
>>> @@ -45,3 +45,28 @@ endif
>>>  CFLAGS_KASAN_NOSANITIZE := -fno-builtin
>>>
>>>  endif
>>> +
>>> +ifdef CONFIG_KASAN_HW
>>> +
>>> +ifdef CONFIG_KASAN_INLINE
>>> +    instrumentation_flags := -mllvm -hwasan-mapping-offset=$(KASAN_SHADOW_OFFSET)
>>> +else
>>> +    instrumentation_flags := -mllvm -hwasan-instrument-with-calls=1
>>> +endif
>>> +
>>> +CFLAGS_KASAN_MINIMAL := -fsanitize=kernel-hwaddress
>>> +
>>> +ifeq ($(call cc-option, $(CFLAGS_KASAN_MINIMAL) -Werror),)
>>> +    ifneq ($(CONFIG_COMPILE_TEST),y)
>>> +        $(warning Cannot use CONFIG_KASAN_HW: \
>>> +            -fsanitize=hwaddress is not supported by compiler)
>>> +    endif
>>> +else
>>> +    CFLAGS_KASAN := $(call cc-option, -fsanitize=kernel-hwaddress \
>>> +        -mllvm -hwasan-instrument-stack=0 \
>>> +        $(instrumentation_flags))
>>> +endif
>>
>> So this code does the following:
>>  1) Warn if compiler doesn't support -fsanitize=kernel-hwaddress
>>  2) Compile the kernel with all necessary set of the '-fsanitize=kernel-hwaddress -mllvm -hwasan-*' flags if compiler supports all of them.
>>  3) Compile the kernel with empty CFLAGS_KASAN without a warning if compiler supports 'fsanitize=kernel-hwaddress',
>>      but doesn't support the rest '-mllvm -hwasan-*' flags.
>>
>> The last one is just nonsense.
>
> Should I remove "call cc-option" to fix this?

Nevermind, will fix in v2.

>
>>
>>
>>> +
>>> +CFLAGS_KASAN_NOSANITIZE := -fno-builtin
>>> +
>>
>> Does it really has to declared twice?
>
> Will fix in v2.




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux