From 34714bf34e5928479e5ec4367e5e79902876dfa3 Mon Sep 17 00:00:00 2001 From: Tom Gundersen Date: Sat, 29 Oct 2011 17:26:26 +0200 Subject: swapoff: umount swap-backed fs before switching off swap Factor out umounting. Explicitly skip umounting API directories, rather than matching on fs type. This allows us to e.g. unmount all tmpfs but leaving /run and /dev/shm alone. v3: fixed some regressions in v2, made 'API filesystems' less general v2: new umount_all implementation based on proposal by Dave and input from Anthony. Also, ignore ramfs as it is not backed by swap. Cc: Dave Reisner Cc: C Anthony Risinger Signed-off-by: Tom Gundersen --- rc.shutdown | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'rc.shutdown') diff --git a/rc.shutdown b/rc.shutdown index 1946068..86ff799 100755 --- a/rc.shutdown +++ b/rc.shutdown @@ -50,16 +50,15 @@ kill_all run_hook shutdown_postkillall -# TODO: unmount any non-api partitions that are backed by swap, we don't want to -# move their contents into memory (waste of time and might caues OOM). +# unmount any non-api partitions that are backed by swap, we don't want to +# move their contents into memory (waste of time and might caues OOM). +status "Unmounting Swap-backed Filesystems" umount_all "tmpfs" # almost everything is dead now, so the swap should hopefully be relatively # empty, and quick to switch off status "Deactivating Swap" swapoff -a -# if we don't have devtmpfs support, /dev is mounted as tmpfs, so don't unmount it -status "Unmounting Filesystems" \ - umount -a -r -t nodevtmpfs,notmpfs,nosysfs,noproc,nodevpts -O no_netdev +status "Unmounting Non-API Filesystems" umount_all run_hook shutdown_postumount -- cgit v1.2.3-54-g00ecf