Re: [PATCH 027/193] arch/sh: remove CONFIG_EXPERIMENTAL
On Thu, Oct 25, 2012 at 9:28 PM, Paul Mundt wrote: > On Tue, Oct 23, 2012 at 01:01:40PM -0700, Kees Cook wrote: >> This config item has not carried much meaning for a while now and is >> almost always enabled by default. As agreed during the Linux kernel >> summit, remove it. >> >> CC: Paul Mundt >> CC: Tejun Heo >> Signed-off-by: Kees Cook > > While there are cases where it is largely superfluous, we also have > plenty of cases in here that are genuinely experimental features and > generally shouldn't be enabled unless someone is prepared for some > hacking. We can of course replace this with an arch-specific option if > needed, but I disagree with suddenly making experimental features > suddenly appear to be anything other than what they are. Yeah, things that really are experimental need something, but it hasn't been meaningful to put them behind CONFIG_EXPERIMENTAL. Here's the text from the first patch, which details possible approaches: https://lkml.org/lkml/2012/10/23/878 This config item has not carried much meaning for a while now and is almost always enabled by default (especially in distro builds). As agreed during the Linux kernel summit, it should be removed. As a first step, remove it from being listed, and default it to on. Once it has been removed from all subsystem Kconfigs, it will be dropped entirely. For items that really are experimental, maintainers should use "default n", optionally include "(EXPERIMENTAL)" in the title, and add language to the help text indicating why the item should be considered experimental. For items that are dangerously experimental, the maintainer is encouraged to follow the above title recommendation, add stronger language to the help text, and optionally use (depending on the extent of the danger, from least to most dangerous): printk(), add_taint(TAINT_WARN), add_taint(TAINT_CRAP), WARN_ON(1), and CONFIG_BROKEN. -Kees -- Kees Cook Chrome OS Security -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 027/193] arch/sh: remove CONFIG_EXPERIMENTAL
On Tue, Oct 23, 2012 at 01:01:40PM -0700, Kees Cook wrote: > This config item has not carried much meaning for a while now and is > almost always enabled by default. As agreed during the Linux kernel > summit, remove it. > > CC: Paul Mundt > CC: Tejun Heo > Signed-off-by: Kees Cook While there are cases where it is largely superfluous, we also have plenty of cases in here that are genuinely experimental features and generally shouldn't be enabled unless someone is prepared for some hacking. We can of course replace this with an arch-specific option if needed, but I disagree with suddenly making experimental features suddenly appear to be anything other than what they are. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 027/193] arch/sh: remove CONFIG_EXPERIMENTAL
On Tue, Oct 23, 2012 at 01:01:40PM -0700, Kees Cook wrote: This config item has not carried much meaning for a while now and is almost always enabled by default. As agreed during the Linux kernel summit, remove it. CC: Paul Mundt let...@linux-sh.org CC: Tejun Heo t...@kernel.org Signed-off-by: Kees Cook keesc...@chromium.org While there are cases where it is largely superfluous, we also have plenty of cases in here that are genuinely experimental features and generally shouldn't be enabled unless someone is prepared for some hacking. We can of course replace this with an arch-specific option if needed, but I disagree with suddenly making experimental features suddenly appear to be anything other than what they are. -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 027/193] arch/sh: remove CONFIG_EXPERIMENTAL
On Thu, Oct 25, 2012 at 9:28 PM, Paul Mundt let...@linux-sh.org wrote: On Tue, Oct 23, 2012 at 01:01:40PM -0700, Kees Cook wrote: This config item has not carried much meaning for a while now and is almost always enabled by default. As agreed during the Linux kernel summit, remove it. CC: Paul Mundt let...@linux-sh.org CC: Tejun Heo t...@kernel.org Signed-off-by: Kees Cook keesc...@chromium.org While there are cases where it is largely superfluous, we also have plenty of cases in here that are genuinely experimental features and generally shouldn't be enabled unless someone is prepared for some hacking. We can of course replace this with an arch-specific option if needed, but I disagree with suddenly making experimental features suddenly appear to be anything other than what they are. Yeah, things that really are experimental need something, but it hasn't been meaningful to put them behind CONFIG_EXPERIMENTAL. Here's the text from the first patch, which details possible approaches: https://lkml.org/lkml/2012/10/23/878 This config item has not carried much meaning for a while now and is almost always enabled by default (especially in distro builds). As agreed during the Linux kernel summit, it should be removed. As a first step, remove it from being listed, and default it to on. Once it has been removed from all subsystem Kconfigs, it will be dropped entirely. For items that really are experimental, maintainers should use default n, optionally include (EXPERIMENTAL) in the title, and add language to the help text indicating why the item should be considered experimental. For items that are dangerously experimental, the maintainer is encouraged to follow the above title recommendation, add stronger language to the help text, and optionally use (depending on the extent of the danger, from least to most dangerous): printk(), add_taint(TAINT_WARN), add_taint(TAINT_CRAP), WARN_ON(1), and CONFIG_BROKEN. -Kees -- Kees Cook Chrome OS Security -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 027/193] arch/sh: remove CONFIG_EXPERIMENTAL
This config item has not carried much meaning for a while now and is almost always enabled by default. As agreed during the Linux kernel summit, remove it. CC: Paul Mundt CC: Tejun Heo Signed-off-by: Kees Cook --- arch/sh/Kconfig | 29 ++--- arch/sh/Kconfig.cpu |3 +-- arch/sh/mm/Kconfig |4 ++-- 3 files changed, 17 insertions(+), 19 deletions(-) diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index babc2b8..a3427a5 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -647,8 +647,8 @@ menu "Kernel features" source kernel/Kconfig.hz config KEXEC - bool "kexec system call (EXPERIMENTAL)" - depends on SUPERH32 && EXPERIMENTAL && MMU + bool "kexec system call" + depends on SUPERH32 && MMU help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot @@ -664,8 +664,8 @@ config KEXEC strongly in flux, so no good recommendation can be made. config CRASH_DUMP - bool "kernel crash dumps (EXPERIMENTAL)" - depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP + bool "kernel crash dumps" + depends on SUPERH32 && BROKEN_ON_SMP help Generate crash dump after being started by kexec. This should be normally only set in special crash dump kernels @@ -678,8 +678,8 @@ config CRASH_DUMP For more details see Documentation/kdump/kdump.txt config KEXEC_JUMP - bool "kexec jump (EXPERIMENTAL)" - depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL + bool "kexec jump" + depends on SUPERH32 && KEXEC && HIBERNATION help Jump between original kernel and kexeced kernel and invoke code via KEXEC @@ -712,8 +712,8 @@ config SECCOMP If unsure, say N. config CC_STACKPROTECTOR - bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" - depends on SUPERH32 && EXPERIMENTAL + bool "Enable -fstack-protector buffer overflow detection" + depends on SUPERH32 help This option turns on the -fstack-protector GCC feature. This feature puts, at the beginning of functions, a canary value on @@ -763,8 +763,8 @@ config NR_CPUS approximately eight kilobytes to the kernel image. config HOTPLUG_CPU - bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" - depends on SMP && HOTPLUG && EXPERIMENTAL + bool "Support for hot-pluggable CPUs" + depends on SMP && HOTPLUG help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. @@ -786,7 +786,7 @@ config GUSA atomicity implementations exist. config GUSA_RB - bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)" + bool "Implement atomic operations by roll-back (gRB)" depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A) help Enabling this option will allow the kernel to implement some @@ -842,8 +842,8 @@ config ENTRY_OFFSET default "0x" config ROMIMAGE_MMCIF - bool "Include MMCIF loader in romImage (EXPERIMENTAL)" - depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL + bool "Include MMCIF loader in romImage" + depends on CPU_SUBTYPE_SH7724 help Say Y here to include experimental MMCIF loading code in romImage. With this enabled it is possible to write the romImage @@ -928,8 +928,7 @@ source "fs/Kconfig.binfmt" endmenu -menu "Power management options (EXPERIMENTAL)" -depends on EXPERIMENTAL +menu "Power management options" source "kernel/power/Kconfig" diff --git a/arch/sh/Kconfig.cpu b/arch/sh/Kconfig.cpu index 770ff2d..05b518e 100644 --- a/arch/sh/Kconfig.cpu +++ b/arch/sh/Kconfig.cpu @@ -33,7 +33,7 @@ config SH64_FPU_DENORM_FLUSH config SH_FPU_EMU def_bool n prompt "FPU emulation support" - depends on !SH_FPU && EXPERIMENTAL + depends on !SH_FPU help Selecting this option will enable support for software FPU emulation. Most SH-3 users will want to say Y here, whereas most SH-4 users will @@ -68,7 +68,6 @@ config SH_STORE_QUEUES config SPECULATIVE_EXECUTION bool "Speculative subroutine return" - depends on EXPERIMENTAL depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || CPU_SUBTYPE_SH7786 help This enables support for a speculative instruction fetch for diff --git a/arch/sh/mm/Kconfig b/arch/sh/mm/Kconfig index cb8f992..533ccbb 100644 --- a/arch/sh/mm/Kconfig +++ b/arch/sh/mm/Kconfig @@ -83,7 +83,7 @@ config 32BIT config PMB bool "Support 32-bit physical addressing through PMB" - depends on MMU && EXPERIMENTAL && CPU_SH4A && !CPU_SH4AL_DSP + depends on MMU && CPU_SH4A && !CPU_SH4AL_DSP select 32BIT select UNCACHED_MAPPING
[PATCH 027/193] arch/sh: remove CONFIG_EXPERIMENTAL
This config item has not carried much meaning for a while now and is almost always enabled by default. As agreed during the Linux kernel summit, remove it. CC: Paul Mundt let...@linux-sh.org CC: Tejun Heo t...@kernel.org Signed-off-by: Kees Cook keesc...@chromium.org --- arch/sh/Kconfig | 29 ++--- arch/sh/Kconfig.cpu |3 +-- arch/sh/mm/Kconfig |4 ++-- 3 files changed, 17 insertions(+), 19 deletions(-) diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index babc2b8..a3427a5 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig @@ -647,8 +647,8 @@ menu Kernel features source kernel/Kconfig.hz config KEXEC - bool kexec system call (EXPERIMENTAL) - depends on SUPERH32 EXPERIMENTAL MMU + bool kexec system call + depends on SUPERH32 MMU help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot @@ -664,8 +664,8 @@ config KEXEC strongly in flux, so no good recommendation can be made. config CRASH_DUMP - bool kernel crash dumps (EXPERIMENTAL) - depends on SUPERH32 EXPERIMENTAL BROKEN_ON_SMP + bool kernel crash dumps + depends on SUPERH32 BROKEN_ON_SMP help Generate crash dump after being started by kexec. This should be normally only set in special crash dump kernels @@ -678,8 +678,8 @@ config CRASH_DUMP For more details see Documentation/kdump/kdump.txt config KEXEC_JUMP - bool kexec jump (EXPERIMENTAL) - depends on SUPERH32 KEXEC HIBERNATION EXPERIMENTAL + bool kexec jump + depends on SUPERH32 KEXEC HIBERNATION help Jump between original kernel and kexeced kernel and invoke code via KEXEC @@ -712,8 +712,8 @@ config SECCOMP If unsure, say N. config CC_STACKPROTECTOR - bool Enable -fstack-protector buffer overflow detection (EXPERIMENTAL) - depends on SUPERH32 EXPERIMENTAL + bool Enable -fstack-protector buffer overflow detection + depends on SUPERH32 help This option turns on the -fstack-protector GCC feature. This feature puts, at the beginning of functions, a canary value on @@ -763,8 +763,8 @@ config NR_CPUS approximately eight kilobytes to the kernel image. config HOTPLUG_CPU - bool Support for hot-pluggable CPUs (EXPERIMENTAL) - depends on SMP HOTPLUG EXPERIMENTAL + bool Support for hot-pluggable CPUs + depends on SMP HOTPLUG help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. @@ -786,7 +786,7 @@ config GUSA atomicity implementations exist. config GUSA_RB - bool Implement atomic operations by roll-back (gRB) (EXPERIMENTAL) + bool Implement atomic operations by roll-back (gRB) depends on GUSA CPU_SH3 || (CPU_SH4 !CPU_SH4A) help Enabling this option will allow the kernel to implement some @@ -842,8 +842,8 @@ config ENTRY_OFFSET default 0x config ROMIMAGE_MMCIF - bool Include MMCIF loader in romImage (EXPERIMENTAL) - depends on CPU_SUBTYPE_SH7724 EXPERIMENTAL + bool Include MMCIF loader in romImage + depends on CPU_SUBTYPE_SH7724 help Say Y here to include experimental MMCIF loading code in romImage. With this enabled it is possible to write the romImage @@ -928,8 +928,7 @@ source fs/Kconfig.binfmt endmenu -menu Power management options (EXPERIMENTAL) -depends on EXPERIMENTAL +menu Power management options source kernel/power/Kconfig diff --git a/arch/sh/Kconfig.cpu b/arch/sh/Kconfig.cpu index 770ff2d..05b518e 100644 --- a/arch/sh/Kconfig.cpu +++ b/arch/sh/Kconfig.cpu @@ -33,7 +33,7 @@ config SH64_FPU_DENORM_FLUSH config SH_FPU_EMU def_bool n prompt FPU emulation support - depends on !SH_FPU EXPERIMENTAL + depends on !SH_FPU help Selecting this option will enable support for software FPU emulation. Most SH-3 users will want to say Y here, whereas most SH-4 users will @@ -68,7 +68,6 @@ config SH_STORE_QUEUES config SPECULATIVE_EXECUTION bool Speculative subroutine return - depends on EXPERIMENTAL depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || CPU_SUBTYPE_SH7786 help This enables support for a speculative instruction fetch for diff --git a/arch/sh/mm/Kconfig b/arch/sh/mm/Kconfig index cb8f992..533ccbb 100644 --- a/arch/sh/mm/Kconfig +++ b/arch/sh/mm/Kconfig @@ -83,7 +83,7 @@ config 32BIT config PMB bool Support 32-bit physical addressing through PMB - depends on MMU EXPERIMENTAL CPU_SH4A !CPU_SH4AL_DSP + depends on MMU CPU_SH4A !CPU_SH4AL_DSP select 32BIT select UNCACHED_MAPPING help @@ -110,7 +110,7 @@ config