summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2006-04-10 10:03:41 +0000
committerpjd <pjd@FreeBSD.org>2006-04-10 10:03:41 +0000
commitca3f23ca3477d7ab916b941037bef1d1928d7804 (patch)
tree63adcc7b220823bdd9c62930b3dd51534108f89f /sys/kern
parent059a4b89f63cf9f6d10ed28f0a3ea3e79134f457 (diff)
downloadFreeBSD-src-ca3f23ca3477d7ab916b941037bef1d1928d7804.zip
FreeBSD-src-ca3f23ca3477d7ab916b941037bef1d1928d7804.tar.gz
On shutdown try to turn off all swap devices. This way GEOM providers are
properly closed on shutdown. Requested by: ru Reviewed by: alc MFC after: 2 weeks
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/kern_shutdown.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/kern/kern_shutdown.c b/sys/kern/kern_shutdown.c
index da7abbc..3b62ba2 100644
--- a/sys/kern/kern_shutdown.c
+++ b/sys/kern/kern_shutdown.c
@@ -68,6 +68,12 @@ __FBSDID("$FreeBSD$");
#include <machine/pcb.h>
#include <machine/smp.h>
+#include <vm/vm.h>
+#include <vm/vm_object.h>
+#include <vm/vm_page.h>
+#include <vm/vm_pager.h>
+#include <vm/swap_pager.h>
+
#include <sys/signalvar.h>
#ifndef PANIC_REBOOT_WAIT_TIME
@@ -384,6 +390,7 @@ boot(int howto)
if (panicstr == 0)
vfs_unmountall();
}
+ swapoff_all();
DELAY(100000); /* wait for console output to finish */
}
OpenPOWER on IntegriCloud