Sun Microsystems Logo
Products and Services
 
Support and Training
 
 

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z  
 
System Administrationrcfgadm(1m)


NAME

 rcfgadm - remote configuration administration

SYNOPSIS

 rcfgadm -d domain_indicator [-f] [-y|-n] [-v ] [-o hardware_options] -c function [-r retry_count [-T timeout] ] ap_id ...
 rcfgadm -d domain_indicator [-f] [-y|-n] [-v ] [-o hardware_options] -x hardware_function ap_id ...
 rcfgadm -d domain_indicator [-v ] [-a ] [-s listing_options] [-o hardware_options] [-l [ap_id|ap_type ...] ]
 rcfgadm -d domain_indicator [-v ] [-o hardware_options] -t ap_id ...
 rcfgadm -d domain_indicator [-v ] [-o hardware_options] -h [ap_id|ap_type]

DESCRIPTION

 

rcfgadm(1M) provides remote configuration administration operations on dynamically reconfigurable hardware resources. The rcfgadm command allows configuration administration operations on the specified domain from the system controller. These operations include displaying status (-l), initiating testing (-t), invoking configuration state changes (-c), invoking hardware specific functions (-x), and obtaining configuration administration help messages (-h).

rcfgadm performs configuration administration at attachment points, which are places where system software supports dynamic reconfiguration of hardware resources during continued operation of Solaris software.

Configuration administration distinguishes between hardware resources that are physically present in the machine and hardware resources that are configured and visible to the Solaris environment. The nature of configuration administration functions are hardware-specific and rcfgadm performs configuration by calling hardware-specific libraries.

Configuration administration operates on an attachment point. Hardware resources located at attachment points might or might not be physically replaceable during system operation but are dynamically reconfigurable by way of the configuration administration interfaces.

An attachment point defines two unique elements, which are distinct from the hardware resources that exist beyond the attachment point. The two elements of an attachment point are a receptacle and an occupant. Physical insertion or removal of hardware resources occurs at an attachment point and results in a receptacle gaining or losing an occupant. Configuration administration supports the physical insertion and removal operations, as well as other configuration administration functions at an attachment point.

Attachment points have associated state and condition information. The configuration administration interfaces provide control for transitioning attachment point states. A receptacle can exist in one of three states: empty, disconnected, or connected. An occupant can exist in one of two states: configured or unconfigured.

A receptacle can provide the empty state, which is the normal state of a receptacle when the attachment point has no occupants. A receptacle can also provide the disconnected state if it has the capability of isolating its occupants from normal system access. Typically this state is used for various hardware-specific testing prior to bringing the occupant's resources into full use by the system, or as a step in preparing an occupant for physical removal or reconfiguration. A receptacle in the disconnected state isolates its occupant from the system as much as its hardware allows, but can provide access for testing and setup. A receptacle must provide the connected state, which allows normal access to hardware resources contained on any occupants. The connected state is the normal state of a receptacle that contains an occupant and that is not currently undergoing configuration administration operations.

The hardware resources contained on an occupant in the unconfigured state are not represented by normal Solaris software data structures and are thus not available for use by the Solaris operating environment. Operations allowed on an unconfigured occupant are limited to configuration administration operations. The hardware resources of an occupant in the configured state are represented by normal Solaris software data structures, and thus some or all of those hardware resources can be in use by the Solaris operating environment. All occupants provide both the configured and unconfigured states.

An attachment point can be in one of five conditions: unknown, ok, failing, failed, or unusable. An attachment point can enter the system in any condition, depending upon results of power-on tests and nonvolatile record keeping.

An attachment point with an occupant in the configured state is in one of four conditions: unknown, ok, failing, or failed. If the condition is not failing or failed, an attachment point can change to failing during the course of operation if a hardware-dependent recoverable error threshold is exceeded. If the condition is not failed, an attachment point can change to failed during operation as a result of an unrecoverable error.

An attachment point with an occupant in the unconfigured state can be in any of the defined conditions. The condition of an attachment point with an unconfigured occupant can decay from ok to unknown after a system-dependent time threshold. Initiating a test function changes the attachment point condition to ok, failing, or failed, depending on the outcome of the test. An attachment point that does not provide a test function can leave the attachment point in the unknown condition. If a test is interrupted, the attachment point condition can be set to the previous condition, to unknown, or to failed. An attachment point in the unknown, ok, failing, or failed conditions can be retested.

An attachment point can exist in the unusable condition for a variety of reasons, such as inadequate power or cooling for the receptacle, an occupant that is unidentifiable, unsupported, incorrectly configured, and so on. An attachment point in the unusable condition can never be used by the system. It typically remains in this condition until the physical cause is remedied.

An attachment point also maintains busy information that indicates when a state change is in progress or the condition is being reevaluated.

Designate attachment points using hardware-specific identifiers (ap_ids) that are related to the type and location of the attachment points in the system device hierarchy. An ap_id cannot be ambiguous; it must identify a single attachment point. Two types of ap_id specifications are supported: physical and logical.

A physical ap_id contains a fully specified path name, while a logical ap_id contains a shorthand notation that identifies an attachment point in a more user-friendly way.

For example, an attachment point representing system board 6 would have a physical ap_id of /devices/pseudo/dr@0:SB6, while the logical ap_id would be SB6.

Attachment points can also be created dynamically. A dynamic attachment point is named relative to a base attachment point that is present in the system. ap_ids for dynamic attachment points consist of a base component followed by two colons (::) and a dynamic component. The base component is the base attachment point ap_id. The dynamic component is hardware-specific and is generated by the corresponding hardware-specific library.

For example, consider a base attachment point, which represents a system board, with the physical ap_id /devices/pseudo/dr@0:SB16 and logical ap_id SB16.

A CPU attached to this system board could be represented by a dynamic attachment point with logical ap_id SB16::cpu2, where SB16 is the base component and cpu2 is the hardware-specific dynamic component. Similarly, the physical ap_id for this dynamic attachment point would be:

/devices/pseudo/dr@0:SB16::cpu2.

An ap_type is a partial form of a logical ap_id that can be ambiguous and not specify a particular attachment point. An ap_type is a substring of the portion of the logical ap_id, up to but not including, the colon (:) separator. For example, an ap_type of pci would show all attachment points whose logical ap_ids begin with pci.

The use of ap_types is discouraged. The new select suboption to the -s option provides a more general and flexible mechanism for selecting attachment points. See OPTIONS.

rcfgadm interacts primarily with hardware-dependent functions contained in hardware-specific libraries, and thus its behavior is hardware-dependent.

For each configuration administration operation, a service interruption can be required. If the requested operation requires a noticeable service interruption to interactive users, confirmation is requested before the operation is started.

A prompt is displayed on the standard error output for confirmation on the standard input. Confirmation can be overridden with the -y or -n option to always answer yes or no, respectively. Hardware-specific options, such as test level, are supplied as suboptions using the -o option.

Operations that change the state of the system configuration are audited by the system log daemon syslogd(1M).

The arguments for this command conform to the getopt(3C) and getsubopt(3C) syntax conventions.

Refer to the Sun Fire 15K/12K Dynamic Reconfiguration User Guide for more information.

OPTIONS

 

The following options are supported.

Note – If the rcfgadm command fails, a board does not return to its original state. A dxs or dca error message is logged to the domain. If the error is recoverable, you can retry the command. If it is unrecoverable, you need to reboot the domain in order to use that board.
-a
Specifies that the -l option must also list dynamic attachment points.
-c function
Performs the state change function on the attachment point specified by ap_id.

Specify function as disconnect, connect, configure, or unconfigure. These functions cause state transitions at the attachment point by calling hardware-specific library routines.

The possible transition states and their meanings are as follows:
  • disconnect

    Change the receptacle state to disconnected.

    If the occupant state is configured, the disconnect function first attempts to unconfigure the occupant. The disconnect function powers the board off by default. The board is ready to be removed from the slot at that point. The -o nopoweroff option specifies skipping the power off step, leaving the board powered on. The board is left assigned to the domain by default. The -o unassign option instructs the domain to give up the ownership of the board once the board is disconnected. Once the board has been unassigned, it may no longer be accessible to cfgadm because another domain might have assigned the board to itself.

  • connect

    Performs hardware-specific operations to put the receptacle into the connected state, which allows an occupant to operate normally through the receptacle.

  • configure

    Performs hardware-specific operations that allow an occupant's hardware resources to be used by Solaris software. Occupants that are configured are part of the system configuration and are available for manipulation by Solaris software device manipulation maintenance commands (for example, psradm(1M), mount(1M), and ifconfig(1M)).

  • unconfigure

    Performs hardware-specific operations that logically remove an occupant's hardware resources from the system. The occupant must currently be configured, and its hardware resources must not be in use by the Solaris operating environment.

State transition functions can fail due to the condition of the attachment point or other hardware-dependent considerations. All state change functions in the direction of adding resources (connect and configure) are passed on to the hardware-specific library when the attachment point is in the ok or unknown condition. All other conditions require the use of the force (-f) option to allow these functions to be passed on to the hardware-specific library. Attachment point condition does not prevent a hardware-specific library being called for the removal (disconnect and unconfigure) of hardware resources from the system. Hardware-specific libraries can reject state change functions if the attachment point is in the unknown condition.

The condition of an attachment point is not necessarily changed by the state change functions; however, errors during state change operations can change the attachment point condition. Specify the force option (-f) to override a condition and force a state change that would otherwise fail. Hardware-specific safety and integrity checks can prevent the force option from having any effect.

-d domain_indicator
Specifies the domain using one of the following:

domain_id - ID for a domain. Valid domain_ids are A-R and are not case sensitive.

domain_tag - Name assigned to a domain using addtag(1M).

-f
Forces the specified action to occur. Typically, this is a hardware-dependent override of a safety feature. Forcing a state change operation can allow use of the hardware resources of an occupant that is not in the ok or unknown condition, at the discretion of any hardware-dependent safety checks.
-h [ap_id|ap_type]
Prints the help message text. If ap_id or ap_type is specified, the help routine of the hardware-specific library for the attachment point indicated by the argument is called.
-l [ap_id|ap_type]
Lists the state and condition of attachment points specified. Filter attachment points with the -s option and select suboption. Invoking rcfgadm without one of the action options is equivalent to -l without an argument. The format of the list display is controlled by the -v and -s options. When the -a option is specified, attachment points are dynamically expanded.
-n
Automatically answers no to all prompts.
-o hardware_options
Supplies hardware-specific options to the main command option.

The following are valid hardware_options:

  • parsable

    Applies only when the -s option is used. The parsable suboption specifies that info is returned for system board and IO assembly only.

  • unassign

    Applies only when the -c disconnect option is used. The unassign suboption specifies that the domain is to give up ownership of the board.

  • nopoweroff

    Applies only when the -c disconnect option is used. The nopoweroff suboption specifies that the board is not to be powered off after it is disconnected.

-r retry_count
Specifies the number of times the dynamic reconfiguration (DR) request is retried on the domain. The default is zero.
-s listing_options
Supplies listing options to the list (-l) command. listing_options conforms to the getsubopt(3C) syntax convention. The suboptions are used to specify the attachment point selection criteria (select=select_string), the type of matching desired (match=match_type), the order of listing (sort=field_spec), the data that is displayed (cols=field_spec and cols2=field_spec), the column delimiter (delim=string), and whether to suppress column headings (noheadings).
When the select suboption is specified, only attachment points that match the specified criteria are listed. The select suboption has the following syntax:

rcfgadm -s select=attr1(value1):attr2(value2)...

where an attr is one of ap_id, class, or type. ap_id refers to the logical ap_id field, class refers to attachment point class, and type refers to the type field. value1, value2, and so on are the corresponding values to be matched. The type of match can be specified by the match suboption as follows:

rcfgadm -s match=match_type,select=attr1(value1)...

where match_type can be either exact or partial. The default value is exact.

Suboptions can contain special characters that can be interpreted in ways other than as part of rcfgadm suboptions. For example, a command might contain parentheses, which are acceptable for suboptions but are interpreted as special characters when entered on the command line. Arguments to the select suboption can be quoted to protect them from the UNIX C shell interpretation.

A field_spec is one or more data-fields concatenated with the use of a colon (:), as in data-field:data-field:data-field. A data-field is comprised of ap_id, physid, r_state, o_state, condition, type, busy, status_time, status_time_p and info. The ap_id field output is the logical name for the attachment point, while the physid field contains the physical name. The r_state field can be empty, disconnected, or connected. The o_state field can be configured or unconfigured. The busy field can be either y if the attachment point is busy, or n if it is not. The type and info fields are hardware-specific. The status_time_p field is a parsable version of the status_time field. If an attachment point has an associated class, the class field lists the class name.

The order of the fields in field_spec is significant. For the sort suboption, the first field given is the primary sort key. For the cols and cols2 suboptions, the fields are printed in the order requested. Reverse the order of sorting on a data-field by placing a minus (-) before the data-field name within the field_spec for the sort suboption. The default value for sort is ap_id. The default values for cols and cols2 depend on whether the -v option is given. Without it, cols is ap_id:r_state:o_state:condition and cols2 is not set; with -v, cols is ap_id:r_state:o_state:condition:info and cols2 is status_time:type:busy:physid.

The default value for delim is a single space. The value of delim can be a string of arbitrary length. The delimiter cannot include a comma (,) character; see getsubopt(3C). These listing options can be used to create parsable output.

-T timeout
Specifies the time interval, in seconds, between retries. This option cannot be used alone and must be specified with the -r retry_count option. The default value is zero, meaning the that DR request is retried immediately.
-t
Performs a test of one or more attachment points. The test function is used to reevaluate the condition of the attachment point.

The results of the test are used to update the condition of the specified occupant to ok if no faults are found, failing if recoverable faults are found, or failed if any unrecoverable faults are found.

If a test is interrupted, the attachment point condition can be restored to its previous value, set to unknown if no errors were found, set to failing if only recoverable errors were found, or set to failed if any unrecoverable errors were found. The attachment point should be set to ok only upon normal completion of testing with no errors.

-v
Executes in verbose mode. For the -c, -t, and -x options, displays a message giving the results of each attempted operation. Displays detailed help information for the -h option. Displays verbose information for each attachment point for the -l option.
-x hardware_function
Performs hardware-specific functions.

Lists hardware-specific private functions using rcfgadm -h ap_id.

The following are valid for hardware_function:

  • assign ap_id

    Assign a board to a domain.

  • unassign ap_id

    Unassign a board from a domain.

  • poweron ap_id

    Power on a board.

  • poweroff ap_id

    Power off a board.

-y
Automatically answers yes to all prompts. Prompts are displayed.

OPERANDS

 

The following operands are supported:

ap_id
Refer to attachment points by hardware-specific identifiers (ap_ids) that are related to the type and location of the attachment points in the system device hierarchy. An ap_id cannot be ambiguous; it must identify a single attachment point. Two types of ap_id specifications are supported: physical and logical. A physical ap_id contains a fully specified path name, while a logical ap_id contains a shorthand notation that identifies an attachment point in a more user-friendly way.

Physical ap_ids:

/devices/pseudo/dr@0:IO4

/devices/pseudo/dr@0:IO6

/devices/pseudo/dr@0:IO14

/devices/pseudo/dr@0:SB4

/devices/pseudo/dr@0:SB6

Logical ap_ids:

IO4

IO6

IO14

SB4

SB6

ap_type
An ap_type is a partial form of a logical ap_id that can be ambiguous and not specify a particular attachment point. An ap_type is a substring of the portion of the logical ap_id up to, but not including, the colon (:) separator. For example, an ap_type of pci would show all attachment points whose logical ap_ids begin with pci. The two ap_types shown here are static and dynamic.

Static ap_types:

HPCI

CPU

MCPU

pci-pci/hp

Dynamic ap_types:

cpu

mem

io

EXTENDED DESCRIPTION

 

Group Privileges Required

 

The privileges required for using this command depend on the desired operation. rcfgadm can assign or unassign boards that are not connected to a domain. To assign or unassign a board, you must have either platform administrator privileges or domain administrator/configurator privileges for the specified domain and the board must be in the domain's available component list. For more information see setupplatform(1M) and showplatform(1M).

The assign and unassign operations are private, hardware-specific operations. Assign a board using rcfgadm -x assign ap_id. Unassign a board using rcfgadm -x unassign ap_id. The ap_ids for assign and unassign must be logical ap_ids specifying a board, such as SB0 or IO2.

Domain administrator or domain configurator privileges are required for test, state change, list or hardware-specific operations.

Refer to Chapter 2, "SMS Security Options and Administrative Privileges" in the System Management Services (SMS) 1.4.1 Administrator Guide for more information.

EXAMPLES

 Example 1. Listing Attachment Points in the Device Tree for Domain A
 

The following example lists all attachment points except dynamic attachment points.

 
sc0:sms-user:>  rcfgadm -d a 
Ap_Id      Type     Receptacle     Occupant       Condition
IO4        PCI      connected      configured     ok
IO6        MCPU     disconnected   unconfigured   unknown
IO14       PCI      connected      configured     ok
SB4        CPU      disconnected   unconfigured   unknown
SB6        CPU      connected      configured     ok
SB16       CPU      connected      configured     ok
Example 2. Listing All Configurable Hardware Information for Domain A
 

The following example lists all current configurable hardware information, including those represented by dynamic attachment points:

 
sc0:sms-user:>  rcfgadm -d a -al 
Ap_Id           Type       Receptacle    Occupant       Condition
IO4             PCI        connected     configured     ok
IO4::pci0       io         connected     configured     ok
IO4::pci1       io         connected     configured     ok
IO4::pci2       io         connected     configured     ok
IO4::pci3       io         connected     configured     ok
IO6             MCPU       disconnected  unconfigured   unknown
IO14            PCI        connected     configured     ok
IO14::pci0      io         connected     configured     ok
IO14::pci1      io         connected     configured     ok
IO14::pci2      io         connected     configured     ok
IO14::pci3      io         connected     configured     ok
SB4             CPU        disconnected  unconfigured   unknown
SB6             CPU        connected     configured     ok
SB6::cpu0       cpu        connected     configured     ok
SB6::cpu1       cpu        connected     configured     ok
SB6::cpu2       cpu        connected     configured     ok
SB6::cpu3       cpu        connected     configured     ok
SB6::memory     memory     connected     configured     ok
SB16            CPU        connected     configured     ok
SB16::cpu0      cpu        connected     configured     ok
SB16::cpu1      cpu        connected     configured     ok
SB16::cpu2      cpu        connected     configured     ok
SB16::cpu3      cpu        connected     configured     ok
SB16::memory    memory     connected     configured     ok
Example 3. Creating a Selective List Based on Attachment Point Attributes for Domain A
 

The following example lists all attachment points at location SB6 and of type cpu. The argument to the -s option is quoted to protect it from the shell.

 
sc0:sms-user:>  rcfgadm -d a  -s match=partial,select="type(cpu)"  -la SB6 
Ap_Id          Type      Receptacle   Occupant      Condition
SB6::cpu0      cpu       connected    configured    ok
SB6::cpu1      cpu       connected    configured    ok
SB6::cpu2      cpu       connected    configured    ok
SB6::cpu3      cpu       connected    configured    ok
Example 4. Listing Current Configurable Hardware Information in Verbose Mode for Domain A
 

The following example lists current configurable hardware information in verbose mode:

 
sc0:sms-user:>  rcfgadm -d a -v -l  SB16
Ap_Id   Receptacle   Occupant     Condition   Information 
SB16    connected    configured   ok          powered-on, assigned
When          Type  Busy  Phys_Id
Mar 6 13:30   CPU   n     /devices/pseudo/dr@0:SB16
Example 5. Using the Force Option on Domain A
 

The following example configures an occupant in the failing state to the system using the force option:

 
sc0:sms-user:>  rcfgadm -d a  -f -c configure SB6
Example 6. Unconfiguring an Occupant From the System on Domain A
 

The following example unconfigures an occupant from the system:

 
sc0:sms-user:>  rcfgadm -d a -c unconfigure IO14
Example 7. Configuring an Occupant at an Attachment Point
 

The following example configures an occupant:

 
sc0:sms-user:>  rcfgadm -d a -c configure SB6
Example 8. Using the -o parsable option:
 

The following example displays system board and IO assembly information as a set of "name=value" pairs:

 
sc0:sms-user:>  rcfgadm -d G -s cols=ap_id:type -o parsable
Ap_Id                          TypeIO0                            unknownIO5                            HPCIIO11                           HPCISB0                            CPUSB11                           CPU
Example 9. Disconnecting But Not Powering Off SB0:
 

The following example displays domain G giving up ownership of the board.

 
sc0:sms-user:>  rcfgadm  -d G -c disconnect -o unassign,nopoweroff SB0

ENVIRONMENT VARIABLES

 

See environ(5) for descriptions of the following environment variables that affect the execution of command_name: LC_TIME,LC-MESSAGES,TZ.

LC_MESSAGES
Determines how rcfgadm displays column headings and error messages. Listing output data is not affected by the setting of this variable.
LC_TIME
Determines how rcfgadm displays human-readable status changed time (status_time).
TZ
Specifies the time zone used when converting the status changed time. This applies to both the human-readable (status_time) and parsable (status_time_p) formats.

EXIT STATUS

 

The following exit values are returned:

0
Successful completion.
1
No acknowledge.
2
Not supported.
3
Operation not supported.
4
Invalid privileges.
5
Busy.
6
System busy.
7
Data error.
8
Library error.
9
No library.
10
Insufficient condition.
11
Invalid.
12
Error.
13
A PID does not exist.
14
Invalid attribute.
30
Invalid board ID type.
31
Invalid permissions.
32
Assigned to another domain.
33
Unable to get permissions.
34
Unable to get domain board info.
35
Unable to get active board list.
36
Unable to get assigned board list.
37
Get blacklist failed.
38
Solaris not running.
39
Invalid privileges.
40
Unable to get domain permissions.
41
Unable to get platform permissions.
42
Failed to get domain blacklist.
43
Failed to get platform blacklist.
56
DR command syntax error.
70
DR operation failed.

ATTRIBUTES

 

See attributes(5) for descriptions of the following attributes.

Attribute TypesAttribute Values
AvailabilitySUNWSMSop

SEE ALSO

 

addtag(1m), cfgadm_sbd(1m), setupplatform(1m), showplatform(1m)

DIAGNOSTICS

 

Diagnostic messages appear on the standard error output. Other than options and usage errors, the following are diagnostic messages produced by this utility:

rcfgadm: Configuration administration not supported on ap_id

rcfgadm: No library found for ap_id

rcfgadm: ap_id is ambiguous

rcfgadm: Operation: Insufficient privileges

rcfgadm: Attachment point is busy, try again

rcfgadm: No attachment points with specified attributes found

rcfgadm: System is busy, try again

rcfgadm: Operation: Operation requires a service interruption

rcfgadm: Operation: Data error: error_text

rcfgadm: Operation: Hardware specific failure: error_text

rcfgadm: Attachment point not found

rcfgadm: Configuration operation succeeded

rcfgadm: Configuration operation canceled

rcfgadm: Configuration operation invalid

rcfgadm: Configuration operation not supported

rcfgadm: Library error

rcfgadm: Insufficient condition

rcfgadm: SCDR/DCA door failure

rcfgadm: DCA/DCS communication error

rcfgadm: DCA internal failure

rcfgadm: PCD event failure

rcfgadm: Callback function failure

rcfgadm: SCDR library internal error

rcfgadm: Board is already assigned to another domain

rcfgadm: Unable to get active or assigned domain info

rcfgadm: Unable to get privileges

rcfgadm: DRCMD library invalid parameter

See config_admin(3CFGADM) for additional details regarding error messages.


SMS 1.4.1Go To TopLast Changed 19 September 2003