From: Jeff Dike Fixes the "profiling timer expired" message on shutting down with profiling enabled. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton --- 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) _