Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c45b4f1f authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Move size optimization option outside of EMBEDDED menu, mark it EXPERIMENTAL



Also, disable on sparc64 - a number of people report breakage.  Probably
a compiler bug, but it's quite possible that it tickles some latent
kernel problem too.

It still defaults to 'y' everywhere else (when enabled through
EXPERIMENTAL), and Dave Jones points out that Fedora (and RHEL4) has
been building with size optimizations for a long time on x86, x86-64,
ia64, s390, s390x, ppc32 and ppc64.  So it is really only moderately
experimental, but the sparc64 breakage certainly shows that it can
trigger "issues".

Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 11c18b5c
Loading
Loading
Loading
Loading
+14 −12
Original line number Diff line number Diff line
@@ -256,6 +256,20 @@ config CPUSETS

source "usr/Kconfig"

config CC_OPTIMIZE_FOR_SIZE
	bool "Optimize for size (Look out for broken compilers!)"
	default y
	depends on ARM || H8300 || EXPERIMENTAL
	depends on !SPARC64
	help
	  Enabling this option will pass "-Os" instead of "-O2" to gcc
	  resulting in a smaller kernel.

	  WARNING: some versions of gcc may generate incorrect code with this
	  option.  If problems are observed, a gcc upgrade may be needed.

	  If unsure, say N.

menuconfig EMBEDDED
	bool "Configure standard kernel features (for small systems)"
	help
@@ -338,18 +352,6 @@ config EPOLL
	  Disabling this option will cause the kernel to be built without
	  support for epoll family of system calls.

config CC_OPTIMIZE_FOR_SIZE
	bool "Optimize for size"
	default y if ARM || H8300
	help
	  Enabling this option will pass "-Os" instead of "-O2" to gcc
	  resulting in a smaller kernel.

	  WARNING: some versions of gcc may generate incorrect code with this
	  option.  If problems are observed, a gcc upgrade may be needed.

	  If unsure, say N.

config SHMEM
	bool "Use full shmem filesystem" if EMBEDDED
	default y