CPR(4) Device and Network Interfaces CPR(4)

NAME


cpr - Suspend and resume module

SYNOPSIS


/platform/i86pc/kernel/misc/amd64/cpr
/platform/sun4u/kernel/misc/sparcv9/cpr

DESCRIPTION


The cpr module is a loadable module used to suspend and resume the entire
system. You may wish to suspend a system to save power or to power off
temporarily for transport. The cpr module should not be used in place of a
normal shutdown when performing any hardware reconfiguration or
replacement. In order for the resume operation to succeed, it is important
that the hardware configuration remain the same. When the system is
suspended, the entire system state is preserved in non-volatile storage
until a resume operation is conducted.

pmconfig(8) and power.conf(5) are used to configure the suspend-resume
feature.

The speed of suspend and resume operations can range from 15 seconds to
several minutes, depending on the system speed, memory size, and load.

During resume operation, the SIGTHAW signal is sent to all processes to
allow them to do any special processing in response to suspend-resume
operation. Normally applications are not required to do any special
processing because of suspend-resume, but some specialized processes can
use SIGTHAW to restore the state prior to suspend. For example, X can
refresh the screen in response to SIGTHAW.

In some cases the cpr module may be unable to perform the suspend
operation. If a system contains additional devices outside the standard
shipped configuration, it is possible that device drivers for these
additional devices might not support suspend-resume operations. In this
case, the suspend fails and an error message is displayed. These devices
must be removed or their device drivers unloaded for the suspend operation
to succeed. Contact the device manufacturer to obtain a new version of
device driver that supports suspend-resume.

A suspend may also fail when devices or processes are performing critical
or time-sensitive operations (such as realtime operations). The system
will remain in its current running state. Messages reporting the failure
will be displayed on the console and status returned to the caller. Once
the system is successfully suspended the resume operation will succeed,
barring external influences such as a hardware reconfiguration.

Some network-based applications may fail across a suspend and resume cycle.
This largely depends on the underlying network protocol and the
applications involved. In general, applications that retry and
automatically reestablish connections will continue to operate
transparently on a resume operation; those applications that do not will
likely fail.

INTERFACE STABILITY


Unstable

SEE ALSO


uadmin(2), power.conf(5), attributes(7), pmconfig(8), uadmin(8)

Writing Device Drivers

NOTES


Certain device operations such as tape and floppy disk activities are not
resumable due to the nature of removable media. These activities are
detected at suspend time, and must be stopped before the suspend operation
will complete successfully.

Suspend-resume is currently supported only on a limited set of hardware
platforms.

illumos January 12, 2020 illumos