From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752269AbbEKVch (ORCPT ); Mon, 11 May 2015 17:32:37 -0400 Received: from lb2-smtp-cloud3.xs4all.net ([194.109.24.26]:36108 "EHLO lb2-smtp-cloud3.xs4all.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751348AbbEKVcf (ORCPT ); Mon, 11 May 2015 17:32:35 -0400 Message-ID: <1431379948.2398.102.camel@x220> Subject: Re: [PATCH 2/1] init/Kconfig: Split expert menu into a separate file, init/Kconfig.expert From: Paul Bolle To: Josh Triplett Cc: Ingo Molnar , Andrew Morton , "Paul E. McKenney" , Michal Hocko , Vladimir Davydov , Johannes Weiner , Geert Uytterhoeven , Andy Lutomirski , Bertrand Jacquin , "Luis R. Rodriguez" , Iulia Manda , Pranith Kumar , Clark Williams , Mel Gorman , Randy Dunlap , linux-kernel@vger.kernel.org Date: Mon, 11 May 2015 23:32:28 +0200 In-Reply-To: <20150511211825.GA12080@jtriplet-mobl1> References: <20150511181327.GA1884@jtriplet-mobl1> <20150511202301.GA11897@jtriplet-mobl1> <1431378082.2398.97.camel@x220> <20150511211825.GA12080@jtriplet-mobl1> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4 (3.10.4-4.fc20) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2015-05-11 at 14:18 -0700, Josh Triplett wrote: > However, that would produce *two* entries under the "General setup" > menu: a yes/no entry "Configure standard kernel features (expert users)" > with no submenu, and a "Some separate menu prompt here" entry with a > submenu but no '[ ]' for a yes/no option. Integrating the two (without > using menuconfig's implicit "add stuff to submenu until an option's > prompt doesn't depend on this symbol" magic) requires new a kconfig > mechanism. The diff pasted at the end of this message, which I quickly cobbled together an applies on top of this 2/1, generates these two lines in menuconfig (for EXPERT = 'y') [*] Configure standard kernel features (expert users) Standard kernel features ---> Is squashing those two lines worth a new kconfig mechanism? Thanks, Paul Bolle diff --git a/init/Kconfig b/init/Kconfig index 06c585007964..dfb2a7405a83 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -1421,6 +1421,16 @@ config BPF_SYSCALL Enable the bpf() system call that allows to manipulate eBPF programs and maps via file descriptors. +config EXPERT + bool "Configure standard kernel features (expert users)" + # Unhide debug options, to make the on-by-default options visible + select DEBUG_KERNEL + help + This option allows certain base kernel options and settings + to be disabled or tweaked. This is for specialized + environments which can tolerate a "non-standard" kernel. + Only use this if you really know what you are doing. + source init/Kconfig.expert config EMBEDDED diff --git a/init/Kconfig.expert b/init/Kconfig.expert index c84a3720164b..c5718f1dc978 100644 --- a/init/Kconfig.expert +++ b/init/Kconfig.expert @@ -1,22 +1,15 @@ -menuconfig EXPERT - bool "Configure standard kernel features (expert users)" - # Unhide debug options, to make the on-by-default options visible - select DEBUG_KERNEL - help - This option allows certain base kernel options and settings - to be disabled or tweaked. This is for specialized - environments which can tolerate a "non-standard" kernel. - Only use this if you really know what you are doing. +menu "Standard kernel features" + visible if EXPERT config UID16 - bool "Enable 16-bit UID system calls" if EXPERT + bool "Enable 16-bit UID system calls" depends on HAVE_UID16 && MULTIUSER default y help This enables the legacy 16-bit UID syscall wrappers. config MULTIUSER - bool "Multiple users, groups and capabilities support" if EXPERT + bool "Multiple users, groups and capabilities support" default y help This option enables support for non-root users, groups and @@ -30,7 +23,7 @@ config MULTIUSER If unsure, say Y here. config SGETMASK_SYSCALL - bool "sgetmask/ssetmask syscalls support" if EXPERT + bool "sgetmask/ssetmask syscalls support" def_bool PARISC || MN10300 || BLACKFIN || M68K || PPC || MIPS || X86 || SPARC || CRIS || MICROBLAZE || SUPERH ---help--- sys_sgetmask and sys_ssetmask are obsolete system calls @@ -40,7 +33,7 @@ config SGETMASK_SYSCALL If unsure, leave the default option here. config SYSFS_SYSCALL - bool "Sysfs syscall support" if EXPERT + bool "Sysfs syscall support" default y ---help--- sys_sysfs is an obsolete system call no longer supported in libc. @@ -50,7 +43,7 @@ config SYSFS_SYSCALL If unsure say Y here. config SYSCTL_SYSCALL - bool "Sysctl syscall support" if EXPERT + bool "Sysctl syscall support" depends on PROC_SYSCTL default n select SYSCTL @@ -67,7 +60,7 @@ config SYSCTL_SYSCALL If unsure say N here. config KALLSYMS - bool "Load all symbols for debugging/ksymoops" if EXPERT + bool "Load all symbols for debugging/ksymoops" default y help Say Y here to let the kernel print out symbolic crash information and @@ -93,7 +86,7 @@ config KALLSYMS_ALL config PRINTK default y - bool "Enable support for printk" if EXPERT + bool "Enable support for printk" select IRQ_WORK help This option enables normal printk support. Removing it @@ -103,7 +96,7 @@ config PRINTK strongly discouraged. config BUG - bool "BUG() support" if EXPERT + bool "BUG() support" default y help Disabling this option eliminates support for BUG and WARN, reducing @@ -115,13 +108,13 @@ config BUG config ELF_CORE depends on COREDUMP default y - bool "Enable ELF core dumps" if EXPERT + bool "Enable ELF core dumps" help Enable support for generating core dumps. Disabling saves about 4k. config PCSPKR_PLATFORM - bool "Enable PC-Speaker support" if EXPERT + bool "Enable PC-Speaker support" depends on HAVE_PCSPKR_PLATFORM select I8253_LOCK default y @@ -131,14 +124,14 @@ config PCSPKR_PLATFORM config BASE_FULL default y - bool "Enable full-sized data structures for core" if EXPERT + bool "Enable full-sized data structures for core" help Disabling this option reduces the size of miscellaneous core kernel data structures. This saves memory on small machines, but may reduce performance. config FUTEX - bool "Enable futex support" if EXPERT + bool "Enable futex support" default y select RT_MUTEXES help @@ -155,7 +148,7 @@ config HAVE_FUTEX_CMPXCHG checks. config EPOLL - bool "Enable eventpoll support" if EXPERT + bool "Enable eventpoll support" default y select ANON_INODES help @@ -163,7 +156,7 @@ config EPOLL support for epoll family of system calls. config SIGNALFD - bool "Enable signalfd() system call" if EXPERT + bool "Enable signalfd() system call" select ANON_INODES default y help @@ -173,7 +166,7 @@ config SIGNALFD If unsure, say Y. config TIMERFD - bool "Enable timerfd() system call" if EXPERT + bool "Enable timerfd() system call" select ANON_INODES default y help @@ -183,7 +176,7 @@ config TIMERFD If unsure, say Y. config EVENTFD - bool "Enable eventfd() system call" if EXPERT + bool "Enable eventfd() system call" select ANON_INODES default y help @@ -193,7 +186,7 @@ config EVENTFD If unsure, say Y. config SHMEM - bool "Use full shmem filesystem" if EXPERT + bool "Use full shmem filesystem" default y depends on MMU help @@ -204,7 +197,7 @@ config SHMEM which may be appropriate on small systems without swap. config AIO - bool "Enable AIO support" if EXPERT + bool "Enable AIO support" default y help This option enables POSIX asynchronous I/O which may by used @@ -212,7 +205,7 @@ config AIO this option saves about 7k. config ADVISE_SYSCALLS - bool "Enable madvise/fadvise syscalls" if EXPERT + bool "Enable madvise/fadvise syscalls" default y help This option enables the madvise and fadvise syscalls, used by @@ -223,9 +216,11 @@ config ADVISE_SYSCALLS config PCI_QUIRKS default y - bool "Enable PCI quirk workarounds" if EXPERT + bool "Enable PCI quirk workarounds" depends on PCI help This enables workarounds for various PCI chipset bugs/quirks. Disable this only if your target machine is unaffected by PCI quirks. + +endmenu