HPUX Reserve Allocate a Range of Instance Numbers Ext_bus Class

download HPUX Reserve Allocate a Range of Instance Numbers Ext_bus Class

of 6

description

HPUX Reserve Allocate a Range of Instance Numbers Ext_bus Class

Transcript of HPUX Reserve Allocate a Range of Instance Numbers Ext_bus Class

  • Steps to reserve/allocate a range of instance numbers of virtualbus nodes (ext_bus class)

    This document describes three scenarios, where you can move the instance number of virtualbuses found under FibreChannel or Tachlite Interface (HBA) Card. The three scenarios are asfollows:

    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_dumpis required. Contact HP support team to get this tool.

    The ioconfig_dump tool is available for PA-RISC and Integrity servers. Theioconfig_dump-a-i command is used on an Integrity machine and the ioconfig_dump-a-2 command is used on a PA-RISC machine.

    Scenario 1:How to move a single or range of instance numbers of a virtualbus node to a range above 255?

    Step 1: Using the ioconfig_dump tool, create a file named foo, which is the ASCIIformat of the current /stand/ext_ioconfig file on a system. Run the following command togenerate 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 hardwarepath.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 theflag value from the existing entries in the file foo. For example, if the value of thefcd_vbus is 515, retain the same value for all the fcd_vbus entries that will be added to thefile foo.

    Example:

    The listing below (obtained by doing cat foo | grep ext_bus) shows a few typicalentries 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 6respectively.

    ext_bus:0:1.0.4.0.1:c8xx:258ext_bus:1:1.0.6.0.0:mpt:258ext_bus:2:1.0.12.1.0:fcd_vbus:515ext_bus:3:1.0.12.1.1:fcd_vbus:515ext_bus:4:1.0.12.1.2:fcd_vbus:515ext_bus:5:1.0.12.1.3:fcd_vbus:515ext_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 toabove 255 range (say 256, 257, 258)

    Now, edit the foo file and change the corresponding ext_bus entries whose instancenumber needs to be moved above 255.

    ext_bus:0:1.0.4.0.1:c8xx:258ext_bus:1:1.0.6.0.0:mpt:258ext_bus:256:1.0.12.1.0:fcd_vbus:515ext_bus:257:1.0.12.1.1:fcd_vbus:515ext_bus:258:1.0.12.1.2:fcd_vbus:515ext_bus:5:1.0.12.1.3:fcd_vbus:515ext_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 unusedbetween 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-255range. These dummy entries must contain non-existent hardware paths. The dummy paths mustbe added to the file foo in the following format. In the below example, random hardwarepaths 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:258ext_bus:1:1.0.6.0.0:mpt:258ext_bus:256:1.0.12.1.0:fcd_vbus:515ext_bus:257:1.0.12.1.1:fcd_vbus:515ext_bus:258:1.0.12.1.2:fcd_vbus:515ext_bus:5:1.0.12.1.3:fcd_vbus:515ext_bus:6:1.0.12.1.4:fcd_vbus:515ext_bus:2:19.0.0.0.0:fcd_vbus:515ext_bus:3:19.1.1.1.3:fcd_vbus:515ext_bus:4:19.2.2.2.4:fcd_vbus:515ext_bus:7:19.3.3.3.7:fcd_vbus:515ext_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_vbusnodes at hardware paths 1/0/12/1/0, 1/0/12/1/1, 1/0/12/1/2 respectively and all otherunsued instance number in the 0-255 range will contain dummy entries thereby reserving themfor future use.

  • Step 4: Write the contents of foo back into /stand/ext_ioconfig file using followingoptions 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 aremoved above 255 range will be visible only in the agile view of iotree (ioscan kfN) In thelegacy view of iotree (ioscan kf) , fcd_vbus nodes whose instance number has beenmoved 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 asstale nodes in ioscan s

    Use case: If there is a fcd_vbus node with only disk devices connected, this example can beused to move the instance number of this fcd_vbus node to a range above 255 so that thefreed up instance number in the 0-255 range can be later used for another fcd_vbus nodewith 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 ASCIIformat of the current /stand/ext_ioconfig file on a system. Run the following command togenerate 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 hardwarepath.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 valuefrom 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 typicalentries 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 6respectively.

    ext_bus:0:1.0.4.0.1:c8xx:258ext_bus:1:1.0.6.0.0:mpt:258ext_bus:2:1.0.12.1.0:fcd_vbus:515ext_bus:3:1.0.12.1.1:fcd_vbus:515ext_bus:4:1.0.12.1.2:fcd_vbus:515ext_bus:5:1.0.12.1.3:fcd_vbus:515ext_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 greaterthan 255. This can be done by editing the foo file and changing instance numbers of all theext_bus entries to above 255 values.

    ext_bus:256:1.0.4.0.1:c8xx:258ext_bus:257:1.0.6.0.0:mpt:258ext_bus:258:1.0.12.1.0:fcd_vbus:515ext_bus:259:1.0.12.1.1:fcd_vbus:515ext_bus:260:1.0.12.1.2:fcd_vbus:515ext_bus:261:1.0.12.1.3:fcd_vbus:515ext_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 becreated for each of the instance number entries between 0-255. Edit the file foo by addingdummy ext_bus nodes with dummy instance numbers in 0-255 range. These dummy entriesmust contain non-existent hardware paths. The dummy paths must be added to the file fooin the following format. In the below example, random hardware paths 19.0.0.0.0 to19.4.4.4.255 is used for illustration purposes.

    ext_bus:256:1.0.4.0.1:c8xx:258ext_bus:257:1.0.6.0.0:mpt:258ext_bus:258:1.0.12.1.0:fcd_vbus:515ext_bus:259:1.0.12.1.1:fcd_vbus:515ext_bus:260:1.0.12.1.2:fcd_vbus:515ext_bus:261:1.0.12.1.3:fcd_vbus:515ext_bus:262:1.0.12.1.4:fcd_vbus:515ext_bus:0:19.0.0.0.0:fcd_vbus:515ext_bus:1:19.1.1.1.1:fcd_vbus:515ext_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 currentext_bus nodes and all other unused instance number in the 0-255 range will contain dummyentries thereby reserving them for future use.

  • Step 4: Write the contents of foo back into /stand/ext_ioconfig file using followingoptions 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 aremoved above 255 range will be visible only in the agile view of iotree (ioscan kfN) In thelegacy view of iotree (ioscan kf) , fcd_vbus nodes whose instance number has been movedabove 255 will be shown in UNCLAIMED state and these nodes will instance number as -1. Thedummy entries that got added into the ioconfig file in step 3 above can be seen as stale nodesin ioscan s

    Use case: This scenario can be used to block the entire ext_bus instance number rangebetween 0 255.

    Scenario 3:Steps to allocate instance number for a virtual bus from thereserved range

    In this scenario, the requirement is to free up a reserved instance number (reservedbetween 0 255) so that freed instance number can be assigned to an ext_bus nodewhose 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 formatof the current /stand/ext_ioconfig file on a system. Following shows the way/options togenerate 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 hardwarepath.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 theflag value from the existing entries in the file foo. For example if the value of thefcd_vbus is 515, retain the same value for all the fcd_vbus entries that will be added to thefile foo.

  • For fcd_vbus nodes whose instance number is greater than 255, class name will be shown asunknown, 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 typicalentries of this type.

    unknown:-1:1.0.12.1.19::515unknown:-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 instancenumber 11 to 1/0/12/1/20 as in the example listing above remove the dummy entries in thefoo file corresponding to the instance number 10 and 11 and edit the instance number of theabove specified hardware paths to 10 and 11 with class mentioned as ext_bus and driver namementioned as fcd_vbus

    Example:

    ext_bus:10:1.0.12.1.19:fcd_vbus:515ext_bus:11:1.0.12.1.20:fcd_vbus:515

    Step 3: Write the contents of foo back into /stand/ext_ioconfig file using followingoptions 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 and1/0/12/1/20 will get instance number 10 and 11 and all the devices connected to theseext_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 fromthe reserved 0 255 range.