mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [patch 2.6.13-rc2] all archs: add "__slow" tag for slow code
@ 2005-07-11  2:11 Chuck Ebbert
  0 siblings, 0 replies; only message in thread
From: Chuck Ebbert @ 2005-07-11  2:11 UTC (permalink / raw)
  To: linux-kernel
  Cc: David S. Miller, Andi Kleen, Andrew Morton, Arjan van de Ven,
	Chris Zankel, David Mosberger, Denis Vlasenko,
	Geert Uytterhoeven, Ian Molton, Ingo Molnar, Linus Torvalds,
	Martin Schwidefsky, Matthew Wilcox, Paul Mackerras, Paul Mundt,
	Ralf Baechle, Richard Henderson, Russell King,
	William Lee Irwin III, Jeff Dike



This patch adds a tag, "__slow" for marking non-performance-critical
functions in all architectures.

===================================================================
--- 2.6.13-rc2a.orig/include/linux/compiler.h	2005-06-24 00:50:34.000000000 -0400
+++ 2.6.13-rc2a/include/linux/compiler.h	2005-07-10 12:33:00.000000000 -0400
@@ -36,6 +36,10 @@
 
 #ifdef __KERNEL__
 
+/* Text section for code that is not speed-critical.
+ */
+#define __slow		noinline __attribute__((__section__(".slow.text")))
+
 #if __GNUC__ > 4
 #error no compiler-gcc.h file for this gcc version
 #elif __GNUC__ == 4
===================================================================
--- 2.6.13-rc2a.orig/arch/alpha/kernel/vmlinux.lds.S	2004-09-03 19:55:27.000000000 -0400
+++ 2.6.13-rc2a/arch/alpha/kernel/vmlinux.lds.S	2005-07-10 12:46:56.000000000 -0400
@@ -20,6 +20,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
   } :kernel
   _etext = .;					/* End of text section */
===================================================================
--- 2.6.13-rc2a.orig/arch/arm/kernel/vmlinux.lds.S	2005-06-24 00:50:17.000000000 -0400
+++ 2.6.13-rc2a/arch/arm/kernel/vmlinux.lds.S	2005-07-10 12:38:39.000000000 -0400
@@ -81,6 +81,7 @@
 			SCHED_TEXT
 			LOCK_TEXT
 			*(.fixup)
+			*(.slow.text)
 			*(.gnu.warning)
 			*(.rodata)
 			*(.rodata.*)
===================================================================
--- 2.6.13-rc2a.orig/arch/arm26/kernel/vmlinux-arm26-xip.lds.in	2005-01-03 18:49:27.000000000 -0500
+++ 2.6.13-rc2a/arch/arm26/kernel/vmlinux-arm26-xip.lds.in	2005-07-10 12:43:46.000000000 -0400
@@ -66,6 +66,7 @@
 			SCHED_TEXT
 			LOCK_TEXT       /* FIXME - borrowed from arm32 - check*/
 			*(.fixup)
+			*(.slow.text)
 			*(.gnu.warning)
 			*(.rodata)
 			*(.rodata.*)
===================================================================
--- 2.6.13-rc2a.orig/arch/arm26/kernel/vmlinux-arm26.lds.in	2005-01-03 18:49:27.000000000 -0500
+++ 2.6.13-rc2a/arch/arm26/kernel/vmlinux-arm26.lds.in	2005-07-10 12:44:02.000000000 -0400
@@ -67,6 +67,7 @@
 			SCHED_TEXT
 			LOCK_TEXT
 			*(.fixup)
+			*(.slow.text)
 			*(.gnu.warning)
 			*(.rodata)
 			*(.rodata.*)
===================================================================
--- 2.6.13-rc2a.orig/arch/cris/arch-v10/vmlinux.lds.S	2004-11-11 03:33:13.000000000 -0500
+++ 2.6.13-rc2a/arch/cris/arch-v10/vmlinux.lds.S	2005-07-10 12:42:05.000000000 -0400
@@ -28,6 +28,7 @@
 		SCHED_TEXT
 		LOCK_TEXT
 		*(.fixup)
+		*(.slow.text)
 		*(.text.__*)
 	}
 
===================================================================
--- 2.6.13-rc2a.orig/arch/frv/kernel/vmlinux.lds.S	2005-02-04 07:35:19.000000000 -0500
+++ 2.6.13-rc2a/arch/frv/kernel/vmlinux.lds.S	2005-07-10 12:51:29.000000000 -0400
@@ -113,6 +113,7 @@
 	)
 	SCHED_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	*(.exitcall.exit)
 	} = 0x9090
===================================================================
--- 2.6.13-rc2a.orig/arch/h8300/kernel/vmlinux.lds.S	2004-11-15 22:29:13.000000000 -0500
+++ 2.6.13-rc2a/arch/h8300/kernel/vmlinux.lds.S	2005-07-10 12:49:14.000000000 -0400
@@ -78,6 +78,7 @@
         	*(.text)
 	SCHED_TEXT
 	LOCK_TEXT
+		*(.slow.text)
 	__etext = . ;
 	. = ALIGN(16);          /* Exception table              */
 	___start___ex_table = .;
===================================================================
--- 2.6.13-rc2a.orig/arch/i386/kernel/vmlinux.lds.S	2005-07-07 18:19:01.000000000 -0400
+++ 2.6.13-rc2a/arch/i386/kernel/vmlinux.lds.S	2005-07-09 22:20:29.000000000 -0400
@@ -23,6 +23,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} = 0x9090
 
===================================================================
--- 2.6.13-rc2a.orig/arch/ia64/kernel/vmlinux.lds.S	2005-07-07 18:19:01.000000000 -0400
+++ 2.6.13-rc2a/arch/ia64/kernel/vmlinux.lds.S	2005-07-10 12:45:56.000000000 -0400
@@ -48,6 +48,7 @@
 	*(.text)
 	SCHED_TEXT
 	LOCK_TEXT
+	*(.slow.text)
 	*(.gnu.linkonce.t*)
     }
   .text2 : AT(ADDR(.text2) - LOAD_OFFSET)
===================================================================
--- 2.6.13-rc2a.orig/arch/m32r/kernel/vmlinux.lds.S	2004-09-24 04:27:50.000000000 -0400
+++ 2.6.13-rc2a/arch/m32r/kernel/vmlinux.lds.S	2005-07-10 12:49:47.000000000 -0400
@@ -29,6 +29,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} = 0x9090
 #ifdef CONFIG_SMP
===================================================================
--- 2.6.13-rc2a.orig/arch/m68k/kernel/vmlinux-std.lds	2004-10-20 04:37:09.000000000 -0400
+++ 2.6.13-rc2a/arch/m68k/kernel/vmlinux-std.lds	2005-07-10 12:44:58.000000000 -0400
@@ -14,6 +14,7 @@
 	*(.text)
 	SCHED_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} :text = 0x4e75
 
===================================================================
--- 2.6.13-rc2a.orig/arch/m68k/kernel/vmlinux-sun3.lds	2004-11-19 02:03:13.000000000 -0500
+++ 2.6.13-rc2a/arch/m68k/kernel/vmlinux-sun3.lds	2005-07-10 12:45:08.000000000 -0400
@@ -15,6 +15,7 @@
 	*(.text)
 	SCHED_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} :text = 0x4e75
 	RODATA
===================================================================
--- 2.6.13-rc2a.orig/arch/m68knommu/kernel/vmlinux.lds.S	2005-01-05 21:42:10.000000000 -0500
+++ 2.6.13-rc2a/arch/m68knommu/kernel/vmlinux.lds.S	2005-07-10 12:40:27.000000000 -0400
@@ -222,6 +222,7 @@
         	*(.text)
 		SCHED_TEXT
         	*(.text.lock)
+		*(.slow.text)
 
 		. = ALIGN(16);          /* Exception table              */
 		__start___ex_table = .;
===================================================================
--- 2.6.13-rc2a.orig/arch/mips/kernel/vmlinux.lds.S	2005-01-31 01:22:40.000000000 -0500
+++ 2.6.13-rc2a/arch/mips/kernel/vmlinux.lds.S	2005-07-10 12:30:33.000000000 -0400
@@ -31,6 +31,7 @@
     SCHED_TEXT
     LOCK_TEXT
     *(.fixup)
+    *(.slow.text)
     *(.gnu.warning)
   } =0
 
===================================================================
--- 2.6.13-rc2a.orig/arch/parisc/kernel/vmlinux.lds.S	2005-06-24 00:50:19.000000000 -0400
+++ 2.6.13-rc2a/arch/parisc/kernel/vmlinux.lds.S	2005-07-10 12:48:08.000000000 -0400
@@ -60,6 +60,7 @@
 	*(.text.*)
 	*(.fixup)
 	*(.lock.text)		/* out-of-line lock text */
+	*(.slow.text)
 	*(.gnu.warning)
 	} = 0
 
===================================================================
--- 2.6.13-rc2a.orig/arch/ppc/kernel/vmlinux.lds.S	2005-06-24 00:50:19.000000000 -0400
+++ 2.6.13-rc2a/arch/ppc/kernel/vmlinux.lds.S	2005-07-09 22:21:38.000000000 -0400
@@ -34,6 +34,7 @@
     SCHED_TEXT
     LOCK_TEXT
     *(.fixup)
+    *(.slow.text)
     *(.got1)
     __got2_start = .;
     *(.got2)
===================================================================
--- 2.6.13-rc2a.orig/arch/ppc64/kernel/vmlinux.lds.S	2004-09-13 20:23:12.000000000 -0400
+++ 2.6.13-rc2a/arch/ppc64/kernel/vmlinux.lds.S	2005-07-09 22:21:59.000000000 -0400
@@ -16,6 +16,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	. = ALIGN(4096);
 	_etext = .;
 	}
===================================================================
--- 2.6.13-rc2a.orig/arch/s390/kernel/vmlinux.lds.S	2004-09-03 19:55:27.000000000 -0400
+++ 2.6.13-rc2a/arch/s390/kernel/vmlinux.lds.S	2005-07-10 12:53:03.000000000 -0400
@@ -26,6 +26,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} = 0x0700
 
===================================================================
--- 2.6.13-rc2a.orig/arch/sh/kernel/vmlinux.lds.S	2004-09-03 19:55:27.000000000 -0400
+++ 2.6.13-rc2a/arch/sh/kernel/vmlinux.lds.S	2005-07-10 12:40:58.000000000 -0400
@@ -25,6 +25,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} = 0x0009
 
===================================================================
--- 2.6.13-rc2a.orig/arch/sh64/kernel/vmlinux.lds.S	2004-09-03 19:55:27.000000000 -0400
+++ 2.6.13-rc2a/arch/sh64/kernel/vmlinux.lds.S	2005-07-10 12:52:23.000000000 -0400
@@ -61,6 +61,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 #ifdef CONFIG_LITTLE_ENDIAN
 	} = 0x6ff0fff0
===================================================================
--- 2.6.13-rc2a.orig/arch/sparc/kernel/vmlinux.lds.S	2004-09-03 19:55:27.000000000 -0400
+++ 2.6.13-rc2a/arch/sparc/kernel/vmlinux.lds.S	2005-07-10 12:34:42.000000000 -0400
@@ -14,6 +14,7 @@
     *(.text)
     SCHED_TEXT
     LOCK_TEXT
+    *(.slow.text)
     *(.gnu.warning)
   } =0
   _etext = .;
===================================================================
--- 2.6.13-rc2a.orig/arch/sparc64/kernel/vmlinux.lds.S	2005-06-24 00:50:20.000000000 -0400
+++ 2.6.13-rc2a/arch/sparc64/kernel/vmlinux.lds.S	2005-07-10 12:39:20.000000000 -0400
@@ -17,6 +17,7 @@
     *(.text)
     SCHED_TEXT
     LOCK_TEXT
+    *(.slow.text)
     *(.gnu.warning)
   } =0
   _etext = .;
===================================================================
--- 2.6.13-rc2a.orig/arch/um/kernel/dyn.lds.S	2005-01-15 17:01:56.000000000 -0500
+++ 2.6.13-rc2a/arch/um/kernel/dyn.lds.S	2005-07-10 12:36:51.000000000 -0400
@@ -64,6 +64,7 @@
     SCHED_TEXT
     LOCK_TEXT
     *(.fixup)
+    *(.slow.text)
     *(.stub .text.* .gnu.linkonce.t.*)
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
===================================================================
--- 2.6.13-rc2a.orig/arch/um/kernel/uml.lds.S	2005-07-07 18:19:03.000000000 -0400
+++ 2.6.13-rc2a/arch/um/kernel/uml.lds.S	2005-07-10 12:37:14.000000000 -0400
@@ -36,6 +36,7 @@
     SCHED_TEXT
     LOCK_TEXT
     *(.fixup)
+    *(.slow.text)
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
     *(.gnu.linkonce.t*)
===================================================================
--- 2.6.13-rc2a.orig/arch/v850/kernel/vmlinux.lds.S	2004-11-02 09:40:41.000000000 -0500
+++ 2.6.13-rc2a/arch/v850/kernel/vmlinux.lds.S	2005-07-10 12:54:02.000000000 -0400
@@ -74,6 +74,7 @@
 			*(.exit.text)	/* 2.5 convention */		      \
 			*(.text.exit)	/* 2.4 convention */		      \
 			*(.text.lock)					      \
+			*(.slow.text)
 			*(.exitcall.exit)				      \
 		__real_etext = . ;	/* There may be data after here.  */  \
 		RODATA_CONTENTS						      \
===================================================================
--- 2.6.13-rc2a.orig/arch/x86_64/kernel/vmlinux.lds.S	2005-07-07 18:19:04.000000000 -0400
+++ 2.6.13-rc2a/arch/x86_64/kernel/vmlinux.lds.S	2005-07-09 22:22:26.000000000 -0400
@@ -22,6 +22,7 @@
 	SCHED_TEXT
 	LOCK_TEXT
 	*(.fixup)
+	*(.slow.text)
 	*(.gnu.warning)
 	} = 0x9090
   				/* out-of-line lock text */
===================================================================
--- 2.6.13-rc2a.orig/arch/xtensa/kernel/vmlinux.lds.S	2005-07-07 18:19:04.000000000 -0400
+++ 2.6.13-rc2a/arch/xtensa/kernel/vmlinux.lds.S	2005-07-10 12:54:53.000000000 -0400
@@ -88,6 +88,7 @@
     /* The .head.text section must be the first section! */
     *(.head.text)
     *(.literal .text)
+    *(.slow.text)
     *(.srom.text)
     VMLINUX_SYMBOL(__sched_text_start) = .;
     *(.sched.text.literal .sched.text)
__
Chuck

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-07-11  2:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-11  2:11 [patch 2.6.13-rc2] all archs: add "__slow" tag for slow code Chuck Ebbert

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®