Re: [BUG report] UML linux-2.6 latest BK doesn't compile

Jeff Dike
2005-02-08T16:30:04Z

aia21@cam.ac.uk said:
> arch/um/kernel/exec_kern.c:59: undefined reference to `__bb_init_func'

The __bb_init_func export is to allow modules to be built with a gcov-enabled
UML. I get a bunch of undefines in the module links when I get rid of it.

This is probably being too intimate with libc, and yours probably doesn't have
__bb_init_func.

Try the patch below and see if it helps. Modules won't work, but you should
get a working UML.

Jeff
Index: 2.6.10/arch/um/kernel/Makefile
===================================================================
--- 2.6.10.orig/arch/um/kernel/Makefile 2005-02-07 12:45:56.000000000 -0500
+++ 2.6.10/arch/um/kernel/Makefile 2005-02-08 10:23:31.000000000 -0500
@@ -15,7 +15,6 @@

obj-$(CONFIG_BLK_DEV_INITRD) += initrd.o
obj-$(CONFIG_GPROF) += gprof_syms.o
-obj-$(CONFIG_GCOV) += gmon_syms.o
obj-$(CONFIG_TTY_LOG) += tty_log.o
obj-$(CONFIG_SYSCALL_DEBUG) += syscall_user.o

Index: 2.6.10/arch/um/kernel/gmon_syms.c
===================================================================
--- 2.6.10.orig/arch/um/kernel/gmon_syms.c 2004-12-24 16:35:39.000000000 -0500
+++ 2.6.10/arch/um/kernel/gmon_syms.c 2003-09-15 09:40:47.000000000 -0400
@@ -1,20 +0,0 @@
-/*
- * Copyright (C) 2001, 2002 Jeff Dike (jdike@karaya.com)
- * Licensed under the GPL
- */
-
-#include "linux/module.h"
-
-extern void __bb_init_func(void *);
-EXPORT_SYMBOL(__bb_init_func);
-
-/*
- * Overrides for Emacs so that we follow Linus's tabbing style.
- * Emacs will notice this stuff at the end of the file and automatically
- * adjust the settings for this buffer only. This must remain at the end
- * of the file.
- * ---------------------------------------------------------------------------
- * Local variables:
- * c-file-style: "linux"
- * End:
- */