Date: Thu, 24 Oct 1996 19:53:51 +1000 From: Bruce Evans <bde@zeta.org.au> To: bde@freebsd.org, current@freebsd.org, julian@whistle.com Subject: Re: Can't compile profiled kernel Message-ID: <199610240953.TAA06113@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>some time in the last 2 weeks or so, the following broke..... > >loading kernel >../../libkern/mcount.c:94: Undefined symbol `_read_eflags' referenced >from text segment >../../libkern/mcount.c:94: Undefined symbol `_disable_intr' referenced >from text segment >../../libkern/mcount.c:253: Undefined symbol `_write_eflags' referenced >from text segment >*** Error code 1 > >Stop. > >where do these come from? These are inline functions defined in <machine/cpufunc.h>. <machine/cpufunc.h> is included by <sys/systm.h>. I removed the include of <sys/systm.h> in mcount.c because it is unused. It is only unused in the !GUPROF case. Oops. (There are some macros which expand to read_eflags() etc. in the !GUPROF case but the GUPROF case requires assembler stubs which have to disable interrupts, so the C code doesn't need to disable interrupts again.) This is easy to fix by including <sys/systm.h> again or using option GUPROF (config with -pp). I think someone wants you to test GUPROF :-). Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199610240953.TAA06113>