LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 1/3] ftrace: simplify the Kconfig dependency of FTRACE
@ 2021-07-31 5:22 Masahiro Yamada
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
2021-07-31 5:22 ` [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER Masahiro Yamada
0 siblings, 2 replies; 11+ messages in thread
From: Masahiro Yamada @ 2021-07-31 5:22 UTC (permalink / raw)
To: Steven Rostedt, Ingo Molnar; +Cc: Masahiro Yamada, linux-kernel
The entire FTRACE block is surrounded by 'if TRACING_SUPPORT' ...
'endif'.
Using 'depends on' is a simpler way to guard FTRACE.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---
kernel/trace/Kconfig | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index d567b1717c4c..9d3f918b5867 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -135,10 +135,9 @@ config TRACING_SUPPORT
depends on STACKTRACE_SUPPORT
default y
-if TRACING_SUPPORT
-
menuconfig FTRACE
bool "Tracers"
+ depends on TRACING_SUPPORT
default y if DEBUG_KERNEL
help
Enable the kernel tracing infrastructure.
@@ -1032,6 +1031,3 @@ config HIST_TRIGGERS_DEBUG
If unsure, say N.
endif # FTRACE
-
-endif # TRACING_SUPPORT
-
--
2.27.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 [PATCH 1/3] ftrace: simplify the Kconfig dependency of FTRACE Masahiro Yamada
@ 2021-07-31 5:22 ` Masahiro Yamada
2021-07-31 6:50 ` Heiko Carstens
` (5 more replies)
2021-07-31 5:22 ` [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER Masahiro Yamada
1 sibling, 6 replies; 11+ messages in thread
From: Masahiro Yamada @ 2021-07-31 5:22 UTC (permalink / raw)
To: Steven Rostedt, Ingo Molnar
Cc: Masahiro Yamada, Arnd Bergmann, Ard Biesheuvel, Borislav Petkov,
Linus Walleij, Ley Foon Tan, x86, linux-mips, sparclinux,
Anshuman Khandual, Nick Hu, Thomas Gleixner, Mike Rapoport,
Geert Uytterhoeven, Peter Zijlstra, Catalin Marinas, linux-riscv,
YiFei Zhu, Greentime Hu, Palmer Dabbelt, Michal Simek,
Helge Deller, linux-sh, Vineet Gupta, Uwe Kleine-König,
Guo Ren, Sami Tolvanen, Richard Weinberger,
Christian Borntraeger, Rich Felker, Albert Ou, Heiko Carstens,
Jeff Dike, Max Filippov, linux-hexagon, linux-xtensa,
H. Peter Anvin, Will Deacon, Thomas Bogendoerfer,
Stefan Kristiansson, linux-s390, Yoshinori Sato,
James E.J. Bottomley, linux-um, Andrey Konovalov,
Frederic Weisbecker, Nicholas Piggin, Benjamin Herrenschmidt,
Brian Cain, linux-csky, Stafford Horne, Russell King,
linux-arm-kernel, Paul Walmsley, Chris Zankel, Vasily Gorbik,
linux-snps-arc, Jonas Bonn, linux-parisc, Kees Cook,
Krzysztof Kozlowski, Colin Ian King, David S. Miller,
linux-kernel, Vincent Chen, Anton Ivanov, Andrew Morton,
Michael Ellerman, Paul Mackerras, Mark Rutland, Viresh Kumar,
linuxppc-dev, openrisc
Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
having many defines.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---
arch/Kconfig | 3 +++
arch/arc/Kconfig | 4 +---
arch/arm/Kconfig | 5 +----
arch/arm64/Kconfig | 4 +---
arch/csky/Kconfig | 4 +---
arch/hexagon/Kconfig | 4 +---
arch/microblaze/Kconfig | 1 +
arch/microblaze/Kconfig.debug | 5 -----
arch/mips/Kconfig | 1 +
arch/mips/Kconfig.debug | 4 ----
arch/nds32/Kconfig | 4 +---
arch/nios2/Kconfig | 3 ---
arch/openrisc/Kconfig | 4 +---
arch/parisc/Kconfig | 1 +
arch/parisc/Kconfig.debug | 3 ---
arch/powerpc/Kconfig | 5 +----
arch/riscv/Kconfig | 4 +---
arch/s390/Kconfig | 1 +
arch/s390/Kconfig.debug | 3 ---
arch/sh/Kconfig | 1 +
arch/sh/Kconfig.debug | 3 ---
arch/sparc/Kconfig | 1 +
arch/sparc/Kconfig.debug | 4 ----
arch/um/Kconfig | 5 +----
arch/x86/Kconfig | 1 +
arch/x86/Kconfig.debug | 3 ---
arch/xtensa/Kconfig | 4 +---
27 files changed, 21 insertions(+), 64 deletions(-)
diff --git a/arch/Kconfig b/arch/Kconfig
index 129df498a8e1..9471a0feecaf 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -197,6 +197,9 @@ config HAVE_FUNCTION_ERROR_INJECTION
config HAVE_NMI
bool
+config TRACE_IRQFLAGS_SUPPORT
+ bool
+
#
# An arch should select this if it provides all these things:
#
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index d8f51eb8963b..0c81df3a5c7a 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -49,9 +49,7 @@ config ARC
select PERF_USE_VMALLOC if ARC_CACHE_VIPT_ALIASING
select HAVE_ARCH_JUMP_LABEL if ISA_ARCV2 && !CPU_ENDIAN_BE32
select SET_FS
-
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
+ select TRACE_IRQFLAGS_SUPPORT
config LOCKDEP_SUPPORT
def_bool y
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 82f908fa5676..3564647283e1 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -128,6 +128,7 @@ config ARM
select RTC_LIB
select SET_FS
select SYS_SUPPORTS_APM_EMULATION
+ select TRACE_IRQFLAGS_SUPPORT if !CPU_V7M
# Above selects are sorted alphabetically; please add new ones
# according to that. Thanks.
help
@@ -191,10 +192,6 @@ config LOCKDEP_SUPPORT
bool
default y
-config TRACE_IRQFLAGS_SUPPORT
- bool
- default !CPU_V7M
-
config ARCH_HAS_ILOG2_U32
bool
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b5b13a932561..67b04ae5d010 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -221,6 +221,7 @@ config ARM64
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
select HAVE_ARCH_USERFAULTFD_MINOR if USERFAULTFD
+ select TRACE_IRQFLAGS_SUPPORT
help
ARM 64-bit (AArch64) Linux support.
@@ -288,9 +289,6 @@ config ILLEGAL_POINTER_VALUE
config LOCKDEP_SUPPORT
def_bool y
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config GENERIC_BUG
def_bool y
depends on BUG
diff --git a/arch/csky/Kconfig b/arch/csky/Kconfig
index 2716f6395ba7..9d4d898df76b 100644
--- a/arch/csky/Kconfig
+++ b/arch/csky/Kconfig
@@ -82,6 +82,7 @@ config CSKY
select PCI_SYSCALL if PCI
select PCI_MSI if PCI
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
config LOCKDEP_SUPPORT
def_bool y
@@ -139,9 +140,6 @@ config STACKTRACE_SUPPORT
config TIME_LOW_RES
def_bool y
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config CPU_TLB_SIZE
int
default "128" if (CPU_CK610 || CPU_CK807 || CPU_CK810)
diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
index e5a852080730..f993c4deaf23 100644
--- a/arch/hexagon/Kconfig
+++ b/arch/hexagon/Kconfig
@@ -31,6 +31,7 @@ config HEXAGON
select GENERIC_CPU_DEVICES
select SET_FS
select ARCH_WANT_LD_ORPHAN_WARN
+ select TRACE_IRQFLAGS_SUPPORT
help
Qualcomm Hexagon is a processor architecture designed for high
performance and low power across a wide variety of applications.
@@ -52,9 +53,6 @@ config EARLY_PRINTK
config MMU
def_bool y
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config GENERIC_CSUM
def_bool y
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index 14a67a42fcae..59798e43cdb0 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -44,6 +44,7 @@ config MICROBLAZE
select SPARSE_IRQ
select SET_FS
select ZONE_DMA
+ select TRACE_IRQFLAGS_SUPPORT
# Endianness selection
choice
diff --git a/arch/microblaze/Kconfig.debug b/arch/microblaze/Kconfig.debug
index 865527ac332a..a4e40e534e6a 100644
--- a/arch/microblaze/Kconfig.debug
+++ b/arch/microblaze/Kconfig.debug
@@ -1,6 +1 @@
# SPDX-License-Identifier: GPL-2.0-only
-# For a description of the syntax of this configuration file,
-# see Documentation/kbuild/kconfig-language.rst.
-
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index cee6087cd686..3017c9e8bb07 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -97,6 +97,7 @@ config MIPS
select PCI_MSI_ARCH_FALLBACKS if PCI_MSI
select RTC_LIB
select SYSCTL_EXCEPTION_TRACE
+ select TRACE_IRQFLAGS_SUPPORT
select VIRT_TO_BUS
select ARCH_HAS_ELFCORE_COMPAT
diff --git a/arch/mips/Kconfig.debug b/arch/mips/Kconfig.debug
index 43dbf5930796..f4ae7900fcd3 100644
--- a/arch/mips/Kconfig.debug
+++ b/arch/mips/Kconfig.debug
@@ -1,9 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-config TRACE_IRQFLAGS_SUPPORT
- bool
- default y
-
config EARLY_PRINTK
bool "Early printk" if EXPERT
depends on SYS_HAS_EARLY_PRINTK
diff --git a/arch/nds32/Kconfig b/arch/nds32/Kconfig
index 62313902d75d..dd50123335d8 100644
--- a/arch/nds32/Kconfig
+++ b/arch/nds32/Kconfig
@@ -48,6 +48,7 @@ config NDS32
select HAVE_FTRACE_MCOUNT_RECORD
select HAVE_DYNAMIC_FTRACE
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
help
Andes(nds32) Linux support.
@@ -64,9 +65,6 @@ config GENERIC_LOCKBREAK
def_bool y
depends on PREEMPTION
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config STACKTRACE_SUPPORT
def_bool y
diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig
index c24955c81c92..eabdc41f67f6 100644
--- a/arch/nios2/Kconfig
+++ b/arch/nios2/Kconfig
@@ -43,9 +43,6 @@ config NO_IOPORT_MAP
config FPU
def_bool n
-config TRACE_IRQFLAGS_SUPPORT
- def_bool n
-
menu "Kernel features"
source "kernel/Kconfig.hz"
diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
index 591acc5990dc..ebc5e7eafc5c 100644
--- a/arch/openrisc/Kconfig
+++ b/arch/openrisc/Kconfig
@@ -39,6 +39,7 @@ config OPENRISC
select GENERIC_IRQ_MULTI_HANDLER
select MMU_GATHER_NO_RANGE if MMU
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
config CPU_BIG_ENDIAN
def_bool y
@@ -52,9 +53,6 @@ config GENERIC_HWEIGHT
config NO_IOPORT_MAP
def_bool y
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
# For now, use generic checksum functions
#These can be reimplemented in assembly later if so inclined
config GENERIC_CSUM
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
index bde9907bc5b2..57a0d0896ef6 100644
--- a/arch/parisc/Kconfig
+++ b/arch/parisc/Kconfig
@@ -67,6 +67,7 @@ config PARISC
select HAVE_DYNAMIC_FTRACE_WITH_REGS
select HAVE_SOFTIRQ_ON_OWN_STACK if IRQSTACKS
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
help
The PA-RISC microprocessor is designed by Hewlett-Packard and used
diff --git a/arch/parisc/Kconfig.debug b/arch/parisc/Kconfig.debug
index 1478ded0e247..f66554cd5c45 100644
--- a/arch/parisc/Kconfig.debug
+++ b/arch/parisc/Kconfig.debug
@@ -1,4 +1 @@
# SPDX-License-Identifier: GPL-2.0
-
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index d01e3401581d..76a28452c042 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -94,10 +94,6 @@ config STACKTRACE_SUPPORT
bool
default y
-config TRACE_IRQFLAGS_SUPPORT
- bool
- default y
-
config LOCKDEP_SUPPORT
bool
default y
@@ -271,6 +267,7 @@ config PPC
select STRICT_KERNEL_RWX if STRICT_MODULE_RWX
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
+ select TRACE_IRQFLAGS_SUPPORT
select VIRT_TO_BUS if !PPC64
#
# Please keep this list sorted alphabetically.
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 8fcceb8eda07..15f012b9c6d7 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -109,6 +109,7 @@ config RISCV
select SPARSE_IRQ
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
+ select TRACE_IRQFLAGS_SUPPORT
select UACCESS_MEMCPY if !MMU
select ZONE_DMA32 if 64BIT
@@ -178,9 +179,6 @@ config ARCH_SUPPORTS_UPROBES
config STACKTRACE_SUPPORT
def_bool y
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config GENERIC_BUG
def_bool y
depends on BUG
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index a0e2130f0100..8bce206e93a3 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -207,6 +207,7 @@ config S390
select SWIOTLB
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
+ select TRACE_IRQFLAGS_SUPPORT
select TTY
select VIRT_CPU_ACCOUNTING
select ZONE_DMA
diff --git a/arch/s390/Kconfig.debug b/arch/s390/Kconfig.debug
index 9ea6e61d5858..e94a2a7f6bf4 100644
--- a/arch/s390/Kconfig.debug
+++ b/arch/s390/Kconfig.debug
@@ -1,8 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config EARLY_PRINTK
def_bool y
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 45a0549421cd..8efeffcdf4cf 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -72,6 +72,7 @@ config SUPERH
select RTC_LIB
select SET_FS
select SPARSE_IRQ
+ select TRACE_IRQFLAGS_SUPPORT
help
The SuperH is a RISC processor targeted for use in embedded systems
and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sh/Kconfig.debug b/arch/sh/Kconfig.debug
index 28a43d63bde1..958f790273ab 100644
--- a/arch/sh/Kconfig.debug
+++ b/arch/sh/Kconfig.debug
@@ -1,8 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config SH_STANDARD_BIOS
bool "Use LinuxSH standard BIOS"
help
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index c5fa7932b550..fb8bdd40c72a 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -50,6 +50,7 @@ config SPARC
select NEED_DMA_MAP_STATE
select NEED_SG_DMA_LENGTH
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
config SPARC32
def_bool !64BIT
diff --git a/arch/sparc/Kconfig.debug b/arch/sparc/Kconfig.debug
index 50a918d496c8..6b2bec1888b3 100644
--- a/arch/sparc/Kconfig.debug
+++ b/arch/sparc/Kconfig.debug
@@ -1,9 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-config TRACE_IRQFLAGS_SUPPORT
- bool
- default y
-
config DEBUG_DCFLUSH
bool "D-cache flush debugging"
depends on SPARC64 && DEBUG_KERNEL
diff --git a/arch/um/Kconfig b/arch/um/Kconfig
index 0561b73cfd9a..0a699440c4c5 100644
--- a/arch/um/Kconfig
+++ b/arch/um/Kconfig
@@ -20,6 +20,7 @@ config UML
select GENERIC_CPU_DEVICES
select HAVE_GCC_PLUGINS
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
select TTY # Needed for line.c
config MMU
@@ -50,10 +51,6 @@ config ISA
config SBUS
bool
-config TRACE_IRQFLAGS_SUPPORT
- bool
- default y
-
config LOCKDEP_SUPPORT
bool
default y
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 49270655e827..171faee05035 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -261,6 +261,7 @@ config X86
select STACK_VALIDATION if HAVE_STACK_VALIDATION && (HAVE_STATIC_CALL_INLINE || RETPOLINE)
select SYSCTL_EXCEPTION_TRACE
select THREAD_INFO_IN_TASK
+ select TRACE_IRQFLAGS_SUPPORT
select USER_STACKTRACE_SUPPORT
select VIRT_TO_BUS
select HAVE_ARCH_KCSAN if X86_64
diff --git a/arch/x86/Kconfig.debug b/arch/x86/Kconfig.debug
index 80b57e7f4947..d3a6f74a94bd 100644
--- a/arch/x86/Kconfig.debug
+++ b/arch/x86/Kconfig.debug
@@ -1,8 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config TRACE_IRQFLAGS_NMI_SUPPORT
def_bool y
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
index 2332b2156993..90aabb27f7d7 100644
--- a/arch/xtensa/Kconfig
+++ b/arch/xtensa/Kconfig
@@ -41,6 +41,7 @@ config XTENSA
select MODULES_USE_ELF_RELA
select PERF_USE_VMALLOC
select SET_FS
+ select TRACE_IRQFLAGS_SUPPORT
select VIRT_TO_BUS
help
Xtensa processors are 32-bit RISC machines designed by Tensilica
@@ -72,9 +73,6 @@ config LOCKDEP_SUPPORT
config STACKTRACE_SUPPORT
def_bool y
-config TRACE_IRQFLAGS_SUPPORT
- def_bool y
-
config MMU
def_bool n
--
2.27.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER
2021-07-31 5:22 [PATCH 1/3] ftrace: simplify the Kconfig dependency of FTRACE Masahiro Yamada
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
@ 2021-07-31 5:22 ` Masahiro Yamada
2021-08-02 13:29 ` Steven Rostedt
1 sibling, 1 reply; 11+ messages in thread
From: Masahiro Yamada @ 2021-07-31 5:22 UTC (permalink / raw)
To: Steven Rostedt, Ingo Molnar; +Cc: Masahiro Yamada, linux-kernel
IRQSOFF_TRACE is already guarded by a stronger condition,
TRACING_SUPPORT.
'depends on TRACE_IRQFLAGS_SUPPORT' is redundant.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---
kernel/trace/Kconfig | 1 -
1 file changed, 1 deletion(-)
diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index 9d3f918b5867..b39e67db644e 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -265,7 +265,6 @@ config TRACE_PREEMPT_TOGGLE
config IRQSOFF_TRACER
bool "Interrupts-off Latency Tracer"
default n
- depends on TRACE_IRQFLAGS_SUPPORT
select TRACE_IRQFLAGS
select GENERIC_TRACER
select TRACER_MAX_TRACE
--
2.27.0
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
@ 2021-07-31 6:50 ` Heiko Carstens
2021-07-31 23:12 ` Vineet Gupta
` (4 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Heiko Carstens @ 2021-07-31 6:50 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Steven Rostedt, Ingo Molnar, Arnd Bergmann, Ard Biesheuvel,
Borislav Petkov, Linus Walleij, Ley Foon Tan, x86, linux-mips,
sparclinux, Anshuman Khandual, Nick Hu, Thomas Gleixner,
Mike Rapoport, Geert Uytterhoeven, Peter Zijlstra,
Catalin Marinas, linux-riscv, YiFei Zhu, Greentime Hu,
Palmer Dabbelt, Michal Simek, Helge Deller, linux-sh,
Vineet Gupta, Uwe Kleine-König, Guo Ren, Sami Tolvanen,
Richard Weinberger, Christian Borntraeger, Rich Felker,
Albert Ou, Jeff Dike, Max Filippov, linux-hexagon, linux-xtensa,
H. Peter Anvin, Will Deacon, Thomas Bogendoerfer,
Stefan Kristiansson, linux-s390, Yoshinori Sato,
James E.J. Bottomley, linux-um, Andrey Konovalov,
Frederic Weisbecker, Nicholas Piggin, Benjamin Herrenschmidt,
Brian Cain, linux-csky, Stafford Horne, Russell King,
linux-arm-kernel, Paul Walmsley, Chris Zankel, Vasily Gorbik,
linux-snps-arc, Jonas Bonn, linux-parisc, Kees Cook,
Krzysztof Kozlowski, Colin Ian King, David S. Miller,
linux-kernel, Vincent Chen, Anton Ivanov, Andrew Morton,
Michael Ellerman, Paul Mackerras, Mark Rutland, Viresh Kumar,
linuxppc-dev, openrisc
On Sat, Jul 31, 2021 at 02:22:32PM +0900, Masahiro Yamada wrote:
> Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
> having many defines.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
...
> arch/s390/Kconfig | 1 +
> arch/s390/Kconfig.debug | 3 ---
For s390:
Acked-by: Heiko Carstens <hca@linux.ibm.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
2021-07-31 6:50 ` Heiko Carstens
@ 2021-07-31 23:12 ` Vineet Gupta
2021-08-02 2:56 ` Michael Ellerman
` (3 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Vineet Gupta @ 2021-07-31 23:12 UTC (permalink / raw)
To: Masahiro Yamada, Steven Rostedt, Ingo Molnar
Cc: Arnd Bergmann, Ard Biesheuvel, Borislav Petkov, Linus Walleij,
Ley Foon Tan, x86, linux-mips, sparclinux, Anshuman Khandual,
Nick Hu, Thomas Gleixner, Mike Rapoport, Geert Uytterhoeven,
Peter Zijlstra, Catalin Marinas, linux-riscv, YiFei Zhu,
Greentime Hu, Palmer Dabbelt, Michal Simek, Helge Deller,
linux-sh, Uwe Kleine-König, Guo Ren, Sami Tolvanen,
Richard Weinberger, Christian Borntraeger, Rich Felker,
Albert Ou, Heiko Carstens, Jeff Dike, Max Filippov,
linux-hexagon, linux-xtensa, H. Peter Anvin, Will Deacon,
Thomas Bogendoerfer, Stefan Kristiansson, linux-s390,
Yoshinori Sato, James E.J. Bottomley, linux-um, Andrey Konovalov,
Frederic Weisbecker, Nicholas Piggin, Benjamin Herrenschmidt,
Brian Cain, linux-csky, Stafford Horne, Russell King,
linux-arm-kernel, Paul Walmsley, Chris Zankel, Vasily Gorbik,
linux-snps-arc, Jonas Bonn, linux-parisc, Kees Cook,
Krzysztof Kozlowski, Colin Ian King, David S. Miller,
linux-kernel, Vincent Chen, Anton Ivanov, Andrew Morton,
Michael Ellerman, Paul Mackerras, Mark Rutland, Viresh Kumar,
linuxppc-dev, openrisc
On 7/30/21 10:22 PM, Masahiro Yamada wrote:
> Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
> having many defines.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
> arch/arc/Kconfig | 4 +---
> [snip..]
Acked-by: Vineet Gupta <vgupta@synopsys.com> #arch/arc
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
2021-07-31 6:50 ` Heiko Carstens
2021-07-31 23:12 ` Vineet Gupta
@ 2021-08-02 2:56 ` Michael Ellerman
2021-08-02 15:55 ` Catalin Marinas
` (2 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Michael Ellerman @ 2021-08-02 2:56 UTC (permalink / raw)
To: Masahiro Yamada, Steven Rostedt, Ingo Molnar
Cc: Masahiro Yamada, Arnd Bergmann, Ard Biesheuvel, Borislav Petkov,
Linus Walleij, Ley Foon Tan, x86, linux-mips, sparclinux,
Anshuman Khandual, Nick Hu, Thomas Gleixner, Mike Rapoport,
Geert Uytterhoeven, Peter Zijlstra, Catalin Marinas, linux-riscv,
YiFei Zhu, Greentime Hu, Palmer Dabbelt, Michal Simek,
Helge Deller, linux-sh, Vineet Gupta, Uwe Kleine-König,
Guo Ren, Sami Tolvanen, Richard Weinberger,
Christian Borntraeger, Rich Felker, Albert Ou, Heiko Carstens,
Jeff Dike, Max Filippov, linux-hexagon, linux-xtensa,
H. Peter Anvin, Will Deacon, Thomas Bogendoerfer,
Stefan Kristiansson, linux-s390, Yoshinori Sato,
James E.J. Bottomley, linux-um, Andrey Konovalov,
Frederic Weisbecker, Nicholas Piggin, Benjamin Herrenschmidt,
Brian Cain, linux-csky, Stafford Horne, Russell King,
linux-arm-kernel, Paul Walmsley, Chris Zankel, Vasily Gorbik,
linux-snps-arc, Jonas Bonn, linux-parisc, Kees Cook,
Krzysztof Kozlowski, Colin Ian King, David S. Miller,
linux-kernel, Vincent Chen, Anton Ivanov, Andrew Morton,
Paul Mackerras, Mark Rutland, Viresh Kumar, linuxppc-dev,
openrisc
Masahiro Yamada <masahiroy@kernel.org> writes:
> Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
> having many defines.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
> arch/Kconfig | 3 +++
> arch/arc/Kconfig | 4 +---
> arch/arm/Kconfig | 5 +----
> arch/arm64/Kconfig | 4 +---
> arch/csky/Kconfig | 4 +---
> arch/hexagon/Kconfig | 4 +---
> arch/microblaze/Kconfig | 1 +
> arch/microblaze/Kconfig.debug | 5 -----
> arch/mips/Kconfig | 1 +
> arch/mips/Kconfig.debug | 4 ----
> arch/nds32/Kconfig | 4 +---
> arch/nios2/Kconfig | 3 ---
> arch/openrisc/Kconfig | 4 +---
> arch/parisc/Kconfig | 1 +
> arch/parisc/Kconfig.debug | 3 ---
> arch/powerpc/Kconfig | 5 +----
> arch/riscv/Kconfig | 4 +---
> arch/s390/Kconfig | 1 +
> arch/s390/Kconfig.debug | 3 ---
> arch/sh/Kconfig | 1 +
> arch/sh/Kconfig.debug | 3 ---
> arch/sparc/Kconfig | 1 +
> arch/sparc/Kconfig.debug | 4 ----
> arch/um/Kconfig | 5 +----
> arch/x86/Kconfig | 1 +
> arch/x86/Kconfig.debug | 3 ---
> arch/xtensa/Kconfig | 4 +---
> 27 files changed, 21 insertions(+), 64 deletions(-)
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index d01e3401581d..76a28452c042 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -94,10 +94,6 @@ config STACKTRACE_SUPPORT
> bool
> default y
>
> -config TRACE_IRQFLAGS_SUPPORT
> - bool
> - default y
> -
> config LOCKDEP_SUPPORT
> bool
> default y
> @@ -271,6 +267,7 @@ config PPC
> select STRICT_KERNEL_RWX if STRICT_MODULE_RWX
> select SYSCTL_EXCEPTION_TRACE
> select THREAD_INFO_IN_TASK
> + select TRACE_IRQFLAGS_SUPPORT
> select VIRT_TO_BUS if !PPC64
> #
> # Please keep this list sorted alphabetically.
Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
cheers
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER
2021-07-31 5:22 ` [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER Masahiro Yamada
@ 2021-08-02 13:29 ` Steven Rostedt
2021-08-03 5:14 ` Masahiro Yamada
0 siblings, 1 reply; 11+ messages in thread
From: Steven Rostedt @ 2021-08-02 13:29 UTC (permalink / raw)
To: Masahiro Yamada; +Cc: Ingo Molnar, linux-kernel
On Sat, 31 Jul 2021 14:22:33 +0900
Masahiro Yamada <masahiroy@kernel.org> wrote:
> IRQSOFF_TRACE is already guarded by a stronger condition,
> TRACING_SUPPORT.
>
> 'depends on TRACE_IRQFLAGS_SUPPORT' is redundant.
I'm fine with the other two patches, but this one concerns me. I'm not
sure TRACING_SUPPORT really needs to depend on TRACE_IRQFLAGS_SUPPORT.
When tracing was first introduced, the main use case was the irqsoff
tracer. Today, with function graph tracing and events being introduced,
it's one of the minor use cases of tracing support.
I believe the only thing that requires the TRACE_IRQFLAGS_SUPPORT is
the irqsoff tracer (and friends), so if anything, we should remove that
dependency from TRACING_SUPPORT, not here.
-- Steve
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
> kernel/trace/Kconfig | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
> index 9d3f918b5867..b39e67db644e 100644
> --- a/kernel/trace/Kconfig
> +++ b/kernel/trace/Kconfig
> @@ -265,7 +265,6 @@ config TRACE_PREEMPT_TOGGLE
> config IRQSOFF_TRACER
> bool "Interrupts-off Latency Tracer"
> default n
> - depends on TRACE_IRQFLAGS_SUPPORT
> select TRACE_IRQFLAGS
> select GENERIC_TRACER
> select TRACER_MAX_TRACE
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
` (2 preceding siblings ...)
2021-08-02 2:56 ` Michael Ellerman
@ 2021-08-02 15:55 ` Catalin Marinas
2021-08-02 18:03 ` Max Filippov
2021-08-25 3:49 ` Palmer Dabbelt
5 siblings, 0 replies; 11+ messages in thread
From: Catalin Marinas @ 2021-08-02 15:55 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Steven Rostedt, Ingo Molnar, Arnd Bergmann, Ard Biesheuvel,
Borislav Petkov, Linus Walleij, Ley Foon Tan, x86, linux-mips,
sparclinux, Anshuman Khandual, Nick Hu, Thomas Gleixner,
Mike Rapoport, Geert Uytterhoeven, Peter Zijlstra, linux-riscv,
YiFei Zhu, Greentime Hu, Palmer Dabbelt, Michal Simek,
Helge Deller, linux-sh, Vineet Gupta, Uwe Kleine-König,
Guo Ren, Sami Tolvanen, Richard Weinberger,
Christian Borntraeger, Rich Felker, Albert Ou, Heiko Carstens,
Jeff Dike, Max Filippov, linux-hexagon, linux-xtensa,
H. Peter Anvin, Will Deacon, Thomas Bogendoerfer,
Stefan Kristiansson, linux-s390, Yoshinori Sato,
James E.J. Bottomley, linux-um, Andrey Konovalov,
Frederic Weisbecker, Nicholas Piggin, Benjamin Herrenschmidt,
Brian Cain, linux-csky, Stafford Horne, Russell King,
linux-arm-kernel, Paul Walmsley, Chris Zankel, Vasily Gorbik,
linux-snps-arc, Jonas Bonn, linux-parisc, Kees Cook,
Krzysztof Kozlowski, Colin Ian King, David S. Miller,
linux-kernel, Vincent Chen, Anton Ivanov, Andrew Morton,
Michael Ellerman, Paul Mackerras, Mark Rutland, Viresh Kumar,
linuxppc-dev, openrisc
On Sat, Jul 31, 2021 at 02:22:32PM +0900, Masahiro Yamada wrote:
> Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
> having many defines.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
For arm64:
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
` (3 preceding siblings ...)
2021-08-02 15:55 ` Catalin Marinas
@ 2021-08-02 18:03 ` Max Filippov
2021-08-25 3:49 ` Palmer Dabbelt
5 siblings, 0 replies; 11+ messages in thread
From: Max Filippov @ 2021-08-02 18:03 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Steven Rostedt, Ingo Molnar, Arnd Bergmann, Ard Biesheuvel,
Borislav Petkov, Linus Walleij, Ley Foon Tan,
maintainer:X86 ARCHITECTURE...,
linux-mips, open list:SPARC + UltraSPAR...,
Anshuman Khandual, Nick Hu, Thomas Gleixner, Mike Rapoport,
Geert Uytterhoeven, Peter Zijlstra, Catalin Marinas, linux-riscv,
YiFei Zhu, Greentime Hu, Palmer Dabbelt, Michal Simek,
Helge Deller, open list:SUPERH, Vineet Gupta,
Uwe Kleine-König, Guo Ren, Sami Tolvanen,
Richard Weinberger, Christian Borntraeger, Rich Felker,
Albert Ou, Heiko Carstens, Jeff Dike,
open list:QUALCOMM HEXAGON...,
open list:TENSILICA XTENSA PORT (xtensa),
H. Peter Anvin, Will Deacon, Thomas Bogendoerfer,
Stefan Kristiansson, linux-s390, Yoshinori Sato,
James E.J. Bottomley, linux-um, Andrey Konovalov,
Frederic Weisbecker, Nicholas Piggin, Benjamin Herrenschmidt,
Brian Cain, linux-csky, Stafford Horne, Russell King,
linux-arm-kernel, Paul Walmsley, Chris Zankel, Vasily Gorbik,
linux-snps-arc, Jonas Bonn, open list:PARISC ARCHITECTURE,
Kees Cook, Krzysztof Kozlowski, Colin Ian King, David S. Miller,
LKML, Vincent Chen, Anton Ivanov, Andrew Morton,
Michael Ellerman, Paul Mackerras, Mark Rutland, Viresh Kumar,
linuxppc-dev, openrisc
On Fri, Jul 30, 2021 at 10:24 PM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
> having many defines.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> arch/xtensa/Kconfig | 4 +---
Acked-by: Max Filippov <jcmvbkbc@gmail.com>
--
Thanks.
-- Max
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER
2021-08-02 13:29 ` Steven Rostedt
@ 2021-08-03 5:14 ` Masahiro Yamada
0 siblings, 0 replies; 11+ messages in thread
From: Masahiro Yamada @ 2021-08-03 5:14 UTC (permalink / raw)
To: Steven Rostedt; +Cc: Ingo Molnar, Linux Kernel Mailing List
On Mon, Aug 2, 2021 at 10:29 PM Steven Rostedt <rostedt@goodmis.org> wrote:
>
> On Sat, 31 Jul 2021 14:22:33 +0900
> Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> > IRQSOFF_TRACE is already guarded by a stronger condition,
> > TRACING_SUPPORT.
> >
> > 'depends on TRACE_IRQFLAGS_SUPPORT' is redundant.
>
> I'm fine with the other two patches, but this one concerns me. I'm not
> sure TRACING_SUPPORT really needs to depend on TRACE_IRQFLAGS_SUPPORT.
> When tracing was first introduced, the main use case was the irqsoff
> tracer. Today, with function graph tracing and events being introduced,
> it's one of the minor use cases of tracing support.
>
> I believe the only thing that requires the TRACE_IRQFLAGS_SUPPORT is
> the irqsoff tracer (and friends), so if anything, we should remove that
> dependency from TRACING_SUPPORT, not here.
OK.
The first two are more trivial, so please pick up
1/3 and 2/3, then drop this one.
BTW, I personally prefer HAVE_* to *_SUPPORT.
Maybe renaming as follows makes the code more consistent.
STACKTRACE_SUPPORT -> HAVE_STACKTRACE
TRACE_IRQFLAGS_SUPPORT -> HAVE_TRACE_IRQFLAGS
Documentation/kbuild/kconfig-language.rst says
HAVE_* style is the recommended way.
It is a common idiom to implement a feature/functionality that are
relevant for some architectures but not all.
The recommended way to do so is to use a config variable named HAVE_*
that is defined in a common Kconfig file and selected by the relevant
architectures.
An example is the generic IOMAP functionality.
We would in lib/Kconfig see::
# Generic IOMAP is used to ...
config HAVE_GENERIC_IOMAP
config GENERIC_IOMAP
depends on HAVE_GENERIC_IOMAP && FOO
> -- Steve
>
>
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > ---
> >
> > kernel/trace/Kconfig | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
> > index 9d3f918b5867..b39e67db644e 100644
> > --- a/kernel/trace/Kconfig
> > +++ b/kernel/trace/Kconfig
> > @@ -265,7 +265,6 @@ config TRACE_PREEMPT_TOGGLE
> > config IRQSOFF_TRACER
> > bool "Interrupts-off Latency Tracer"
> > default n
> > - depends on TRACE_IRQFLAGS_SUPPORT
> > select TRACE_IRQFLAGS
> > select GENERIC_TRACER
> > select TRACER_MAX_TRACE
>
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
` (4 preceding siblings ...)
2021-08-02 18:03 ` Max Filippov
@ 2021-08-25 3:49 ` Palmer Dabbelt
5 siblings, 0 replies; 11+ messages in thread
From: Palmer Dabbelt @ 2021-08-25 3:49 UTC (permalink / raw)
To: masahiroy
Cc: rostedt, mingo, masahiroy, Arnd Bergmann, ardb, bp,
linus.walleij, ley.foon.tan, x86, linux-mips, sparclinux,
anshuman.khandual, nickhu, tglx, rppt, geert, peterz,
catalin.marinas, linux-riscv, yifeifz2, green.hu, monstr, deller,
linux-sh, vgupta, u.kleine-koenig, guoren, samitolvanen, richard,
borntraeger, dalias, aou, hca, jdike, jcmvbkbc, linux-hexagon,
linux-xtensa, hpa, will, tsbogend, stefan.kristiansson,
linux-s390, ysato, James.Bottomley, linux-um, andreyknvl,
frederic, npiggin, benh, bcain, linux-csky, shorne, linux,
linux-arm-kernel, Paul Walmsley, chris, gor, linux-snps-arc,
jonas, linux-parisc, keescook, krzysztof.kozlowski, colin.king,
davem, linux-kernel, deanbo422, anton.ivanov, akpm, mpe, paulus,
mark.rutland, viresh.kumar, linuxppc-dev, openrisc
On Fri, 30 Jul 2021 22:22:32 PDT (-0700), masahiroy@kernel.org wrote:
> Make architectures select TRACE_IRQFLAGS_SUPPORT instead of
> having many defines.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
> arch/riscv/Kconfig | 4 +---
Acked-by: Palmer Dabbelt <palmerdabbelt@google.com>
Thanks!
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2021-08-25 3:50 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-31 5:22 [PATCH 1/3] ftrace: simplify the Kconfig dependency of FTRACE Masahiro Yamada
2021-07-31 5:22 ` [PATCH 2/3] trace: refactor TRACE_IRQFLAGS_SUPPORT in Kconfig Masahiro Yamada
2021-07-31 6:50 ` Heiko Carstens
2021-07-31 23:12 ` Vineet Gupta
2021-08-02 2:56 ` Michael Ellerman
2021-08-02 15:55 ` Catalin Marinas
2021-08-02 18:03 ` Max Filippov
2021-08-25 3:49 ` Palmer Dabbelt
2021-07-31 5:22 ` [PATCH 3/3] trace: remove redundant dependency from IRQSOFF_TRACER Masahiro Yamada
2021-08-02 13:29 ` Steven Rostedt
2021-08-03 5:14 ` Masahiro Yamada
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).