Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

#!/bin/sh
#
# $NetBSD: swap2,v 1.8 2009/09/24 16:45:48 apb Exp $
#

# PROVIDE: nonlocalswap
# REQUIRE: mountcritremote
# BEFORE:  DAEMON

$_rc_subr_loaded . /etc/rc.subr

name="swap2"
start_cmd="swap2_start"

swap2_start()
{
	# "Critical" file systems are now mounted.  Go ahead and swap
	# to files now, since they will be residing in the critical file
	# systems (or, at least, they should be...).
	#
	# Treat exit status 2 from swapctl(8) as successful; it means
	# "no error, but no suitable swap devices were configured".
	#
	# Check for no swap, and warn about it unless that is desired.
	#
	local es
	swapctl -A -t noblk
	es=$?
	[ $es = 2 ] && es=0
	if ! checkyesno no_swap; then
		if swapctl -s | grep "no swap devices configured" > /dev/null;
		then
			warn "No swap space configured!"
			es=1
		fi
	fi
	return $es
}

#		Remove all non-block-type swap devices
#
stop_cmd="swapctl -U -t noblk || [ $? = 2 ]"

load_rc_config swap
run_rc_command "$1"