* [PATCH mainline] menu: fix embedded menu snafu
@ 2009-03-02 22:14 Randy Dunlap
2009-03-03 0:16 ` Andrew Morton
0 siblings, 1 reply; 5+ messages in thread
From: Randy Dunlap @ 2009-03-02 22:14 UTC (permalink / raw)
To: lkml; +Cc: torvalds, akpm
From: Randy Dunlap <randy.dunlap@oracle.com>
The COMPAT_BRK kconfig symbol does not depend on EMBEDDED,
but it is in the midst of the EMBEDDED menu symbols, so it mucks
up the EMBEDDED menu. Fix by moving it to just after all of
the EMBEDDED menu symbols. Also, surround all of the
EMBEDDED symbols with "if EMBEDDED"/"endif" so that this
EMBEDDED block is clearer.
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
init/Kconfig | 28 ++++++++++++++++------------
1 file changed, 16 insertions(+), 12 deletions(-)
--- linux-2.6.29-rc6-git5.orig/init/Kconfig
+++ linux-2.6.29-rc6-git5/init/Kconfig
@@ -683,6 +683,8 @@ menuconfig EMBEDDED
environments which can tolerate a "non-standard" kernel.
Only use this if you really know what you are doing.
+if EMBEDDED
+
config UID16
bool "Enable 16-bit UID system calls" if EMBEDDED
depends on ARM || BLACKFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && COMPAT) || UML || (X86_64 && IA32_EMULATION)
@@ -780,18 +782,6 @@ config PCSPKR_PLATFORM
This option allows to disable the internal PC-Speaker
support, saving some memory.
-config COMPAT_BRK
- bool "Disable heap randomization"
- default y
- help
- Randomizing heap placement makes heap exploits harder, but it
- also breaks ancient binaries (including anything libc5 based).
- This option changes the bootup default to heap randomization
- disabled, and can be overriden runtime by setting
- /proc/sys/kernel/randomize_va_space to 2.
-
- On non-ancient distros (post-2000 ones) N is usually a safe choice.
-
config BASE_FULL
default y
bool "Enable full-sized data structures for core" if EMBEDDED
@@ -897,6 +887,20 @@ config SLUB_DEBUG
SLUB sysfs support. /sys/slab will not exist and there will be
no support for cache validation etc.
+endif # EMBEDDED
+
+config COMPAT_BRK
+ bool "Disable heap randomization"
+ default y
+ help
+ Randomizing heap placement makes heap exploits harder, but it
+ also breaks ancient binaries (including anything libc5 based).
+ This option changes the bootup default to heap randomization
+ disabled, and can be overriden runtime by setting
+ /proc/sys/kernel/randomize_va_space to 2.
+
+ On non-ancient distros (post-2000 ones) N is usually a safe choice.
+
choice
prompt "Choose SLAB allocator"
default SLUB
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH mainline] menu: fix embedded menu snafu
2009-03-02 22:14 [PATCH mainline] menu: fix embedded menu snafu Randy Dunlap
@ 2009-03-03 0:16 ` Andrew Morton
2009-03-03 0:21 ` Linus Torvalds
0 siblings, 1 reply; 5+ messages in thread
From: Andrew Morton @ 2009-03-03 0:16 UTC (permalink / raw)
To: Randy Dunlap; +Cc: linux-kernel, torvalds
On Mon, 2 Mar 2009 14:14:06 -0800
Randy Dunlap <randy.dunlap@oracle.com> wrote:
> The COMPAT_BRK kconfig symbol does not depend on EMBEDDED,
> but it is in the midst of the EMBEDDED menu symbols, so it mucks
> up the EMBEDDED menu. Fix by moving it to just after all of
> the EMBEDDED menu symbols. Also, surround all of the
> EMBEDDED symbols with "if EMBEDDED"/"endif" so that this
> EMBEDDED block is clearer.
This patch causes weird unintended breakage, methinks.
x86_64 allnoconfig does:
mm/bootmem.c: In function 'mark_bootmem':
mm/bootmem.c:321: warning: control reaches end of non-void function
because
}
BUG();
}
gets preprocessed down to
}
;
}
because all BUG-related config options got removed:
akpm2:/usr/src/25> make allnoconfig
scripts/kconfig/conf -n arch/x86/Kconfig
#
# configuration written to .config
#
akpm2:/usr/src/25> grep BUG .config
CONFIG_X86_DEBUGCTLMSR=y
# CONFIG_INPUT_EVBUG is not set
# CONFIG_DEBUG_FS is not set
# CONFIG_DEBUG_KERNEL is not set
CONFIG_DEBUG_MEMORY_INIT=y
I think I'll wait for version 2...
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH mainline] menu: fix embedded menu snafu
2009-03-03 0:16 ` Andrew Morton
@ 2009-03-03 0:21 ` Linus Torvalds
2009-03-03 0:30 ` Ingo Molnar
2009-03-03 0:35 ` [PATCH v2] " Randy Dunlap
0 siblings, 2 replies; 5+ messages in thread
From: Linus Torvalds @ 2009-03-03 0:21 UTC (permalink / raw)
To: Andrew Morton; +Cc: Randy Dunlap, linux-kernel
On Mon, 2 Mar 2009, Andrew Morton wrote:
>
> This patch causes weird unintended breakage, methinks.
Damn, you're right. It looked obvious, so I already applied it, but I
clearly shouldn't have.
The whole "if EMBEDDED" thing is totally wrong, because those config
options very much_do_ exist even when non-embedded, it's just that then
they always take their default valies.
Thanks for noticing.
Linus
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH mainline] menu: fix embedded menu snafu
2009-03-03 0:21 ` Linus Torvalds
@ 2009-03-03 0:30 ` Ingo Molnar
2009-03-03 0:35 ` [PATCH v2] " Randy Dunlap
1 sibling, 0 replies; 5+ messages in thread
From: Ingo Molnar @ 2009-03-03 0:30 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Andrew Morton, Randy Dunlap, linux-kernel
* Linus Torvalds <torvalds@linux-foundation.org> wrote:
> On Mon, 2 Mar 2009, Andrew Morton wrote:
> >
> > This patch causes weird unintended breakage, methinks.
>
> Damn, you're right. It looked obvious, so I already applied it, but I
> clearly shouldn't have.
>
> The whole "if EMBEDDED" thing is totally wrong, because those config
> options very much_do_ exist even when non-embedded, it's just that then
> they always take their default valies.
>
> Thanks for noticing.
probably also explains weird build breakages i've been getting
since i updated to your latest:
CC kernel/futex.o
In file included from kernel/futex.c:61:
kernel/rtmutex_common.h: In function ‘task_has_pi_waiters’:
kernel/rtmutex_common.h:81: error: ‘struct task_struct’ has no
member named ‘pi_waiters’
kernel/rtmutex_common.h: In function ‘task_top_pi_waiter’:
kernel/rtmutex_common.h:87: error: ‘struct task_struct’ has no
member named ‘pi_waiters’
make[1]: *** [kernel/futex.o] Error 1
Ingo
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2] menu: fix embedded menu snafu
2009-03-03 0:21 ` Linus Torvalds
2009-03-03 0:30 ` Ingo Molnar
@ 2009-03-03 0:35 ` Randy Dunlap
1 sibling, 0 replies; 5+ messages in thread
From: Randy Dunlap @ 2009-03-03 0:35 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Andrew Morton, Randy Dunlap, linux-kernel
Linus Torvalds wrote:
>
> On Mon, 2 Mar 2009, Andrew Morton wrote:
>> This patch causes weird unintended breakage, methinks.
>
> Damn, you're right. It looked obvious, so I already applied it, but I
> clearly shouldn't have.
>
> The whole "if EMBEDDED" thing is totally wrong, because those config
> options very much_do_ exist even when non-embedded, it's just that then
> they always take their default valies.
Crud. OK, v2, probably just for Andrew for now (?).
From: Randy Dunlap <randy.dunlap@oracle.com>
The COMPAT_BRK kconfig symbol does not depend on EMBEDDED,
but it is in the midst of the EMBEDDED menu symbols, so it mucks
up the EMBEDDED menu. Fix by moving it to just after all of
the EMBEDDED menu symbols. Also, ANON_INODES has a similar
problem, so move it to just above the EMBEDDED menu items
since it is used in the EMBEDDED menu.
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
init/Kconfig | 30 +++++++++++++++---------------
1 file changed, 15 insertions(+), 15 deletions(-)
--- linux-2.6.29-rc6-git5.orig/init/Kconfig
+++ linux-2.6.29-rc6-git5/init/Kconfig
@@ -675,6 +675,9 @@ config CC_OPTIMIZE_FOR_SIZE
config SYSCTL
bool
+config ANON_INODES
+ bool
+
menuconfig EMBEDDED
bool "Configure standard kernel features (for small systems)"
help
@@ -780,18 +783,6 @@ config PCSPKR_PLATFORM
This option allows to disable the internal PC-Speaker
support, saving some memory.
-config COMPAT_BRK
- bool "Disable heap randomization"
- default y
- help
- Randomizing heap placement makes heap exploits harder, but it
- also breaks ancient binaries (including anything libc5 based).
- This option changes the bootup default to heap randomization
- disabled, and can be overriden runtime by setting
- /proc/sys/kernel/randomize_va_space to 2.
-
- On non-ancient distros (post-2000 ones) N is usually a safe choice.
-
config BASE_FULL
default y
bool "Enable full-sized data structures for core" if EMBEDDED
@@ -809,9 +800,6 @@ config FUTEX
support for "fast userspace mutexes". The resulting kernel may not
run glibc-based applications correctly.
-config ANON_INODES
- bool
-
config EPOLL
bool "Enable eventpoll support" if EMBEDDED
default y
@@ -897,6 +885,18 @@ config SLUB_DEBUG
SLUB sysfs support. /sys/slab will not exist and there will be
no support for cache validation etc.
+config COMPAT_BRK
+ bool "Disable heap randomization"
+ default y
+ help
+ Randomizing heap placement makes heap exploits harder, but it
+ also breaks ancient binaries (including anything libc5 based).
+ This option changes the bootup default to heap randomization
+ disabled, and can be overriden runtime by setting
+ /proc/sys/kernel/randomize_va_space to 2.
+
+ On non-ancient distros (post-2000 ones) N is usually a safe choice.
+
choice
prompt "Choose SLAB allocator"
default SLUB
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-03-03 0:34 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-02 22:14 [PATCH mainline] menu: fix embedded menu snafu Randy Dunlap
2009-03-03 0:16 ` Andrew Morton
2009-03-03 0:21 ` Linus Torvalds
2009-03-03 0:30 ` Ingo Molnar
2009-03-03 0:35 ` [PATCH v2] " Randy Dunlap
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox