Sunteți pe pagina 1din 6

Steps to reserve/allocate a range of instance numbers of virtual bus nodes (ext_bus class)

This document describes three scenarios, where you can move the instance number of virtual buses found under FibreChannel or Tachlite Interface (HBA) Card. The three scenarios are as follows: 1. Move the existing instance number of a virtual bus to greater than 255. 2. Reserve or block a set of instance numbers, so that these can be used on need basis for the required virtual bus nodes. 3. Steps to allocate reserved instance number to a virtual bus node. NOTE: In order to perform the above mentioned operations, a tool named ioconfig_dump is required. Contact HP support team to get this tool. The ioconfig_dump tool is available for PA-RISC and Integrity servers. The ioconfig_dump-a-i command is used on an Integrity machine and the ioconfig_dump-a2 command is used on a PA-RISC machine.

Scenario 1: How to move a single or range of instance numbers of a virtual bus node to a range above 255?
Step 1: Using the ioconfig_dump tool, create a file named foo, which is the ASCII format of the current /stand/ext_ioconfig file on a system. Run the following command to generate a foo file from the current /stand/ext_ioconfig file: #ioconfig_dump-a-i -r -f /stand/ext_ioconfig -o foo The format of the entries in the foo file after the dump will be as follows: Class_name:instance_number:hwpath:driver_name:flag Where: Class_name Class of the node. instance_number- Current instance number of the node represented by below hardware path. hwpath Existent hardware path. driver_name: Name of the driver which claimed this node. flag An integer number, which is understood internally by HP-UX General I/O (GIO) subsystem. The flag is driver-specific and while adding new entries, it is preferable to take the flag value from the existing entries in the file foo. For example, if the value of the fcd_vbus is 515, retain the same value for all the fcd_vbus entries that will be added to the file foo. Example: The listing below (obtained by doing cat foo | grep ext_bus) shows a few typical entries of ext_bus nodes that can be found in the foo file that is generated from an /stand/ext_ioconfig file on a system. In this example, c8xx node has instance number 0,

mpt node has instance number 1 and fcd_vbus nodes have instance numbers from 2 to 6 respectively. ext_bus:0:1.0.4.0.1:c8xx:258 ext_bus:1:1.0.6.0.0:mpt:258 ext_bus:2:1.0.12.1.0:fcd_vbus:515 ext_bus:3:1.0.12.1.1:fcd_vbus:515 ext_bus:4:1.0.12.1.2:fcd_vbus:515 ext_bus:5:1.0.12.1.3:fcd_vbus:515 ext_bus:6:1.0.12.1.4:fcd_vbus:515 Step 2: Identify the fcd_vbus nodes whose instance numbers need to be moved above 255. For example, consider a case where ext_bus with instance numbers 2,3,4 need to be moved to above 255 range (say 256, 257, 258) Now, edit the foo file and change the corresponding ext_bus entries whose instance number needs to be moved above 255. ext_bus:0:1.0.4.0.1:c8xx:258 ext_bus:1:1.0.6.0.0:mpt:258 ext_bus:256:1.0.12.1.0:fcd_vbus:515 ext_bus:257:1.0.12.1.1:fcd_vbus:515 ext_bus:258:1.0.12.1.2:fcd_vbus:515 ext_bus:5:1.0.12.1.3:fcd_vbus:515 ext_bus:6:1.0.12.1.4:fcd_vbus:515 Step 3: In the above listing, instance numbers 0,1,5,6 in the 0-255 range are the ones used. These entries are kept unchanged. For all other remaining instance numbers that are unused between the 0 -255 range , a dummy entry needs to be created. Edit the file foo by adding dummy ext_bus nodes with dummy instance numbers in 0-255 range. These dummy entries must contain non-existent hardware paths. The dummy paths must be added to the file foo in the following format. In the below example, random hardware paths 19.0.0.0.0 to 19.4.4.4.255 is used for illustration purposes. ext_bus:0:1.0.4.0.1:c8xx:258 ext_bus:1:1.0.6.0.0:mpt:258 ext_bus:256:1.0.12.1.0:fcd_vbus:515 ext_bus:257:1.0.12.1.1:fcd_vbus:515 ext_bus:258:1.0.12.1.2:fcd_vbus:515 ext_bus:5:1.0.12.1.3:fcd_vbus:515 ext_bus:6:1.0.12.1.4:fcd_vbus:515 ext_bus:2:19.0.0.0.0:fcd_vbus:515 ext_bus:3:19.1.1.1.3:fcd_vbus:515 ext_bus:4:19.2.2.2.4:fcd_vbus:515 ext_bus:7:19.3.3.3.7:fcd_vbus:515 ext_bus:8:19.3.3.3.8:fcd_vbus:515 .......................................... .. ext_bus:255:19.4.4.4.255:fcd_vbus:515 The above entries will result in assigning instance numbers 256,257 and 258 for fcd_vbus nodes at hardware paths 1/0/12/1/0, 1/0/12/1/1, 1/0/12/1/2 respectively and all other unsued instance number in the 0-255 range will contain dummy entries thereby reserving them for future use.

Step 4: Write the contents of foo back into /stand/ext_ioconfig file using following options of ioconfig_dump tool #ioconfig_dump-a-i c o /stand/ext_ioconfig i foo

Step 5: Copy the /stand/ext_ioconfig file to /etc/ext_ioconfig file. Step 6: Reboot the machine.
Once the system comes up, the devices that are connected to the fcd_vbus nodes, which are moved above 255 range will be visible only in the agile view of iotree (ioscan kfN) In the legacy view of iotree (ioscan kf) , fcd_vbus nodes whose instance number has been moved above 255 will be shown in UNCLAIMED state and these nodes will instance number as 1. The dummy entries that got added into the ioconfig file in step 3 above can be seen as stale nodes in ioscan s Use case: If there is a fcd_vbus node with only disk devices connected, this example can be used to move the instance number of this fcd_vbus node to a range above 255 so that the freed up instance number in the 0-255 range can be later used for another fcd_vbus node with only tape devices are connected.

Scenario 2: Reserving the entire virtual bus instance number range from 0 255
Step 1: Using the ioconfig_dump tool, create a file named foo, which is the ASCII format of the current /stand/ext_ioconfig file on a system. Run the following command to generate the foo file from the current /stand/ext_ioconfig file. #ioconfig_dump-a-i -r -f /stand/ext_ioconfig -o foo The format of the entries in the foo file after the dump will be as follows: Class_name:instance_number:hwpath:driver_name:flag Where: Class_name Class of the node. instance_number- Current instance number of the node represented by below hardware path. hwpath Existent hardware path. driver_name: Name of the driver which claimed this node. flag an integer number which is understood internally by HP-UX General I/O (GIO) subsystem. The flag is driver specific and while adding new entries it is preferable to take the flag value from the existing entries in the file foo. For example if the value of the fcd_vbus is 515, retain the same value for all the fcd_vbus entries that will be added to the file foo.

Example: The listing below (obtained by doing cat foo | grep ext_bus) shows a few typical entries of ext_bus nodes that can be found in a foo file that is generated from an /stand/ext_ioconfig file on a system. In this example, c8xx node has instance number 0, mpt node has instance number 1 and fcd_vbus nodes have instance numbers from 2 to 6 respectively. ext_bus:0:1.0.4.0.1:c8xx:258 ext_bus:1:1.0.6.0.0:mpt:258 ext_bus:2:1.0.12.1.0:fcd_vbus:515 ext_bus:3:1.0.12.1.1:fcd_vbus:515 ext_bus:4:1.0.12.1.2:fcd_vbus:515 ext_bus:5:1.0.12.1.3:fcd_vbus:515 ext_bus:6:1.0.12.1.4:fcd_vbus:515 Step 2: For all the existing ext_bus entries, change the instance number to a value greater than 255. This can be done by editing the foo file and changing instance numbers of all the ext_bus entries to above 255 values. ext_bus:256:1.0.4.0.1:c8xx:258 ext_bus:257:1.0.6.0.0:mpt:258 ext_bus:258:1.0.12.1.0:fcd_vbus:515 ext_bus:259:1.0.12.1.1:fcd_vbus:515 ext_bus:260:1.0.12.1.2:fcd_vbus:515 ext_bus:261:1.0.12.1.3:fcd_vbus:515 ext_bus:262:1.0.12.1.4:fcd_vbus:515 Step 3: To reserve all the instance numbers between 0-255 range, dummy entries need to be created for each of the instance number entries between 0-255. Edit the file foo by adding dummy ext_bus nodes with dummy instance numbers in 0-255 range. These dummy entries must contain non-existent hardware paths. The dummy paths must be added to the file foo in the following format. In the below example, random hardware paths 19.0.0.0.0 to 19.4.4.4.255 is used for illustration purposes. ext_bus:256:1.0.4.0.1:c8xx:258 ext_bus:257:1.0.6.0.0:mpt:258 ext_bus:258:1.0.12.1.0:fcd_vbus:515 ext_bus:259:1.0.12.1.1:fcd_vbus:515 ext_bus:260:1.0.12.1.2:fcd_vbus:515 ext_bus:261:1.0.12.1.3:fcd_vbus:515 ext_bus:262:1.0.12.1.4:fcd_vbus:515 ext_bus:0:19.0.0.0.0:fcd_vbus:515 ext_bus:1:19.1.1.1.1:fcd_vbus:515 ext_bus:2:19.2.2.2.2:fcd_vbus:515 .......................................... .. ext_bus:255:19.4.4.4.255:fcd_vbus:515 The above entries will result in assigning instance numbers above 255 for all the current ext_bus nodes and all other unused instance number in the 0-255 range will contain dummy entries thereby reserving them for future use.

Step 4: Write the contents of foo back into /stand/ext_ioconfig file using following options of ioconfig_dump tool #ioconfig_dump-a-i c o /stand/ext_ioconfig i foo

Step 5: Copy the /stand/ext_ioconfig file to /etc/ext_ioconfig file. Step 6: Reboot the machine. Once the system comes up, the devices that are connected to the fcd_vbus nodes, which are moved above 255 range will be visible only in the agile view of iotree (ioscan kfN) In the legacy view of iotree (ioscan kf) , fcd_vbus nodes whose instance number has been moved above 255 will be shown in UNCLAIMED state and these nodes will instance number as -1. The dummy entries that got added into the ioconfig file in step 3 above can be seen as stale nodes in ioscan s Use case: This scenario can be used to block the entire ext_bus instance number range between 0 255.

Scenario 3: Steps to allocate instance number for a virtual bus from the reserved range
In this scenario, the requirement is to free up a reserved instance number (reserved between 0 255) so that freed instance number can be assigned to an ext_bus node whose current instance number is -1 (as not is in UNCLAIMED state).
Step 1: Using the ioconfig_dump tool create a file named foo which is the ASCII format of the current /stand/ext_ioconfig file on a system. Following shows the way/options to generate foo file from the current /stand/ext_ioconfig file. #ioconfig_dump-a-i -r -f /stand/ext_ioconfig -o foo The format of the entries in the foo file after the dump will be as follows: Class_name:instance_number:hwpath:driver_name:flag Where: Class_name Class of the node. instance_number- Current instance number of the node represented by below hardware path. hwpath Existent hardware path. driver_name: Name of the driver which claimed this node. flag an integer number, which is understood internally by HP-UX General I/O (GIO) subsystem. The flag is driver-specific and while adding new entries it is preferable to take the flag value from the existing entries in the file foo. For example if the value of the fcd_vbus is 515, retain the same value for all the fcd_vbus entries that will be added to the file foo.

For fcd_vbus nodes whose instance number is greater than 255, class name will be shown as unknown, instance number will be -1 and driver_name field will be blank. Example: The listing below (obtained by doing cat foo | grep unknown) shows a few typical entries of this type. unknown:-1:1.0.12.1.19::515 unknown:-1:1.0.12.1.20::515 Step 2: In order to assign a instance number 10 to hardware path 1/0/12/1/19 and instance number 11 to 1/0/12/1/20 as in the example listing above remove the dummy entries in the foo file corresponding to the instance number 10 and 11 and edit the instance number of the above specified hardware paths to 10 and 11 with class mentioned as ext_bus and driver name mentioned as fcd_vbus Example: ext_bus:10:1.0.12.1.19:fcd_vbus:515 ext_bus:11:1.0.12.1.20:fcd_vbus:515 Step 3: Write the contents of foo back into /stand/ext_ioconfig file using following options of ioconfig_dump tool #ioconfig_dump-a-i c o /stand/ext_ioconfig i foo

Step 4: Copy the /stand/ext_ioconfig file to /etc/ext_ioconfig file. Step 5: Reboot the machine. Once the system comes up, the fcd_vbus nodes at hardware paths 1/0/12/1/19 and 1/0/12/1/20 will get instance number 10 and 11 and all the devices connected to these ext_bus nodes will be visible in both agile and legacy view. Use case: This scenario can be used to assign an instance number for an ext_bus node from the reserved 0 255 range.

S-ar putea să vă placă și