HAVE_CC_STACKPROTECTOR should be selected by architectures with stack canary implementation. It is not about the compiler support. For the consistency with commit 050e9baa9dc9 ("Kbuild: rename CC_STACKPROTECTOR[_STRONG] config variables"), remove 'CC_' from the config symbol. I moved the 'select' lines to keep the alphabetical sorting.
Unified · Split
| @@ -1,6 +1,6 @@ | ||
| 1 | 1 | # |
| 2 | 2 | # Feature name: stackprotector |
| 3 | −# Kconfig: HAVE_CC_STACKPROTECTOR | |
| 3 | +# Kconfig: HAVE_STACKPROTECTOR | |
| 4 | 4 | # description: arch supports compiler driven stack overflow protection |
| 5 | 5 | # |
| 6 | 6 | ----------------------- |
| @@ -549,7 +549,7 @@ config GCC_PLUGIN_RANDSTRUCT_PERFORMANCE · 548 unmodified lines | ||
| 549 | 549 | in structures. This reduces the performance hit of RANDSTRUCT |
| 550 | 550 | at the cost of weakened randomization. |
| 551 | 551 | |
| 552 | −config HAVE_CC_STACKPROTECTOR | |
| 552 | +config HAVE_STACKPROTECTOR | |
| 553 | 553 | bool |
| 554 | 554 | help |
| 555 | 555 | An arch should select this symbol if: |
| @@ -560,7 +560,7 @@ config CC_HAS_STACKPROTECTOR_NONE · 4 unmodified lines | ||
| 560 | 560 | |
| 561 | 561 | config STACKPROTECTOR |
| 562 | 562 | bool "Stack Protector buffer overflow detection" |
| 563 | − depends on HAVE_CC_STACKPROTECTOR | |
| 563 | + depends on HAVE_STACKPROTECTOR | |
| 564 | 564 | depends on $(cc-option,-fstack-protector) |
| 565 | 565 | default y |
| 566 | 566 | help |
| @@ -57,7 +57,6 @@ config ARM · 56 unmodified lines | ||
| 57 | 57 | select HAVE_ARCH_TRACEHOOK |
| 58 | 58 | select HAVE_ARM_SMCCC if CPU_V7 |
| 59 | 59 | select HAVE_EBPF_JIT if !CPU_ENDIAN_BE32 |
| 60 | − select HAVE_CC_STACKPROTECTOR | |
| 61 | 60 | select HAVE_CONTEXT_TRACKING |
| 62 | 61 | select HAVE_C_RECORDMCOUNT |
| 63 | 62 | select HAVE_DEBUG_KMEMLEAK |
| @@ -92,6 +91,7 @@ config ARM · 28 unmodified lines | ||
| 92 | 91 | select HAVE_RCU_TABLE_FREE if (SMP && ARM_LPAE) |
| 93 | 92 | select HAVE_REGS_AND_STACK_ACCESS_API |
| 94 | 93 | select HAVE_RSEQ |
| 94 | + select HAVE_STACKPROTECTOR | |
| 95 | 95 | select HAVE_SYSCALL_TRACEPOINTS |
| 96 | 96 | select HAVE_UID16 |
| 97 | 97 | select HAVE_VIRT_CPU_ACCOUNTING_GEN |
| @@ -103,7 +103,6 @@ config ARM64 · 102 unmodified lines | ||
| 103 | 103 | select HAVE_ARM_SMCCC |
| 104 | 104 | select HAVE_EBPF_JIT |
| 105 | 105 | select HAVE_C_RECORDMCOUNT |
| 106 | − select HAVE_CC_STACKPROTECTOR | |
| 107 | 106 | select HAVE_CMPXCHG_DOUBLE |
| 108 | 107 | select HAVE_CMPXCHG_LOCAL |
| 109 | 108 | select HAVE_CONTEXT_TRACKING |
| @@ -128,6 +127,7 @@ config ARM64 · 18 unmodified lines | ||
| 128 | 127 | select HAVE_PERF_USER_STACK_DUMP |
| 129 | 128 | select HAVE_REGS_AND_STACK_ACCESS_API |
| 130 | 129 | select HAVE_RCU_TABLE_FREE |
| 130 | + select HAVE_STACKPROTECTOR | |
| 131 | 131 | select HAVE_SYSCALL_TRACEPOINTS |
| 132 | 132 | select HAVE_KPROBES |
| 133 | 133 | select HAVE_KRETPROBES |
| @@ -41,7 +41,6 @@ config MIPS · 40 unmodified lines | ||
| 41 | 41 | select HAVE_ARCH_TRANSPARENT_HUGEPAGE if CPU_SUPPORTS_HUGEPAGES && 64BIT |
| 42 | 42 | select HAVE_CBPF_JIT if (!64BIT && !CPU_MICROMIPS) |
| 43 | 43 | select HAVE_EBPF_JIT if (64BIT && !CPU_MICROMIPS) |
| 44 | − select HAVE_CC_STACKPROTECTOR | |
| 45 | 44 | select HAVE_CONTEXT_TRACKING |
| 46 | 45 | select HAVE_COPY_THREAD_TLS |
| 47 | 46 | select HAVE_C_RECORDMCOUNT |
| @@ -66,6 +65,7 @@ config MIPS · 18 unmodified lines | ||
| 66 | 65 | select HAVE_OPROFILE |
| 67 | 66 | select HAVE_PERF_EVENTS |
| 68 | 67 | select HAVE_REGS_AND_STACK_ACCESS_API |
| 68 | + select HAVE_STACKPROTECTOR | |
| 69 | 69 | select HAVE_SYSCALL_TRACEPOINTS |
| 70 | 70 | select HAVE_VIRT_CPU_ACCOUNTING_GEN if 64BIT || !SMP |
| 71 | 71 | select IRQ_FORCED_THREADING |
| @@ -77,7 +77,7 @@ config SUPERH32 · 76 unmodified lines | ||
| 77 | 77 | select PERF_EVENTS |
| 78 | 78 | select ARCH_HIBERNATION_POSSIBLE if MMU |
| 79 | 79 | select SPARSE_IRQ |
| 80 | − select HAVE_CC_STACKPROTECTOR | |
| 80 | + select HAVE_STACKPROTECTOR | |
| 81 | 81 | |
| 82 | 82 | config SUPERH64 |
| 83 | 83 | def_bool "$(ARCH)" = "sh64" |
| @@ -130,7 +130,6 @@ config X86 · 129 unmodified lines | ||
| 130 | 130 | select HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD if X86_64 |
| 131 | 131 | select HAVE_ARCH_VMAP_STACK if X86_64 |
| 132 | 132 | select HAVE_ARCH_WITHIN_STACK_FRAMES |
| 133 | − select HAVE_CC_STACKPROTECTOR if CC_HAS_SANE_STACKPROTECTOR | |
| 134 | 133 | select HAVE_CMPXCHG_DOUBLE |
| 135 | 134 | select HAVE_CMPXCHG_LOCAL |
| 136 | 135 | select HAVE_CONTEXT_TRACKING if X86_64 |
| @@ -182,6 +181,7 @@ config X86 · 45 unmodified lines | ||
| 182 | 181 | select HAVE_RCU_TABLE_FREE |
| 183 | 182 | select HAVE_REGS_AND_STACK_ACCESS_API |
| 184 | 183 | select HAVE_RELIABLE_STACKTRACE if X86_64 && UNWINDER_FRAME_POINTER && STACK_VALIDATION |
| 184 | + select HAVE_STACKPROTECTOR if CC_HAS_SANE_STACKPROTECTOR | |
| 185 | 185 | select HAVE_STACK_VALIDATION if X86_64 |
| 186 | 186 | select HAVE_RSEQ |
| 187 | 187 | select HAVE_SYSCALL_TRACEPOINTS |
| @@ -17,7 +17,6 @@ config XTENSA · 16 unmodified lines | ||
| 17 | 17 | select GENERIC_SCHED_CLOCK |
| 18 | 18 | select GENERIC_STRNCPY_FROM_USER if KASAN |
| 19 | 19 | select HAVE_ARCH_KASAN if MMU |
| 20 | − select HAVE_CC_STACKPROTECTOR | |
| 21 | 20 | select HAVE_DEBUG_KMEMLEAK |
| 22 | 21 | select HAVE_DMA_CONTIGUOUS |
| 23 | 22 | select HAVE_EXIT_THREAD |
| @@ -28,6 +27,7 @@ config XTENSA · 4 unmodified lines | ||
| 28 | 27 | select HAVE_MEMBLOCK |
| 29 | 28 | select HAVE_OPROFILE |
| 30 | 29 | select HAVE_PERF_EVENTS |
| 30 | + select HAVE_STACKPROTECTOR | |
| 31 | 31 | select IRQ_DOMAIN |
| 32 | 32 | select MODULES_USE_ELF_RELA |
| 33 | 33 | select NO_BOOTMEM |