Index Index for
Section 4
Index Alphabetical
listing for E
Index Bottom of
page

emx_data.c(4)

NAME

emx_data.c - Configuration file for the emx device driver

SYNOPSIS

/sys/data/emx_data.c

DESCRIPTION

Refer to emx(7) for a general overview of the emx device driver. This file specifies how the system recognizes Fibre Channel devices. Each device that uses the emx driver has a unique Fibre Channel Worldwide name. For each host adapter on the system, the Worldwide name is mapped to a device Target ID. When you delete a device, replace a device, or both, you must modify the Target ID mappings. To achieve symmetrical configurations in a cluster you also need to modify the Target ID mappings. Note Use the emxmgr utility to modify mappings and avoid editing the /sys/data/emx_data.c file manually. If you must make manual edits to the file, use extreme caution. Target ID Mappings The table governing the Target ID mappings consists of a series of records, each containing the following elements: instance This identifies the emx adapter instance whose mapping is to be modified. For example: 0 (zero) refers to emx0. cam_tgt_id This field contains the CAM Target ID that is to represent the device when seen on the indicated adapter instance (for example, when seen on emx0). port_name/node_name The Fibre Channel Worldwide names that identify the device. Note that the 16-bit Fibre Channel Port Name and Node Name values are byte-swapped due to endian-ness of the machine (for example, 0x0050 is actually byte values 50 followed by 00). Thus, when comparing with values with those reported by the HSG80, the following node names are equivalent: from HSG80: 5000-1fe1-0000-0770 from emx.info: { ... 0x0050, 0xe11f, 0x0000, 0x7007 }, For example, the following entry indicates that the device with the Worldwide portname and nodename of 5000-1fe1-0000-0cb1/5000-1fe1-0000- 0cb0, is to be assigned Target ID 3 on the scsi bus attached to emx0: {0, 3, 0x0050, 0xe11f, 0x0000, 0xb10c, 0x0050, 0xe11f, 0x0000, 0xb00c}, How Mappings are Manipulated in the File Each mapping entry consists of an EMX_FCPID_RECORD entry containing the host adapter instance, the cam_tgt_id, of the device and the portname/nodename of the device. It is the cam_tgt_id field that reflects the mapping of a specific device to a Fibre Channel Worldwide name. Initial mappings are created by the emx driver which also writes a text version of the mapping into the file /etc/emx.info. If the /sys/data/emx_data.c must be changed manually, use the following procedure to ensure that the correct Fibre Channel Worldwide name is entered: · In /etc/emx.info, find the EMX_FCPID_RECORD entry that corresponds to an existing Target ID mapping for the required host adapter. · Cut and paste the entry into the /sys/data/emx_data.c file using a text editor. · In the new EMX_FCPID_RECORD in the /sys/data/emx_data.c file, change only the cam_tgt_id field to manipulate the new mapping. For example, when changing the Target ID of the device named in the preceding example, the following EMX_FCPID_RECORD is added to the /sys/data/emx_data.c file: {0, 5, 0x0050, 0xe11f, 0x0000, 0xb10c, 0x0050, 0xe11f, 0x0000, 0xb00c}, To delete Target ID mappings, a negative cam_tgt_id value is entered for the device. For example, to delete the mapping for the preceding device entries, the following entry is added to the /sys/data/emx_data.c file: {0, -1, 0x0050, 0xe11f, 0x0000, 0xb10c, 0x0050, 0xe11f, 0x0000, 0xb00c}, Following such manual modifications to /sys/data/emx_data.c, you must configure the kernel as described in the following procedure: 1. Use the doconfig command to generate a new kernel. This step compiles the revised /sys/data/emx_data.c file into the kernel. 2. Move the new kernel to /vmunix 3. Reboot the local system on the new kernel to cause the change in mappings to occur. Note that on clusters, mapping changes for non- local host adapters will be updated immediately. As the updated mappings will subsequently be written to the emx drivers on disk data file (/etc/emx.db and /etc/emx.db.bak) and all subsequent boots will inherit the values from the on-disk files. Note If obsolete values are left in the kernel they are an integral part of the kernel they are compiled into. This is useful if the on-disk data files are lost or corrupted. However, this may be a significant problem if the resulting kernel (containing the emx_data.c table entries) is copied to a different system. Obsolete values may also cause problems if you are using emxmgr to manage mappings. Internal Processing Internally, when the emx driver processes the fcpid table, the following changes take place: · If the cam_tgt_id field value matches an entry in the existing Target ID mappings for the host adapter instance, the existing Target ID mapping is deleted. · If the device indicated by the Worldwide names already exists in the Target Id mappings for the adapter instance, the existing entry for the device is deleted. · If the cam_tgt_id field is non-negative, the fcpid table entry is then added to the mapping table. · After all table entries are process and the root file system is writable, the updated Target ID mappings are written to disk. Clusters and Symmetry TruClusters for the V4.0X releases commonly require symmetrical configurations. For Fibre Channel, in addition to needing each adapter configured into the system symmetrically, the Target ID mappings on each cluster member also need to be symmetrically assigned. Refer to the Clusters documentation for a description of how to achieve symmetry.

FILES

/sbin/emxmgr The utility that you use to maintain Fibre Channel worldwide name to target ID mappings. /etc/emx.db The binary file containing the persistent CAM Target Id to Fibre Channel N*_Ports mappings for each emx adapter. /etc/emx.db.bak A backup copy of the /etc/emx.db file. /etc/emx.info Text file representing the contents of the /etc/emx.db file. This is a readable form of the persistent CAM Target ID to Fibre Channel N*_Ports mappings for each emx adapter. Note This file does not reflect current connectivity, as devices may not be present, but their Target ID mappings will continue to persist.

RELATED INFORMATION

emx(7), emxmgr(8). SCSI(7), rz(7), disklabel(8), doconfig(8).

Index Index for
Section 4
Index Alphabetical
listing for E
Index Top of
page