2015-11-09 19:40:05

by Shi, Yang

[permalink] [raw]
Subject: [PATCH 0/4] cleanup FRAME_POINTER kconfig option use


When I cleanup FRME_POINTER use for arm64 arch, I found some other
architectures need the similar cleanup. So, I came up with the patch series
for them.

Yang Shi (4):
m32r: remove redundant FRAME_POINTER kconfig option
hexagon: select ARCH_WANT_FRAME_POINTERS instead of defining FRAME_POINTER
avr32: select ARCH_WANT_FRAME_POINTERS and set DEBUG_KERNEL in defconfigs
h8300: set DEBUG_KERNEL in defconfigs

arch/avr32/Kconfig | 1 +
arch/avr32/configs/atngw100_defconfig | 1 +
arch/avr32/configs/atngw100_evklcd100_defconfig | 1 +
arch/avr32/configs/atngw100_evklcd101_defconfig | 1 +
arch/avr32/configs/atngw100_mrmt_defconfig | 1 +
arch/avr32/configs/atngw100mkii_defconfig | 1 +
arch/avr32/configs/atngw100mkii_evklcd100_defconfig | 1 +
arch/avr32/configs/atngw100mkii_evklcd101_defconfig | 1 +
arch/avr32/configs/atstk1002_defconfig | 1 +
arch/avr32/configs/atstk1003_defconfig | 1 +
arch/avr32/configs/atstk1004_defconfig | 1 +
arch/avr32/configs/atstk1006_defconfig | 1 +
arch/avr32/configs/favr-32_defconfig | 1 +
arch/avr32/configs/hammerhead_defconfig | 1 +
arch/avr32/configs/mimc200_defconfig | 1 +
arch/h8300/configs/edosk2674_defconfig | 1 +
arch/h8300/configs/h8300h-sim_defconfig | 1 +
arch/h8300/configs/h8s-sim_defconfig | 1 +
arch/hexagon/Kconfig | 4 +---
arch/m32r/Kconfig.debug | 8 --------
20 files changed, 19 insertions(+), 11 deletions(-)


2015-11-09 19:40:55

by Shi, Yang

[permalink] [raw]
Subject: [PATCH 1/4] m32r: remove redundant FRAME_POINTER kconfig option

FRAME_POINTER is defined in lib/Kconfig.debug, it is unnecessary to redefine
it in arch/m32r/Kconfig.debug. Actually, the one defined in arch directory
is never used.

Signed-off-by: Yang Shi <[email protected]>
---
arch/m32r/Kconfig.debug | 8 --------
1 file changed, 8 deletions(-)

diff --git a/arch/m32r/Kconfig.debug b/arch/m32r/Kconfig.debug
index 6c612b7..a991aeb2 100644
--- a/arch/m32r/Kconfig.debug
+++ b/arch/m32r/Kconfig.debug
@@ -10,12 +10,4 @@ config DEBUG_PAGEALLOC
This results in a large slowdown, but helps to find certain types
of memory corruptions.

-config FRAME_POINTER
- bool "Compile the kernel with frame pointers"
- help
- If you say Y here the resulting kernel image will be slightly larger
- and slower, but it will give very useful debugging information.
- If you don't debug the kernel, you can say N, but we may not be able
- to solve problems without frame pointers.
-
endmenu
--
2.0.2

2015-11-09 19:41:33

by Shi, Yang

[permalink] [raw]
Subject: [PATCH 2/4] hexagon: select ARCH_WANT_FRAME_POINTERS instead of defining FRAME_POINTER

FRAME_POINTER is set by default if ARCH_WANT_FRAME_POINTERS is selcted,
this is the standard way to include FRAME_POINTER used by all of other
architectures.

Signed-off-by: Yang Shi <[email protected]>
---
arch/hexagon/Kconfig | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
index 4dc89d1..87d6dc6 100644
--- a/arch/hexagon/Kconfig
+++ b/arch/hexagon/Kconfig
@@ -28,6 +28,7 @@ config HEXAGON
select MODULES_USE_ELF_RELA
select GENERIC_CPU_DEVICES
select HAVE_DMA_ATTRS
+ select ARCH_WANT_FRAME_POINTERS
---help---
Qualcomm Hexagon is a processor architecture designed for high
performance and low power across a wide variety of applications.
@@ -37,9 +38,6 @@ config HEXAGON_PHYS_OFFSET
---help---
Platforms that don't load the kernel at zero set this.

-config FRAME_POINTER
- def_bool y
-
config LOCKDEP_SUPPORT
def_bool y

--
2.0.2

2015-11-09 19:40:54

by Shi, Yang

[permalink] [raw]
Subject: [PATCH 3/4] avr32: select ARCH_WANT_FRAME_POINTERS and set DEBUG_KERNEL in defconfigs

FRAME_POINTER is set by default if ARCH_WANT_FRAME_POINTERS and DEBUG_KERNEL
are selcted, this is the standard way to include FRAME_POINTER used by all
of other architectures.

And, set DEBUG_KERNEL=y in defconfigs otherwise FRAME_POINTER won't be enabled
at all.

Signed-off-by: Yang Shi <[email protected]>
---
arch/avr32/Kconfig | 1 +
arch/avr32/configs/atngw100_defconfig | 1 +
arch/avr32/configs/atngw100_evklcd100_defconfig | 1 +
arch/avr32/configs/atngw100_evklcd101_defconfig | 1 +
arch/avr32/configs/atngw100_mrmt_defconfig | 1 +
arch/avr32/configs/atngw100mkii_defconfig | 1 +
arch/avr32/configs/atngw100mkii_evklcd100_defconfig | 1 +
arch/avr32/configs/atngw100mkii_evklcd101_defconfig | 1 +
arch/avr32/configs/atstk1002_defconfig | 1 +
arch/avr32/configs/atstk1003_defconfig | 1 +
arch/avr32/configs/atstk1004_defconfig | 1 +
arch/avr32/configs/atstk1006_defconfig | 1 +
arch/avr32/configs/favr-32_defconfig | 1 +
arch/avr32/configs/hammerhead_defconfig | 1 +
arch/avr32/configs/mimc200_defconfig | 1 +
15 files changed, 15 insertions(+)

diff --git a/arch/avr32/Kconfig b/arch/avr32/Kconfig
index b6878eb..bc0c0c0 100644
--- a/arch/avr32/Kconfig
+++ b/arch/avr32/Kconfig
@@ -17,6 +17,7 @@ config AVR32
select GENERIC_CLOCKEVENTS
select HAVE_MOD_ARCH_SPECIFIC
select MODULES_USE_ELF_RELA
+ select ARCH_WANT_FRAME_POINTERS
help
AVR32 is a high-performance 32-bit RISC microprocessor core,
designed for cost-sensitive embedded applications, with particular
diff --git a/arch/avr32/configs/atngw100_defconfig b/arch/avr32/configs/atngw100_defconfig
index ce00300..2825f43 100644
--- a/arch/avr32/configs/atngw100_defconfig
+++ b/arch/avr32/configs/atngw100_defconfig
@@ -137,6 +137,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atngw100_evklcd100_defconfig b/arch/avr32/configs/atngw100_evklcd100_defconfig
index 01ff632..b14f39e 100644
--- a/arch/avr32/configs/atngw100_evklcd100_defconfig
+++ b/arch/avr32/configs/atngw100_evklcd100_defconfig
@@ -153,6 +153,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atngw100_evklcd101_defconfig b/arch/avr32/configs/atngw100_evklcd101_defconfig
index c4021df..ca431f8 100644
--- a/arch/avr32/configs/atngw100_evklcd101_defconfig
+++ b/arch/avr32/configs/atngw100_evklcd101_defconfig
@@ -152,6 +152,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atngw100_mrmt_defconfig b/arch/avr32/configs/atngw100_mrmt_defconfig
index ffcc28d..97148ac 100644
--- a/arch/avr32/configs/atngw100_mrmt_defconfig
+++ b/arch/avr32/configs/atngw100_mrmt_defconfig
@@ -130,6 +130,7 @@ CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_UTF8=y
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atngw100mkii_defconfig b/arch/avr32/configs/atngw100mkii_defconfig
index 0496264..451cde9 100644
--- a/arch/avr32/configs/atngw100mkii_defconfig
+++ b/arch/avr32/configs/atngw100mkii_defconfig
@@ -139,6 +139,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atngw100mkii_evklcd100_defconfig b/arch/avr32/configs/atngw100mkii_evklcd100_defconfig
index 89c2cda..6741552 100644
--- a/arch/avr32/configs/atngw100mkii_evklcd100_defconfig
+++ b/arch/avr32/configs/atngw100mkii_evklcd100_defconfig
@@ -156,6 +156,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atngw100mkii_evklcd101_defconfig b/arch/avr32/configs/atngw100mkii_evklcd101_defconfig
index 1b4d4a8..fa4282f 100644
--- a/arch/avr32/configs/atngw100mkii_evklcd101_defconfig
+++ b/arch/avr32/configs/atngw100mkii_evklcd101_defconfig
@@ -155,6 +155,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atstk1002_defconfig b/arch/avr32/configs/atstk1002_defconfig
index 9b8b52e..5a197d7 100644
--- a/arch/avr32/configs/atstk1002_defconfig
+++ b/arch/avr32/configs/atstk1002_defconfig
@@ -152,6 +152,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atstk1003_defconfig b/arch/avr32/configs/atstk1003_defconfig
index ccce1a0..80f6ccb 100644
--- a/arch/avr32/configs/atstk1003_defconfig
+++ b/arch/avr32/configs/atstk1003_defconfig
@@ -132,6 +132,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atstk1004_defconfig b/arch/avr32/configs/atstk1004_defconfig
index e64288f..c979c8f 100644
--- a/arch/avr32/configs/atstk1004_defconfig
+++ b/arch/avr32/configs/atstk1004_defconfig
@@ -130,6 +130,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/atstk1006_defconfig b/arch/avr32/configs/atstk1006_defconfig
index 7d669f7..01fd110 100644
--- a/arch/avr32/configs/atstk1006_defconfig
+++ b/arch/avr32/configs/atstk1006_defconfig
@@ -155,6 +155,7 @@ CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DETECT_HUNG_TASK=y
diff --git a/arch/avr32/configs/favr-32_defconfig b/arch/avr32/configs/favr-32_defconfig
index 560c52f..65cf511 100644
--- a/arch/avr32/configs/favr-32_defconfig
+++ b/arch/avr32/configs/favr-32_defconfig
@@ -138,6 +138,7 @@ CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_CRYPTO_HW is not set
diff --git a/arch/avr32/configs/hammerhead_defconfig b/arch/avr32/configs/hammerhead_defconfig
index d57fadb..2f257d7 100644
--- a/arch/avr32/configs/hammerhead_defconfig
+++ b/arch/avr32/configs/hammerhead_defconfig
@@ -134,6 +134,7 @@ CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_UTF8=m
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_CRYPTO_ECB=m
diff --git a/arch/avr32/configs/mimc200_defconfig b/arch/avr32/configs/mimc200_defconfig
index 49c7e89..59a838a 100644
--- a/arch/avr32/configs/mimc200_defconfig
+++ b/arch/avr32/configs/mimc200_defconfig
@@ -106,6 +106,7 @@ CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_UTF8=y
+CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_CRYPTO_ECB=y
--
2.0.2

2015-11-09 19:40:11

by Shi, Yang

[permalink] [raw]
Subject: [PATCH 4/4] h8300: set DEBUG_KERNEL in defconfigs

h8300 has FRAME_POINTER selected by default, but it depends on DEBUG_KERNEL,
so set DEBUG_KERNEL in defconfigs.

Signed-off-by: Yang Shi <[email protected]>
---
arch/h8300/configs/edosk2674_defconfig | 1 +
arch/h8300/configs/h8300h-sim_defconfig | 1 +
arch/h8300/configs/h8s-sim_defconfig | 1 +
3 files changed, 3 insertions(+)

diff --git a/arch/h8300/configs/edosk2674_defconfig b/arch/h8300/configs/edosk2674_defconfig
index 29fda12..f497cb1 100644
--- a/arch/h8300/configs/edosk2674_defconfig
+++ b/arch/h8300/configs/edosk2674_defconfig
@@ -47,3 +47,4 @@ CONFIG_SERIAL_SH_SCI_CONSOLE=y
CONFIG_DEBUG_INFO=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set
# CONFIG_ENABLE_MUST_CHECK is not set
+CONFIG_DEBUG_KERNEL=y
diff --git a/arch/h8300/configs/h8300h-sim_defconfig b/arch/h8300/configs/h8300h-sim_defconfig
index 067bfe9..0b80883 100644
--- a/arch/h8300/configs/h8300h-sim_defconfig
+++ b/arch/h8300/configs/h8300h-sim_defconfig
@@ -47,3 +47,4 @@ CONFIG_SERIAL_SH_SCI_CONSOLE=y
CONFIG_DEBUG_INFO=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set
# CONFIG_ENABLE_MUST_CHECK is not set
+CONFIG_DEBUG_KERNEL=y
diff --git a/arch/h8300/configs/h8s-sim_defconfig b/arch/h8300/configs/h8s-sim_defconfig
index 29fda12..f497cb1 100644
--- a/arch/h8300/configs/h8s-sim_defconfig
+++ b/arch/h8300/configs/h8s-sim_defconfig
@@ -47,3 +47,4 @@ CONFIG_SERIAL_SH_SCI_CONSOLE=y
CONFIG_DEBUG_INFO=y
# CONFIG_ENABLE_WARN_DEPRECATED is not set
# CONFIG_ENABLE_MUST_CHECK is not set
+CONFIG_DEBUG_KERNEL=y
--
2.0.2

Subject: Re: [PATCH 3/4] avr32: select ARCH_WANT_FRAME_POINTERS and set DEBUG_KERNEL in defconfigs

Around Mon 09 Nov 2015 11:21:17 -0800 or thereabout, Yang Shi wrote:
> FRAME_POINTER is set by default if ARCH_WANT_FRAME_POINTERS and DEBUG_KERNEL
> are selcted, this is the standard way to include FRAME_POINTER used by all
> of other architectures.
>
> And, set DEBUG_KERNEL=y in defconfigs otherwise FRAME_POINTER won't be enabled
> at all.
>
> Signed-off-by: Yang Shi <[email protected]>
> ---
> arch/avr32/Kconfig | 1 +
> arch/avr32/configs/atngw100_defconfig | 1 +
> arch/avr32/configs/atngw100_evklcd100_defconfig | 1 +
> arch/avr32/configs/atngw100_evklcd101_defconfig | 1 +
> arch/avr32/configs/atngw100_mrmt_defconfig | 1 +
> arch/avr32/configs/atngw100mkii_defconfig | 1 +
> arch/avr32/configs/atngw100mkii_evklcd100_defconfig | 1 +
> arch/avr32/configs/atngw100mkii_evklcd101_defconfig | 1 +
> arch/avr32/configs/atstk1002_defconfig | 1 +
> arch/avr32/configs/atstk1003_defconfig | 1 +
> arch/avr32/configs/atstk1004_defconfig | 1 +
> arch/avr32/configs/atstk1006_defconfig | 1 +
> arch/avr32/configs/favr-32_defconfig | 1 +
> arch/avr32/configs/hammerhead_defconfig | 1 +
> arch/avr32/configs/mimc200_defconfig | 1 +
> 15 files changed, 15 insertions(+)

<snipp diff>

Acked-by: Hans-Christian Egtvedt <[email protected]>

--
Best regards, Hans-Christian Noren Egtvedt