[PATCH] UML - finish the signals across a reboot fix

From: Jeff Dike
Date: Tue Sep 14 2004 - 01:32:14 EST


Due to me not refreshing this patch earlier, the last reboot signals patch was
missing the actual fix.

Signed-off-by: Jeff Dike <jdike@xxxxxxxxxxx>

Index: 2.6.9-rc2/arch/um/kernel/main.c
===================================================================
--- 2.6.9-rc2.orig/arch/um/kernel/main.c 2004-09-14 02:03:52.000000000 -0400
+++ 2.6.9-rc2/arch/um/kernel/main.c 2004-09-14 02:03:59.000000000 -0400
@@ -149,7 +149,21 @@

/* Reboot */
if(ret){
+ int err;
+
printf("\n");
+
+ /* Let any pending signals fire, then disable them. This
+ * ensures that they won't be delivered after the exec, when
+ * they are definitely not expected.
+ */
+ unblock_signals();
+ disable_timer();
+ err = deactivate_all_fds();
+ if(err)
+ printf("deactivate_all_fds failed, errno = %d\n",
+ -err);
+
execvp(new_argv[0], new_argv);
perror("Failed to exec kernel");
ret = 1;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/