* [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®