C H A P T E R  4

DR Procedures - From the System Domain

This chapter contains procedures that describe how to use the DR feature from the Sun Fire system domain on high-end and midrange systems. Procedures that apply to one platform but not the other are clearly marked. The terms system board and I/O board apply to both platforms.



caution icon

Caution - Before you attempt to perform any DR operation on a board or component, determine its state and condition as described in Checking Device Type, State and Condition.

Do not execute any of the procedures in this section until you understand the information in chapters 1, 2 and 3.



You must be superuser to run DR in a domain.



Note - Wherever you see SBx or IOx, the x represents the board id number.



This chapter covers the following topics:


Adding System Boards

To add a system board to the domain, the board must already be assigned to the domain, or must be in the ACL, an abbreviation for available component list on a high-end system domain and access control list on midrange system domains.

For information about the high-end system ACL, see the System Management Services (SMS) Administrator Guide. For information about the midrange system ACL, see the Sun Fire Midrange Systems Platform Administration Manual.


procedure icon  To Add a System Board

1. Verify that the selected board slot can accept a board.


# cfgadm -a -s "select=class(sbd)"

The states and conditions should be:

-OR-

2. Add the board to the slot, then connect and configure the board.


# cfgadm -v -c configure SBx

After a short delay during which the system tests the board, a message displays in the domain console log indicating that the components have been configured. The states and conditions for a connected and configured attachment point should be:

Now the system is aware of the usable devices on the board and the devices can be used.



Note - If the cfgadm(1M) command fails during a DR operation, the board does not return to its original state. If the error is recoverable, you can retry the command. If the error is unrecoverable, you must reboot the domain to use the board.




procedure icon  To Connect a System Board But Not Configure it

1. Verify that the selected board slot can accept a board.


# cfgadm -a -s "select=class(sbd)"

The states and conditions should be:

-OR-

2. Connect the board.


# cfgadm -v -c connect SBx


procedure icon  To Configure a Connected System Board

single-step bulletConfigure the connected board.


# cfgadm -c configure SBx

where x represents the number of the board.


Deleting System Boards


procedure icon  To Delete a System Board

single-step bulletUnconfigure and disconnect the board.


# cfgadm -c disconnect SBx


procedure icon  To Unconfigure But Not Disconnect a System Board

single-step bulletUnconfigure the board.


# cfgadm -c unconfigure SBx


procedure icon  To Delete an Unconfigured System Board

single-step bulletDisconnect the board.


# cfgadm -c disconnect SBx


procedure icon  To Delete a System Board Temporarily

Use this procedure to power off the board and leave it in place if, for example, a board fails and no replacement board or system board filler panel is available.

1. Identify the attachment point ID for the board.


# cfgadm -l -s "select=class(sbd)"

2. Detach and power off the board.


# cfgadm -c disconnect ap_id

where ap_id is the attachment point ID returned by the command in Step 1.


procedure icon  To Find the System Board that Contains a Domain's Permanent Memory

single-step bulletIdentify the board that contains permanent memory.


# cfgadm -val | grep permanent


procedure icon  To Unconfigure a System Board with Permanent Memory

1. Identify the board that contains permanent memory.


# cfgadm -val | grep permanent

2. Unconfigure the board that contains permanent memory.


# cfgadm -c unconfigure -y SB0



Note - Using the -y option here does not prevent the quiesce.




Moving System Boards


procedure icon  To Move a System Board Between Domains

1. Identify the slot number of the board to be removed.


# cfgadm -l -s "select=class(sbd)"

2. Unconfigure the board but leave the power on to preserve the test status:


# cfgadm -o unassign,nopoweroff -c disconnect ap_id

where ap_id is the attachment point ID returned by Step 1.

At this point, the slot is not assigned to any domain, and the slot is visible to all domains.

3. In the domain to which you are moving the board, check to see if the board is now visible as disconnected.


# cfgadm -al -s "select=class(sbd)"



Note - If the board is not visible in the new domain, the problem might be related to the ACL, as this procedure implies an assignment operation. For information about the available component list on a high-end system domain, see the System Management Services (SMS) Administrator Guide. For information about the ACL on a midrange system domain, see the Sun Fire Midrange Systems Platform Administration Manual.



4. Configure the board in the new domain.


# cfgadm -c configure ap_id


Adding I/O Boards


procedure icon  To Add an I/O Board

1. Verify that the selected board slot can accept a board.


# cfgadm -a -s "select=class(sbd)"

The states and conditions should be:

-OR-

2. Add the board to the slot.

3. For a midrange system, test the I/O board; for a high-end system, proceed to the next step.

If you are adding a board to a midrange system, see To Test an I/O Board (Midrange Only).

4. Connect and configure the board.


# cfgadm -v -c configure IOx

After a short delay during which the system tests the board, a message displays in the domain console log indicating that the components have been configured. The states and conditions for a connected and configured attachment point should be:

Now the system is aware of the usable devices on the board and the devices can be used.



Note - If the cfgadm(1M) command fails during a DR operation, the board does not return to its original state. If the error is recoverable, you can retry the command. If the error is unrecoverable, you must reboot the domain to use the board.




procedure icon  To Add and Connect an I/O Board But Not Configure it

1. Verify that the selected board slot can accept a board.


# cfgadm -a -s "select=class(sbd)"

The states and conditions should be:

-OR-

2. Add the board to the slot.

3. For a midrange system, test the I/O board; for a high-end system, proceed to the next step.

If you are adding a board to a midrange system, see To Test an I/O Board (Midrange Only).

4. Connect the board.


# cfgadm -v -c connect IOx


procedure icon  To Configure a Connected I/O Board

single-step bulletConfigure the connected I/O board.


# cfgadm -c configure IOx


procedure icon  To Delete an I/O Board

single-step bulletUnconfigure and disconnect the I/O board.


# cfgadm -c disconnect IOx


procedure icon  To Unconfigure an I/O Board But Not Disconnect it

single-step bulletUnconfigure the I/O board without disconnecting it.


# cfgadm -c unconfigure IOx


procedure icon  To Disconnect an Unconfigured I/O Board

single-step bulletDisconnect the unconfigured I/O board.


# cfgadm -c disconnect IOx


Adding/Deleting/Tracking Memory and CPU



Note - The following procedures apply to both single-core and dual-core CPUs.




procedure icon  To Configure CPU on a System Board

single-step bulletConfigure the CPU.


# cfgadm -c configure SBx::cpuy 

where x represents the board number and y represents the CPU number, which is 0 through 3 for Sun Fire high-end and midrange systems.


procedure icon  To Configure Memory on a System Board

single-step bulletConfigure memory.


# cfgadm -c configure SBx::memory 

where x represents the board number. For memory, the command applies to all the memory on the system board


procedure icon  To Configure All CPUs and Memory on a System Board

single-step bulletConfigure all CPUs and memory on the board.


# cfgadm -c configure SBx


procedure icon  To Unconfigure CPU on a System Board

single-step bulletUnonfigure the CPU.


# cfgadm -c unconfigure SBx::cpuy 

where x represents the board number and y represents the CPU number, which is 0 through 3 for Sun Fire high-end and midrange systems.


procedure icon  To Unconfigure Memory on a System Board

single-step bulletConfigure memory.


# cfgadm -c unconfigure SBx::memory 

where x represents the board number. For memory, the command applies to all the memory on the system board


procedure icon  To Unconfigure All CPUs and Memory on a System Board

single-step bulletUnconfigure all CPUs and memory on the board.


# cfgadm -c unconfigure SBx


procedure icon  To Track a Memory Unconfigure Operation

You can use the cfgadm(1M) command to track the progress of a memory unconfigure operation. The following command displays a snapshot of the amount of memory deleted, and the amount of memory remaining to delete.

single-step bulletTrack the memory-delete process.


# cfgadm -a -s "select=type(memory),cols=ap_id:o_state:info"


PCI Adapter Card Operations

Each hot-plug slot on an I/O board can be individually connected, configured, unconfigured, and disconnected. Each attachment point for a hot-plug slot, which identifies both the slot and the adapter card that is plugged into the slot, is created when the I/O board is configured into the domain.

Sun Fire high-end systems support PCI and hsPCI cards. Sun Fire midrange systems support PCI and CompactPCI cards. In the procedures that follow, PCI refers to any of these card types.


procedure icon  To Connect a PCI slot on an I/O Board

single-step bulletConnect the PCI slot.


# cfgadm -c connect pci_ap_id

where pci_ap_id represents the ID of the PCI slot.

For example, to connect, but not configure, an adapter at slot 1 of I/O board 1 into a domain, use a command such as the following:


# cfgadm -c connect pcisch0:e01b1slot1


procedure icon  To Configure a PCI slot on an I/O Board

single-step bulletConfigure the PCI slot.


# cfgadm -c configure pci_ap_id

where pci_ap_id represents the ID of the PCI slot.

For example, to configure the adapter at slot 1 of I/O board 1 into the domain, use a command such as the following:


# cfgadm -c configure pcisch0:e01b1slot1


procedure icon  To Disconnect a PCI slot on an I/O Board

single-step bulletDisconnect the PCI slot.


# cfgadm -c disconnect pci_ap_id

where pci_ap_id represents the ID of the PCI slot.

For example, to disconnect an adapter at slot 1 of I/O board 1 before unplugging the adapter, use a command such as the following:


# cfgadm -c disconnect pcisch13:eo1b1slot1


procedure icon  To Unconfigure a PCI Slot on an I/O Board

single-step bulletUnconfigure the PCI slot.


# cfgadm -c unconfigure pci_ap_id

where pci_ap_id represents the ID of the PCI slot.

For example, to unconfigure the adapter at slot 1 of I/O board 1 out of the domain, use a command such as the following:


# cfgadm -c unconfigure pcisch0:e01b1slot1

For more information, see cfgadm_pci(1M).