patch-1.3.98 linux/kernel/sys.c

Next file: linux/mm/filemap.c
Previous file: linux/include/scsi/sg.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.97/linux/kernel/sys.c linux/kernel/sys.c
@@ -4,6 +4,7 @@
  *  Copyright (C) 1991, 1992  Linus Torvalds
  */
 
+#include <linux/config.h>
 #include <linux/errno.h>
 #include <linux/sched.h>
 #include <linux/kernel.h>
@@ -22,6 +23,9 @@
 #include <linux/fcntl.h>
 #include <linux/acct.h>
 #include <linux/tty.h>
+#if defined(CONFIG_APM) && defined(CONFIG_APM_POWER_OFF)
+#include <linux/apm_bios.h>
+#endif
 
 #include <asm/segment.h>
 #include <asm/io.h>
@@ -193,6 +197,9 @@
 	else if (flag == 0xCDEF0123) {
 		printk(KERN_EMERG "System halted\n");
 		sys_kill(-1, SIGKILL);
+#if defined(CONFIG_APM) && defined(CONFIG_APM_POWER_OFF)
+		apm_set_power_state(APM_STATE_OFF);
+#endif
 		do_exit(0);
 	} else
 		return -EINVAL;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov with Sam's (original) version
of this