ibm,suspend-me RTAS Call
The
ibm,suspend-me RTAS call provides the calling OS the
ability to suspend processing. Suspension of processing is required as
part of OS hibernation or migration to another platform. This RTAS call
is made by the last active processor thread of a partition. The OS uses
the H_JOIN hcall() (see
) to deactivate other
processing threads. Processing treads may exit H_JOIN due to an
unmaskable interrupt; if a thread has exited H_JOIN,
ibm,suspend-me fails with a status of “multiple
processor threads active”. The wake up from suspension is triggered
by partition state change (see
and
). The
ibm,suspend-me RTAS call returns only on the calling
virtual processor. Other virtual processors that were inactive when
ibm,suspend-me was called remain so until they are
proded by the OS.
While the logical configuration of a suspended partition remains
static, the physical properties may change; the OS may wish to issue
ibm,update-nodes (see
) to determine if any device
tree nodes changed, and then refresh its view of the device
tree physical properties using
ibm,update-properties (see
) and/or
ibm,configure-connector (see
). Also during suspension, some
system parameters may have changed. See
, for details. The OS may want
to re-scan selected system parameters.
R1--1.
For the Partition Suspension option: The platform
must implement the Logical Partitioning option (see
)
.
R1--2.
For the Partition Suspension option: RTAS must
implement the
ibm,suspend-me call within a logical partition using
the argument call buffer defined by
.
ibm,suspend-me Argument Call Buffer
Parameter Type
Name
Values
In
Token
Token for
ibm,suspend-me
Number Inputs
0
Number Outputs
1
Out
Status
9000: Suspension Aborted
0: Success -- expected return on function resume
-1: Hardware Error
-9004: Partition not suspendable
-9005: Multiple processor threads active
-9006: Outstanding COP Operations
R1--3.
For the Partition Suspension option: The
ibm,suspend-me RTAS call must determine that the
calling partition is in the “suspendable state”, else return
a status of -9004 “Partition not suspendable”.
R1--4.
For the Partition Suspension option: The
ibm,suspend-me RTAS call must determine that the
calling partition has no other active processor thread, else return a
status of -9005 “Multiple processor threads active”.
R1--5.
For the Partition Suspension option: The platform
must implement the Thread Join option (see
).
R1--6.
For the Partition Suspension option: The platform
must restore all partition state as of the time of the call to
ibm,suspend-me prior to returning from the
ibm,suspend-me RTAS call, except for the values of
those Open Firmware Device tree properties as reported using the Update
OF Tree option, and the system parameters given in
.
R1--7.
For the Partition Suspension option: The platform
must be prepared to respond to OS requests for updated device tree
information immediately after returning from the
ibm,suspend-me RTAS call.
R1--8.
For the Partition Suspension option: The platform
must support the “update OF tree” option.
R1--9.
For the Partition Suspension option: The platform
must support the “Partner partition suspended” CRQ Transport
Event (See
).
R1--10.
For the Partition Suspension option: The
ibm,suspend-me RTAS call must cause the platform to
deliver “Partner partition suspended” CRQ Transport Events to
both CRQs of all CRQ connections associated with the partition calling
ibm,suspend-me.
Note: The transport events are visible to the partition calling
ibm,suspend-me after the subsequent resume from
suspension, while the transport events are immediately visible to the
partner partitions of the caller at the time of the suspend.
R1--11.
For the Partition Suspension option: The
ibm,suspend-me RTAS call must cause the platform to
set the state of all of the caller’s CRQs to disabled.
R1--12.
For the Partition Suspension option: The platform
must implement the H_ENABLE_CRQ hcall() using the syntax and semantics
described in
.
R1--13.
For platforms that implement the Partition Suspension and VSCSI
options: The
“compatible” property of the
platform’s
v-scsi and
v-scsi-host nodes must include
“IBM,v-scsi-2” and
“IBM,v-scsi-host-2” respectively
indicating the platform supports the “Partner partition
suspended” CRQ Transport Event.
R1--14.
For the Partition Suspension option: If the OS is
participating in OS surveillance, to avoid a surveillance time out, the
OS must disable surveillance (see
) prior to calling
ibm,suspend-me.
R1--15.
For the Partition Suspension option: The platform
must implement the LRDR option (See
).
R1--16.
For the Partition Suspension option: The logical
configuration of a partition, including its view of the
rtas-display-device, and rtas tone facility must not
change while a partition is suspended.
R1--17.
For the Partition Suspension option: The platform
must not change the support for a system parameter during
suspension.
NOTE: If RTAS returns a status of -3 (System
parameter not supported) prior to suspension, it returns a Status of -3
for accesses to that same system parameter after suspension. Similarly if
RTAS does not return a Status of -3 prior to suspension for a given
system parameter, it does not do so after suspension.
R1--18.
For the Partition Suspension option: The platform
must limit the system parameters that change values during suspension to
those specified in
(all system parameters not
specified are preserved).
R1--19.
For the Partition Suspension option: The platform
must preserve up to the first 32 SLB entries for each partition processor
during the suspension. Other SLB entries are subject to loss.
R1--20.
For the Partition Suspension option with the Platform
Facilities Option: The
ibm,suspend-me RTAS call must determine that the
calling partition has no outstanding coprocessor operations else return a
status of -9005 “Outstanding COP Operations”.
System Parameters that May Change During Partition
Migration and Hibernation
System Parameter Token
Name
0-15
HMC
18-19
Legacy processor CoD
20
SPLPAR characteristics
Only specified SPLPAR keywords may change value
DesiredEntitledCapacity
DesiredMemory
DesiredNumberOfProcessors
DesiredVariableCapacityWeight
DispatchWheelRotationPeriod
MinimumEntitledCapacityPerVP
Platform prevents migration where current Entitled
Capacity/VCPU ratio would be below the target's minimum.
MaximumPlatformProcessors
22
platform_auto_power_restart
23
sp-remote-pon
24
sp-rb4-pon
25
sp-snoop-str
30
sp-call-home
31
sp-current-flash-image
33
epow3-quiesce-time
34
memory-preservation-boot-time
35
SCSI initiator identifier
36
AIX support
The keyword “support” may not change to the
value “no” for an AIX client.
37
enhanced processor CoD
38
enhanced memory CoD
39
CoD Options
41
firmware boot options
43
processor module information