Hi!
The attached patch puts the following functions into the .text.init
section.
mcheck_init
called by init_intel (initfunc)
init_irq_proc
called by sysctl_init (initfunc)
(already done for ARM, should be done for other archs, too)
start_context_thread
called by do_basic_setup (initfunc)
init_timervecs
called by sched_init (initfunc)
Patch is against 2.4.4pre1, to be included in the ac-series and in the
standard kernel.
Regards,
Matze
--
Matthias Hanisch mailto:[EMAIL PROTECTED] phone: +49 8137 935-219
diff -ru linux-vanilla/arch/i386/kernel/bluesmoke.c linux/arch/i386/kernel/bluesmoke.c
--- linux-vanilla/arch/i386/kernel/bluesmoke.c Sun Mar 25 11:10:39 2001
+++ linux/arch/i386/kernel/bluesmoke.c Mon Apr 9 22:22:20 2001
@@ -5,6 +5,7 @@
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/sched.h>
+#include <linux/init.h>
#include <asm/processor.h>
#include <asm/msr.h>
@@ -66,7 +67,7 @@
* This has to be run for each processor
*/
-void mcheck_init(struct cpuinfo_x86 *c)
+void __init mcheck_init(struct cpuinfo_x86 *c)
{
u32 l, h;
int i;
diff -ru linux-vanilla/arch/i386/kernel/irq.c linux/arch/i386/kernel/irq.c
--- linux-vanilla/arch/i386/kernel/irq.c Sun Mar 25 11:20:57 2001
+++ linux/arch/i386/kernel/irq.c Sun Apr 8 09:43:49 2001
@@ -1147,7 +1147,7 @@
unsigned long prof_cpu_mask = -1;
-void init_irq_proc (void)
+void __init init_irq_proc (void)
{
struct proc_dir_entry *entry;
int i;
diff -ru linux-vanilla/kernel/context.c linux/kernel/context.c
--- linux-vanilla/kernel/context.c Sun Mar 25 11:19:01 2001
+++ linux/kernel/context.c Mon Apr 9 08:17:33 2001
@@ -146,7 +146,7 @@
remove_wait_queue(&context_task_done, &wait);
}
-int start_context_thread(void)
+int __init start_context_thread(void)
{
kernel_thread(context_thread, NULL, CLONE_FS | CLONE_FILES);
return 0;
diff -ru linux-vanilla/kernel/timer.c linux/kernel/timer.c
--- linux-vanilla/kernel/timer.c Thu Dec 28 21:39:51 2000
+++ linux/kernel/timer.c Mon Apr 9 22:22:21 2001
@@ -22,6 +22,7 @@
#include <linux/smp_lock.h>
#include <linux/interrupt.h>
#include <linux/kernel_stat.h>
+#include <linux/init.h>
#include <asm/uaccess.h>
@@ -103,7 +104,7 @@
#define NOOF_TVECS (sizeof(tvecs) / sizeof(tvecs[0]))
-void init_timervecs (void)
+void __init init_timervecs (void)
{
int i;