From: Jeff Dike <jdike@addtoit.com>

Fixes the "profiling timer expired" message on shutting down with profiling
enabled.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/um/kernel/main.c |    8 ++++++++
 1 files changed, 8 insertions(+)

diff -puN arch/um/kernel/main.c~uml-eliminate-unhandled-sigprof-on-halt arch/um/kernel/main.c
--- 25/arch/um/kernel/main.c~uml-eliminate-unhandled-sigprof-on-halt	2005-01-16 23:27:56.449070072 -0800
+++ 25-akpm/arch/um/kernel/main.c	2005-01-16 23:27:56.452069616 -0800
@@ -154,13 +154,21 @@ int main(int argc, char **argv, char **e
 	do_uml_initcalls();
 	ret = linux_main(argc, argv);
 
+	/* Disable SIGPROF - I have no idea why libc doesn't do this or turn
+	 * off the profiling time, but UML dies with a SIGPROF just before
+	 * exiting when profiling is active.
+	 */
+	change_sig(SIGPROF, 0);
+
 	/* Reboot */
 	if(ret){
 		int err;
 
 		printf("\n");
+
 		/* stop timers and set SIG*ALRM to be ignored */
 		disable_timer();
+
 		/* disable SIGIO for the fds and set SIGIO to be ignored */
 		err = deactivate_all_fds();
 		if(err)
_