MSOP_OFFLINE_SELF(D2psm)
MSOP_OFFLINE_SELF --
bring a CPU offline
Synopsis
void pfxoffline_self(void)
Description
MSOP_OFFLINE_SELF is called on a
CPU that is being brought offline. All operating-specific offline
processing must have been completed already. The CPU no longer
handles interrupts. It may either spin while waiting to be brought back online,
or it may be shut down completely.
This function never returns. When
MSOP_START_CPU(D2psm)
is subsequently called for this CPU, the CPU should be
started by the normal online sequence.
Interrupts are disabled on the CPU when
MSOP_OFFLINE_PREP(D2psm)
is called.
At any time after MSOP_OFFLINE_SELF has been called, MSOP_START_CPU
may occur on another CPU with this CPU as its target.
The PSM cannot depend on completing any of its MSOP_OFFLINE_SELF
sequence before this happens.
Once MSOP_OFFLINE_SELF has been called, no further MSOPs or
delivery functions will be called on this CPU until it is brought back
online and re-initialized with MSOP_INIT_CPU.
The operating system must guarantee that no bound interrupts (those that
do not have msi_cpu_dist set to MS_CPU_ANY) will be
attached to this CPU at the time of the call to MSOP_OFFLINE_SELF.
See
MSOP_INTR_ATTACH(D2psm)
for details.
NOTE:
The operating system will generally keep a CPU online from the
PSM's point of view as long as there is work that must be handled
by the CPU, even if the CPU is not made available for
general job processing. Such work might include interrupt handling and
hardware device drivers for devices only accessible from a particular CPU,
single threaded drivers bound to a particular CPU for serialization,
and kernel daemon threads that need to run on specific CPU groups.
In the case of work specific to a CPU group, but not to a
particular CPU, the operating system could let the work float among
the various CPUs in the group until there is only one left online. It
would then keep this CPU online to handle the CPU group's
work.
Arguments
None.
Return values
None.
Usage
Hardware applicability
All.
Version applicability
psm:
2
References
MSOP_START_CPU(D2psm),
MSOP_OFFLINE_PREP(D2psm)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - 19 June 2005