All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] make gcc -O1 in fs/reiserfs optional
@ 2005-04-26 21:10 Olaf Hering
  2005-04-26 21:46 ` Jeff Mahoney
  2005-04-27 13:40 ` Hans Reiser
  0 siblings, 2 replies; 8+ messages in thread
From: Olaf Hering @ 2005-04-26 21:10 UTC (permalink / raw)
  To: Jeff Mahoney; +Cc: linuxppc-dev, reiserfs-dev

Jeff,

you added this EXTRA_CFLAGS= during 2.4 development, I think the broken
compiler was gcc 3.2 on SLES8. Can we turn this -O1 into a .config
option?


Signed-off-by: Olaf Hering <olh@suse.de>

Index: linux-2.6.12-rc3-olh/fs/reiserfs/Makefile
===================================================================
--- linux-2.6.12-rc3-olh.orig/fs/reiserfs/Makefile
+++ linux-2.6.12-rc3-olh/fs/reiserfs/Makefile
@@ -21,13 +21,7 @@ ifeq ($(CONFIG_REISERFS_FS_POSIX_ACL),y)
 reiserfs-objs += xattr_acl.o
 endif
 
-# gcc -O2 (the kernel default)  is overaggressive on ppc32 when many inline
-# functions are used.  This causes the compiler to advance the stack
-# pointer out of the available stack space, corrupting kernel space,
-# and causing a panic. Since this behavior only affects ppc32, this ifeq
-# will work around it. If any other architecture displays this behavior,
-# add it here.
-ifeq ($(CONFIG_PPC32),y)
+ifeq ($(CONFIG_REISERFS_CC_REDUCE_OPTIMZE),y)
 EXTRA_CFLAGS := -O1
 endif
 
Index: linux-2.6.12-rc3-olh/fs/Kconfig
===================================================================
--- linux-2.6.12-rc3-olh.orig/fs/Kconfig
+++ linux-2.6.12-rc3-olh/fs/Kconfig
@@ -186,6 +186,18 @@ config REISERFS_FS
 	  If you like it, you can pay us to add new features to it that you
 	  need, buy a support contract, or pay us to port it to another OS.
 
+config REISERFS_CC_REDUCE_OPTIMZE
+	bool "Reduce CC optimization level to workaround compiler bugs"
+	depends on PPC32
+	default n
+	help
+	  gcc -O2 (the kernel default) is overaggressive on ppc32 when many inline
+	  functions are used.  This causes the compiler to advance the stack
+	  pointer out of the available stack space, corrupting kernel space,
+	  and causing a panic. Since this behavior only affects ppc32, this ifeq
+	  will work around it. If any other architecture displays this behavior,
+	  add it here.
+
 config REISERFS_CHECK
 	bool "Enable reiserfs debug mode"
 	depends on REISERFS_FS

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2006-07-24  6:52 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-04-26 21:10 [PATCH] make gcc -O1 in fs/reiserfs optional Olaf Hering
2005-04-26 21:46 ` Jeff Mahoney
2005-04-27 13:40 ` Hans Reiser
2005-10-11 19:01   ` Olaf Hering
2005-10-11 20:04     ` Hans Reiser
2005-10-13 23:27     ` Andrew Morton
2005-10-14  1:17       ` Jeff Mahoney
2006-07-24  6:52     ` [PATCH] use gcc -O1 in fs/reiserfs only for ancient gcc versions Olaf Hering

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.