114
EMC Corporation Corporate Headquarters: Hopkinton, MA 01748-9103 1-508-435-1000 www.EMC.com REXX Interface Version 7.0 Level Set EMC7002 Update Programmer’s Reference Guide P/N 300-010-181 REV A01

REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX InterfaceVersion 7.0

Level Set EMC7002 Update

Programmer’s Reference GuideP/N 300-010-181

REV A01

EMC CorporationCorporate Headquarters:

Hopkinton, MA 01748-9103

1-508-435-1000www.EMC.com

Page 2: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

2

Copyright © 2009 EMC Corporation. All rights reserved.

Published November, 2009

EMC believes the information in this publication is accurate as of its publication date. The information is subject to change without notice.

THE INFORMATION IN THIS PUBLICATION IS PROVIDED "AS IS." EMC CORPORATION MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WITH RESPECT TO THE INFORMATION IN THIS PUBLICATION, AND SPECIFICALLY DISCLAIMS IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Use, copying, and distribution of any EMC software described in this publication requires an applicable software license.

For the most up-to-date listing of EMC product names, see EMC Corporation Trademarks on EMC.com.

All other trademarks used herein are the property of their respective owners.

REXX Interface Programmer’s Reference Guide

Page 3: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205, Rev A05). Table 1 presents a summary of changes for this document.

Note: Revised text within the book is indicated by red change bars in the left margin.

Summary ofChanges

Table 1 Summary of changes for REXX Interface Programmer’s Guide

Documentation revisions and updates

“Function 19 - Dynamic RDF (DRDF)” on page 40

Table 6, “Dynamic RDF (DRDF) reason codes,” on page 46

“Example programs” on page 55

Table 12, “Function 08, Object name: SSID,” on page 68

Table 14, “Function 10, Object name: DEVICE,” on page 71

Summary of Changes 3

Page 4: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

4

Summary of Changes

REXX Interface Programmer’s Reference Guide

Page 5: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Contents

Summary of Changes

Preface

Chapter 1 IntroductionOverview............................................................................................ 12When to use the interface ................................................................ 13What are Host Component objects? ............................................... 14

Chapter 2 How to Use the InterfaceEMCSRDFR interface program....................................................... 16EMCSRDFR function variables....................................................... 16Supported functions ......................................................................... 19

Function 01 – Retrieve Subsystem Object ........................21Function 02 – Submit Host Component Command .............22Function 03 - Get Command Status .........................................23Function 04 - Retrieve Command Output...............................24Function 06 – Retrieve Global Information Objects...............25Function 07 – Retrieve Serial# Objects.....................................26Function 08 – Retrieve SSID Objects ........................................27Function 09 – Retrieve Control Unit Objects ..........................28Function 10 – Retrieve Device Objects.....................................29Function 11 – Retrieve RDF Link Objects................................30Function 12 – Retrieve Director Objects ..................................31Function 13 – Wait Routine .......................................................32Function 14 – Retrieve RDF Group Object..............................33Function 15 – Retrieve RDF Group Statistics Objects............35Function 16 – Retrieve SRDFA Session Objects .....................36

REXX Interface Programmer’s Reference Guide 5

Page 6: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Contents

Function 17 – Retrieve Director Statistics Objects ................. 37Function 18 - Reply to Command ............................................ 39Function 19 - Dynamic RDF (DRDF) ....................................... 40Function 20 - Get Device Identification................................... 41Function 22 - Retrieve Pool General Object ............................ 42Function 23 - Retrieve Pool Device Object.............................. 43

Return and reason codes.................................................................. 44Example programs............................................................................ 55Object headers ................................................................................... 58

OBJECTH..................................................................................... 58

Chapter 3 REXX VariablesIntroduction....................................................................................... 60Variables ............................................................................................. 61Object cross-reference....................................................................... 62

REXX Interface Programmer’s Reference Guide6

Page 7: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Preface

As part of an effort to improve and enhance the performance and capabilities of its product line, EMC periodically releases revisions of the EMC Enginuity Operating Environment. Therefore, some functions described in this guide may not be supported by all versions of Enginuity currently in use. For the most up-to-date information on product features, refer to your product release notes.

If a feature does not function properly or does not function as described in this guide, please contact your EMC representative.

Note: This document is accurate at the time of publication. However, as information is added, new versions of this document will be released to the EMC Powerlink website at http://Powerlink.EMC.com. Check the Powerlink website to ensure that you are using the latest version of this document.

Audience This document is intended for experienced programmers, particularly those who have knowledge of REXX and EMC SRDF operation, configuration, and control. The manual describes how to use REXX interface to control SRDF functionality.

Relateddocumentation

Related documents include:

◆ EMC SRDF Host Component for z/OS Product Guide

◆ EMC ResourcePak Base for z/OS Product Guide

◆ EMCSPE Programmer’s Reference Guide

REXX Interface Programmer’s Reference Guide 7

Page 8: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

8

Preface

Conventions used inthis guide

EMC uses the following conventions for notes and cautions.

Note: A note presents information that is important, but not hazard-related.

CAUTION!A caution contains information essential to avoid data loss or damage to the system or equipment. The caution may apply to hardware or software.

Typographical conventionsEMC uses the following type style conventions in this document:

Normal Used in running (nonprocedural) text for:• Names of interface elements (such as names of windows,

dialog boxes, buttons, fields, and menus)• Names of resources, attributes, pools, Boolean expressions,

buttons, DQL statements, keywords, clauses, environment variables, functions, utilities

• URLs, pathnames, filenames, directory names, computer names, filenames, links, groups, service keys, file systems, notifications

Bold Used in running (nonprocedural) text for:• Names of commands, daemons, options, programs,

processes, services, applications, utilities, kernels, notifications, system calls, man pages

Used in procedures for:• Names of interface elements (such as names of windows,

dialog boxes, buttons, fields, and menus)• What user specifically selects, clicks, presses, or types

Italic Used in all text (including procedures) for:• Full titles of publications referenced in text• Emphasis (for example a new term)• Variables

Courier Used for:• System output, such as an error message or script • URLs, complete paths, filenames, prompts, and syntax when

shown outside of running text

Courier bold Used for:• Specific user input (such as commands)

Courier italic Used in procedures for:• Variables on command line• User input variables

REXX Interface Programmer’s Reference Guide

Page 9: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Preface

Where to get help EMC support, product, and licensing information can be obtained as follows.

Product information — For documentation, release notes, software updates, or for information about EMC products, licensing, and service, go to the EMC Powerlink website (registration required) at:

http://Powerlink.EMC.com

Technical support — For technical support, go to EMC Customer Service on Powerlink. To open a service request through Powerlink, you must have a valid support agreement. Please contact your EMC sales representative for details about obtaining a valid support agreement or to answer any questions about your account.

Your comments Your suggestions will help us continue to improve the accuracy, organization, and overall quality of the user publications. Please send your opinion of this guide to:

[email protected]

< > Angle brackets enclose parameter or variable values supplied by the user

[ ] Square brackets enclose optional values

| Vertical bar indicates alternate selections - the bar means “or”

{ } Braces indicate content that you must specify (that is, x or y or z)

... Ellipses indicate nonessential information omitted from the example

REXX Interface Programmer’s Reference Guide 9

Page 10: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

10

Preface

REXX Interface Programmer’s Reference Guide

Page 11: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

1Invisible Body Tag

This chapter provides an overview of the REXX interface. The topics are:

◆ Overview............................................................................................. 12◆ When to use the interface.................................................................. 13◆ What are Host Component objects? ................................................ 14

Introduction

Introduction 11

Page 12: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

12

Introduction

OverviewThe IBM REXX programming language is a versatile, general-purpose language that can be used by both novice and experienced programmers. Using the SRDF® Host Component API support for REXX, you can control SRDF functionality rather than interact solely through a console. With REXX support, you can:

◆ Create scripts to automate procedures such as those found in the EMC SRDF Host Component for z/OS Product Guide.

◆ Build your own automated composite commands.

The REXX interface provides a callable assembler interface which populates REXX variables for the calling REXX program.

The purpose of the interface is to provide access through REXX programs to SRDF Host Component data. By providing clearly defined functions and sample code, a user interface can be developed in a short amount of time.

The REXX interface provides the following:

◆ An interface program named EMCSRDFR.

◆ A series of functions which can be used to populate raw data objects which can be interrogated or interpreted as needed.

◆ The ability to submit Host Component commands through the interface and receive the output associated with the command.

REXX Interface Programmer’s Reference Guide

Page 13: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Introduction

When to use the interfaceUse the REXX interface when:

◆ You need to build customized reports and/or commands.

◆ You need to automate procedures and would like more flexibility and functionality than SPE (Stored Procedure Exec) provides.

◆ You need custom decision making and command execution in a manual or automated environment.

When to use the interface 13

Page 14: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

14

Introduction

What are Host Component objects?The objects that are returned by the REXX interface are strings of data that can be interrogated or interpreted as needed. To do this, EMC provides object interpretation code that is ready to be included in your REXX program. This code substrings the returned object and interprets various fields. The code can be found in the product SCF SAMPLIB (distributed with EMC® ResourcePak® Base). The members are listed as “OBJECT” followed by the function number. For example, to use the Function 01 object code, select OBJECT01.

You may choose to use these interpretation objects directly, use only a portion of them, or not use them at all. If you choose not to use the interpretation code, you are responsible for interpreting the fields within the objects.

Since an object represents a string of data, you can select a single field or multiple fields to be interpreted or interrogated.

REXX Interface Programmer’s Reference Guide

Page 15: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

2Invisible Body Tag

This chapter describes the elements of the REXX interface.

◆ EMCSRDFR interface program........................................................ 16◆ EMCSRDFR function variables........................................................ 16◆ Supported functions .......................................................................... 19◆ Return and reason codes................................................................... 44◆ Example programs............................................................................. 55◆ Object headers .................................................................................... 58

How to Use theInterface

How to Use the Interface 15

Page 16: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

16

How to Use the Interface

EMCSRDFR interface programThe EMCSRDFR interface program retrieves object data. EMCSRDFR is called from a REXX program to build the Host Component data object. The EMCSRDFR interface program is installed in the product library at MFEvrm.LINKLIB.

Within your REXX program, you must set the appropriate REXX variables to values corresponding to the function you would like to invoke and call EMCSRDFR to retrieve the object output. Table 4 on page 19 lists the available functions.

EMCSRDFR function variablesTable 2 lists the input variables for the supported functions.

Table 2 EMCSRDFR function input variables (page 1 of 3)

Variable Description

EMCSRDF_COMMAND This variable is used to store the Host Component command to be executed. It is only used by Function 02 (Submit Host Component Command).

EMCSRDF_CPFX8 This variable contains the command prefix.The prefix must be left-justified, padded with blanks, and 8 characters in length.

EMCSRDF_DEVCOUNT This variable represents the number of devices requested. It must be a decimal value from 1 to 9999.

EMCSRDF_DEVFLAG This variable is used by Function 10 to request that the RDF Mirror flags be populated. Set this variable to M to request the mirror flags. Since this request results in additional overhead, you should only use this option when necessary.

EMCSRDF_FC This variable contains the function number to execute.

EMCSRDF_INCLUDE_RD10MBRS

This variable is used by Function 10 to request that the RAID 10 member device objects be returned. Set this variable to Y to retrieve RAID 10 member devices.

EMCSRDF_RDFGRPS This is an optional variable to be used for remote requests. It contains 1 or more multi-hop groups to a maximum of 8 (for example, 1.2.3.4.5.6.7.8).

EMCSRDF_REQ_TOKN This variable is used as an input variable to Function 18 (Reply to Command). This variable will be set when Function 03 or 04 returns a code 92, which indicates the command is waiting for a reply.

REXX Interface Programmer’s Reference Guide

Page 17: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

EMCSRDF_SELGROUP This is an optional variable used by Function 10 and Function 14 to return data for a single group. Specify a 2-digit hex value. If EMCSRDF_SELGROUP was previously set to something other than FF, you must "DROP EMCSRDF_SELGROUP" or set EMCSRDF_SELGROUP to FF to request all RDF groups.

EMCSRDF_SELSYM This variable must contain either a 12-digit serial number or a 4-digit hex value representing a gatekeeper device. If this variable contains a serial number, the control unit must have at least one device online.

EMCSRDF_STARTDEV This variable must contain a 4-digit hex value representing your starting Symmetrix® device.

EMCSRDF_TOKEN This variable is set on return from Function 02 (Submit Host Component Command). If EMCSRDF_WAIT_FOR_COMMAND is set to Y, the token field is maintained internally. If EMCSRDF_WAIT_FOR_COMMAND is set to N, you will need to supply this variable when you issue Function 03 (Get Command Status). This variable must also be supplied for Function 04 (Retrieve Command Output) and Function 18 (Reply to Command).

EMCSRDF_TRK# This command tracking variable is set on return from Function 02 (Submit Host Component Command). It must be supplied as an input variable for Function 18.

EMCSRDF_USER_ VERIFY

When using Function 02 (Submit Host Component Command), set EMCSRDF_USER_VERIFY=Y to prevent the WTOR from appearing on the console and rerouting it to the application. When processing a command response in your application, if EMCSRDF_WAIT_FOR_COMMAND is set to Y, then EMCSRDFR will return code 92 from Function 02. If EMCSRDF_WAIT_FOR_COMMAND is not set to Y, EMCSRDFR will return code 92 from Function 03 or 04. When this happens, variable EMCSRDF_MSG will be set to the prompt that would have otherwise been sent in the WTOR.

To reply:• set EMCSRDF_USER_VERIFY= Y to allow the command to continue, or• set EMCSRDF_USER_VERIFY= N to deny the request • issue Function 18 (Reply to Command). To use this facility, the following must be specified in the Host Component initialization parameters:• USER_VERIFICATION=YES • USER_VERIFICATION_TIMEOUT=value• OPERATOR_VERIFY=value

Table 2 EMCSRDFR function input variables (page 2 of 3)

Variable Description

EMCSRDFR function variables 17

Page 18: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

18

How to Use the Interface

Table 3 lists the variables that may be set on return from the supported functions.

EMCSRDF_WAIT This variable is only used by Function 13 (Wait Routine). It is used to specify the wait time in seconds.

EMCSRDF_WAIT_CMD_TIMEOUT

This is an optional variable for Function 02 (Submit Host Component Command). It can be set to hh:mm or to mmmm to specify a maximum amount of time to wait for the command to complete. When the time expires, Function 03 (Get Command Status) is executed and control is returned to the application with the return code value from Function 03.

EMCSRDF_WAIT_FOR_COMMAND

This is an optional variable for Function 02 (Submit Host Component Command). If set to Y, then Function 02 will wait for the command to complete. Upon completion of the command, Function 04 (Retrieve Command Output) will be executed internally. The return code to the application will reflect the return code from Function 04 and the EMCSRDF_LINE. variables will contain the command output.

Table 2 EMCSRDFR function input variables (page 3 of 3)

Variable Description

Table 3 EMCSRDFR function output variables

Variable Description

EMCSRDF_CMD_RC This variable contains the command return code. A non-zero return code indicates the command had an error.

EMCSRDF_DRDFRS This variable contains the reason code returned from Function 19 (Submit Dynamic RDF Command).

EMCSRDF_DRDFRTN_MESSAGE

This variable contains a text message indicating the reason for the DRDF (Dynamic RDF) error.

EMCSRDF_LINE.n This is a stem variable, with EMCSRDF_LINE.0 containing the number of command line records returned.

EMCSRDF_MESSAGE. This is a stem variable, with EMCSRDF_MESSAGE.0 containing the number of message records returned. It may contain data when EMCSRDF_RC is non-zero.

EMCSRDF_MSG This variable will be set when a return code 92 is returned and will contain the prompt that would have otherwise been sent in the WTOR.

EMCSRDF_RC This variable contains the return code from EMCSRDFR.

EMCSRDF_TRK# This command tracking variable is set on return from Function 02 (Submit Host Component Command). It must be supplied as an input variable for Function 18 (Retrieve Command Output).

REXX Interface Programmer’s Reference Guide

Page 19: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Supported functionsThe functions available via the REXX interface are listed in Table 4. In all cases, EMCSRDF_FC must contain the function number. Any required parameters will be listed along with a sample portion of the object interpretation code. The complete object interpretation code is located in the SCF SAMPLIB distributed with ResourcePak Base.

Output is returned from the interface via REXX Stem variables:

◆ The .0 variables will contain the number of .i records that were returned.

◆ The .i records will contain the objects.

The object can be analyzed using the object interpretation code.

Table 4 Supported interface functions (page 1 of 2)

Function number Description

01 Retrieve Subsystem Object

02 Submit Host Component Command

03 Get Command Status

04 Retrieve Command Output

06 Retrieve Global Information Object

07 Retrieve Serial# Objects

08 Retrieve SSID Objects

09 Retrieve Control Unit Objects

10 Retrieve Device Objects

11 Retrieve RDF Link Objects

12 Retrieve Director Objects

13 Wait Routine

14 Retrieve RDF Group Objects

15 Retrieve RDF Group Statistics Objects

16 Retrieve SRDFA Session Objects

17 Retrieve Director Statistics Objects

Supported functions 19

Page 20: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

20

How to Use the Interface

18 Reply to Command

19 Submit Dynamic RDF (DRDF) Command

20 Get Device Information

22 Get Pool General Information

23 Get Pool Device Information

Table 4 Supported interface functions (page 2 of 2)

Function number Description

REXX Interface Programmer’s Reference Guide

Page 21: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 01 – Retrieve Subsystem Object This function requires no input variables.

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_SUBSYS.0

◆ EMCSRDF_SUBSYS.i

Sample objectinterpretation code

REXX - Function 01 - Subsys Object

sub_0001 =SUBSTR(subsys_rec, 1,4) /* Subsystem Name */sub_0002 =SUBSTR(subsys_rec, 5,2) /* Command character(s) */sub_0003 =SUBSTR(subsys_rec, 7,3) /* HC VERSION (VVRRMM) */sub_0004 =SUBSTR(subsys_rec,10,8) /* 8 CHARACTER CMD PFX */

Supported functions 21

Page 22: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

22

How to Use the Interface

Function 02 – Submit Host Component Command This function requires the following additional variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_COMMAND

Optionally, the following variables may also be set:

◆ EMCSRDF_WAIT_FOR_COMMAND

◆ EMCSRDF_WAIT_CMD_TIMEOUT

◆ EMCSRDF_USER_VERIFY

On return, the following variables may be set:

◆ EMCSRDF_TOKEN

◆ EMCSRDF_LINE.

Returned objects This function does not return an object. When EMCSRDF_WAIT_FOR_COMMAND is set to "Y", Function 02 will wait for the command to complete. Upon completion of the command, Function 04 (Retrieve Command Output) will be executed internally. The return code to the application will reflect the return code from Function 04 and the output EMCSRDF_LINE. variables will contain the command output.

The EMCSRDF_LINE. variables look identical to console output, but issuing the command does not utilize console services. Any Host Component command can be submitted via the REXX interface, provided the proper Host Component security has been granted.

REXX Interface Programmer’s Reference Guide

Page 23: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 03 - Get Command StatusThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_TOKEN

Returned objects This function does not return an object. This is a control function that is used to test the completion of Function 02 (Submit Host Component Command). While this is a valid function, it is not used if EMCSRDF_WAIT_FOR_COMMAND is specified on Function 02. It is also not necessary if your application is designed to wait and issue Function 04. A return code of 0 from this function indicates the command is complete.

Supported functions 23

Page 24: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

24

How to Use the Interface

Function 04 - Retrieve Command OutputThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_TOKEN

Returned objects This function does not return an object. This is a control function that is used to retrieve the output generated by Function 02. Command output will be contained in the stem variable EMCSRDF_LINE.n, with EMCSRDF_LINE.0 containing the number of stem variables returned.

A return code of 8 from this function indicates the command is not yet complete. If you receive this return code, issue a wait request (Function 13) and retry this function. Upon completion (return code of 0), this function sets variable EMCSRDF_CMD_RC to the return code for the command. A return code of 0 means the command worked, non-zero means the command had an error.

REXX Interface Programmer’s Reference Guide

Page 25: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 06 – Retrieve Global Information ObjectsThis function requires the following variable to be set:

◆ EMCSRDF_CPFX8

Returned objects The returned object(s) will be found in the following variable:

◆ EMCSRDF_GLOBAL

Sample objectinterpretation code

REXX - Function 06 - Global Object

glb_0001 = C2X(SUBSTR(global_rec, 1,3)) /* HostComp version(vvrrmm) */glb_0002 = C2X(SUBSTR(global_rec, 4,3)) /* API version (vvrrmm) */glb_0003 =X2D(C2X(SUBSTR(global_rec, 7,2))) /* Msg processing table size*/glb_0004 =X2D(C2X(SUBSTR(global_rec, 9,2))) /* Max query */..glb_0023 = SUBSTR(global_rec,84,1) /* Command Prefix Registered*/

Supported functions 25

Page 26: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

26

How to Use the Interface

Function 07 – Retrieve Serial# ObjectsThis function requires the following variable to be set:

◆ EMCSRDF_CPFX8

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_SERIAL.0

◆ EMCSRDF_SERIAL.i

Sample objectinterpretation code

REXX - Function 07 - Symmetrix Serial Number Object

ser#_0001 = SUBSTR(serial_rec, 1,12) /* Symm Serial Number */ser#_0002 = C2X(SUBSTR(serial_rec,13,2)) /* Major Micro Code Level */ser#_0003 = C2X(SUBSTR(serial_rec,15,2)) /* Minor Micro Code Level */

REXX Interface Programmer’s Reference Guide

Page 27: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 08 – Retrieve SSID ObjectsThis function requires the following variable to be set:

◆ EMCSRDF_CPFX8

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_SSID.0

◆ EMCSRDF_SSID.i

Sample objectinterpretation code

REXX - Function 08 - SSID Object

ssid_0001 = C2X(SUBSTR(ssid_rec, 1,2)) /* SSID */ssid_0002 =X2D(C2X(SUBSTR(ssid_rec, 3,2)))/* number of devices */ssid_0003 = C2X(SUBSTR(ssid_rec, 5,1)) /* SSID Flags */ssid_0004 = C2X(SUBSTR(ssid_rec, 6,1)) /* Reserved */ssid_0005 = C2X(SUBSTR(ssid_rec, 7,2)) /* MVS dev# of 1st device found */ssid_0006 = C2X(SUBSTR(ssid_rec, 9,2)) /* Symmetrix dev# of 1st dev found */ssid_0007 = C2X(SUBSTR(ssid_rec,11,2)) /* MVS dev# of last device found */ssid_0008 = C2X(SUBSTR(ssid_rec,13,2)) /* Symmetrix dev# of last dev found */

Supported functions 27

Page 28: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

28

How to Use the Interface

Function 09 – Retrieve Control Unit ObjectsThis function requires the following variable to be set:

◆ EMCSRDF_CPFX8

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_CNTLUNIT.0

◆ EMCSRDF_CNTLUNIT.i

Sample objectinterpretation code

REXX - Function 09 - Cntlunit Object

cntl_0001 = SUBSTR(cntlu_rec,1,64) /* Director map */cntl_0002 = SUBSTR(cntlu_rec,65,512) /* 64 RA grouping maps */cntl_0003 =RIGHT(STRIP(X2D(C2X(SUBSTR(cntlu_rec,577,4))),"L","0"),8)/* Mem MB */cntl_0004 = C2X(SUBSTR(cntlu_rec,581,2)) /* Control unit type */cntl_0005 = C2X(SUBSTR(cntlu_rec,583,4)) /* Microcode level */..cntl_0017 = SUBSTR(cntlu_rec,929,8) /* Reserved */

REXX Interface Programmer’s Reference Guide

Page 29: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 10 – Retrieve Device ObjectsThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

◆ EMCSRDF_STARTDEV

◆ EMCSRDF_DEVCOUNT

Optionally, the following variables may be set:

◆ EMCSRDF_RDFGRPS

◆ EMCSRDF_SELGROUP

◆ EMCSRDF_INCLUDE_RD10MBRS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_DEVICE.0

◆ EMCSRDF_DEVICE.i

Function 10 will also return BCV information, if available. This data will be contained in the following variables:

◆ EMCSRDF_DEVICE.i.BCVINFO.0

◆ EMCSRDF_DEVICE.i.BCVINFO.i

Sample objectinterpretation code

REXX - Function 10 - Device Object

dev_0001 = C2X(SUBSTR(devobj_rec, 1,4)) /* UCB address */dev_0002 = SUBSTR(devobj_rec, 5,1) /* Device flag byte 1 */dev_0003 = SUBSTR(devobj_rec, 6,6) /* volume serial */..dev_00102= SUBSTR(devobj_rec,270,12) /* RAID5 Member8 */

Supported functions 29

Page 30: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

30

How to Use the Interface

Function 11 – Retrieve RDF Link ObjectsThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variable may be set:

◆ EMCSRDF_RDFGRPS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_LINK.0

◆ EMCSRDF_LINK.i

Sample objectinterpretation code

REXX - Function 11 - Link Object

lnk_0001 =X2D(C2X(SUBSTR(link_rec, 1,4))) /* Total # IOs */lnk_0002 =X2D(C2X(SUBSTR(link_rec, 5,1))) /* Director # */lnk_0003 = SUBSTR(link_rec, 6,1) /* Director Type */lnk_0004 = SUBSTR(link_rec, 7,1) /* Other Side Director # */..lnk_0022 = SUBSTR(link_rec,46,2) /* Other Side group mask */

REXX Interface Programmer’s Reference Guide

Page 31: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 12 – Retrieve Director ObjectsThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variable may be set:

◆ EMCSRDF_RDFGRPS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_DIRECTOR.0

◆ EMCSRDF_DIRECTOR.i

Sample objectinterpretation code

REXX - Function 12 - Director Object

dir_0001 =X2D(C2X(SUBSTR(dir_rec,1,1))) /* Director # */dir_0002 = SUBSTR(dir_rec,2,1) /* Director type */dir_0003 = SUBSTR(dir_rec,3,1) /* Director Online flag */dir_0004 = SUBSTR(dir_rec,4,1) /* Director Connected flag */

Supported functions 31

Page 32: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

32

How to Use the Interface

Function 13 – Wait RoutineThis function requires the following variable to be set:

◆ EMCSRDF_WAIT

Returned objects This function does not return an object. This is a control function which is used to force a wait interval to be executed. The variable EMCSRDF_WAIT must be primed with the amount of seconds to wait. When using Function 2 (Submit Host Component Command), this function is essential to delay the command complete checking.

REXX Interface Programmer’s Reference Guide

Page 33: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 14 – Retrieve RDF Group ObjectThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variables may be set:

◆ EMCSRDF_RDFGRPS

◆ EMCSRDF_SELGROUP

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_RDFGROUP.0

◆ EMCSRDF_RDFGROUP.i

◆ EMCSRDF_RDFGROUPi_STARLCL

◆ EMCSRDF_RDFGROUPi_STARRMT

◆ EMCSRDF_RDFGROUPi_MSCLCL

◆ EMCSRDF_RDFGROUPi_BOXLIST.0

◆ EMCSRDF_RDFGROUPi_BOXLIST.#

Sample objectinterpretation code

REXX - Function 14 - RDF Group Object

grp_0001 =X2D(C2X(SUBSTR(rdfgrp_rec, 1,1))) /* RDF Group */grp_0002 =X2D(C2X(SUBSTR(rdfgrp_rec, 2,1))) /* Other Side RDF Group */grp_0003 = SUBSTR(rdfgrp_rec, 3,12) /* Other Side Serial # */grp_0004 =X2D(C2X(SUBSTR(rdfgrp_rec,15,2))) /* Other Side major rel. */grp_0018 = SUBSTR(rdfgrp_rec,56,10) /* Label */

REXX - Function 14 - STAR Local object /******************************************************************************/lcl_00001= SUBSTR(starl_rec, 1,1) /* SRDFA TYPE */lcl_00002= SUBSTR(starl_rec, 2,1) /* SRDFA ACTIVE */lcl_00003= SUBSTR(starl_rec, 3,1) /* SRDFA TOLERANCE */lcl_00004= SUBSTR(starl_rec, 4,1) /* CLEANUP RUNNING */..lcl_00056=X2D(C2X(SUBSTR(starl_rec,137,4))) /* # SECONDS SINCE */

Supported functions 33

Page 34: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

34

How to Use the Interface

REXX - Function 14 - STAR Remote objectrmt_00001= SUBSTR(starr_rec, 1,1) /* SRDFA TYPE */rmt_00002= SUBSTR(starr_rec, 2,1) /* SRDFA ACTIVE */rmt_00003= SUBSTR(starr_rec, 3,1) /* SRDFA TOLERANCE */rmt_00004= SUBSTR(starr_rec, 4,1) /* CLEANUP RUNNING */..rmt_00056=X2D(C2X(SUBSTR(starl_rec,137,4))) /* # SECONDS SINCE */

REXX - Function 14 - Group MSC Information/******************************************************************************/msl_00001= SUBSTR(mscl_rec, 1,1) /* Version 0-MSC 1-MSC/STAR*/msl_00002= SUBSTR(mscl_rec, 2,1) /* List complete */msl_00003= SUBSTR(mscl_rec, 3,1) /* MVS defined */msl_00004= SUBSTR(mscl_rec, 4,1) /* OS defined */..msl_00019= SUBSTR(mscl_rec, 33,16) /* Reserved */

REXX - Function 14 - Box List Information/******************************************************************************/box_00001= SUBSTR(box_rec, 1,12) /* Primary side Ser# */box_00002= C2X(SUBSTR(box_rec, 13,1)) /* Primary side Group */box_00003= SUBSTR(box_rec, 14,12) /* Secondary side Ser# */box_00004= C2X(SUBSTR(box_rec, 26,1)) /* Secondary side Group */box_00005= SUBSTR(box_rec, 27,6) /* Reserved */

REXX Interface Programmer’s Reference Guide

Page 35: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 15 – Retrieve RDF Group Statistics ObjectsThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variable may be set:

◆ EMCSRDF_RDFGRPS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_RGRPSTAT.0

◆ EMCSRDF_RGRPSTAT.i

Sample objectinterpretation code

REXX - Function 15 - Rgrpstat Object

grs_0001 =X2D(C2X(SUBSTR(rgrpst_rec, 1,1))) /* RDF Group */grs_0002 =X2D(C2X(SUBSTR(rgrpst_rec, 2,1))) /* This side director # */grs_0003 = C2X(SUBSTR(rgrpst_rec, 3,1)) /* Config flags */grs_0004 = C2X(SUBSTR(rgrpst_rec, 4,1)) /* Protocol */..grs_0016 =X2D(C2X(SUBSTR(rgrpst_rec,35,8))) /* Data in counter */

Supported functions 35

Page 36: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

36

How to Use the Interface

Function 16 – Retrieve SRDFA Session Objects

Note: Function 16 is no longer supported. Use “Function 14 – Retrieve RDF Group Object” on page 33 to obtain SRDFA/STAR/MSC information.

REXX Interface Programmer’s Reference Guide

Page 37: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 17 – Retrieve Director Statistics ObjectsThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variable may be set:

◆ EMCSRDF_RDFGRPS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_DSTAT.0

◆ EMCSRDF_DSTAT.i

Note: The Format field must be checked to determine the format of the object.

Sample objectinterpretation code

REXX - Function 17 - Director Statistics Object

sta_0001 =X2D(C2X(SUBSTR(stat_rec, 1,1))) /* Format */sta_0002 =X2D(C2X(SUBSTR(stat_rec, 2,1))) /* Director Type */sta_0003 =X2D(C2X(SUBSTR(stat_rec, 3,1))) /* Director # */sta_0004 = SUBSTR(stat_rec, 4,13) /* Reserved */sta_rec = SUBSTR(stat_rec,17,256) /* Director Statistics Info */

Format 2 director type EA

ea_0001 =X2D(C2X(SUBSTR(sta_rec, 1,4))) /* Number of writes */..ea_0007 =X2D(C2X(SUBSTR(sta_rec,25,4))) /* Device write pendings */

Format 3 director type SA

sa_0001 =X2D(C2X(SUBSTR(sta_rec, 1,4))) /* Number of writes */..sa_00011 =X2D(C2X(SUBSTR(sta_rec,41,4))) /* Device write pendings */

Format 4 director type FA

fa_0001 =X2D(C2X(SUBSTR(sta_rec, 1,4))) /* Number of writes */..fa_00011 =X2D(C2X(SUBSTR(sta_rec,41,4))) /* Device write pendings */

Supported functions 37

Page 38: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

38

How to Use the Interface

Format 6 director type DA

da_0001 =X2D(C2X(SUBSTR(sta_rec, 1,4))) /* Number of I/O's */..da_00013 =X2D(C2X(SUBSTR(sta_rec,49,4))) /* Average fall thru time */

Format 7 director type RF

rf_0001 =X2D(C2X(SUBSTR(sta_rec, 1,4))) /* Number of I/O's */..rf_00014 =X2D(C2X(SUBSTR(sta_rec,55,2))) /* Reserved */

Format 11 director type SE

se_0001 =X2D(C2X(SUBSTR(sta_rec, 1,4))) /* Number of writes */..se_00011 =X2D(C2X(SUBSTR(sta_rec,41,4))) /* Device write pendings */

REXX Interface Programmer’s Reference Guide

Page 39: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 18 - Reply to CommandThis is a control function that does not produce an object. This function is used after a command has indicated that a reply is outstanding. If the variable EMCSRDF_USER_VERIFY is set to Y, the command will be executed. If EMCSRDF_USER_VERIFY is set to N, the command will be denied.

This function requires that the following variables be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_TOKEN

◆ EMCSRDF_REQ_TOKN

◆ EMCSRDF_TRK#

Supported functions 39

Page 40: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

40

How to Use the Interface

Function 19 - Dynamic RDF (DRDF)This is a synchronous request and does not return control to the caller until the command is complete. It accepts a valid SRDF Host Component SC VOL command with a valid dynamic RDF action (CREATEPAIR, DELETEPAIR, MOVEPAIR, SWAP, HDELETEPAIR, HMOVEPAIR, HSWAP, CASSWAP, CASDEL, CASCRE, CASSUSP, and CASRSUM).

The syntax requirements for this command are the same as if the command were entered directly to the Host Component. The actual dynamic RDF work is performed in SCF via a function in the mainframe Symmetrix API. This function uses some of the Host Component common services and requires that Host Component be active.

Command output looks identical to console output, but issuing the command does not utilize console services. Only the SC VOL (DRDF) command can be submitted via this function and proper Host Component security is required.

This function requires that the following variables be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_COMMAND

Returned objects This function does not return an object. It returns formatted command output. Command output will be contained in the stem variable EMCSRDF_LINE.n, with EMCSRDF_LINE.0 containing the amount of stem variables returned.

REXX Interface Programmer’s Reference Guide

Page 41: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 20 - Get Device IdentificationThis function returns object 20, which contains device-specific information. This function requires that the following additional variables be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Must contain a 4-character MVS cuu. Use of a Symmetrix serial number is not supported.

There are no optional variables that can be used.

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_DEVICEID.0

◆ EMCSRDF_DEVICEID.i

Sample objectinterpretation code

/* REXX - Function 20 - Device Identification Object */

did_0001 = SUBSTR(didobj_rec,1 ,12) /* Symm Serial Number */..did_0031 = C2X(SUBSTR(didobj_rec,67 ,2)) /* BASE SYMDEV# */

Supported functions 41

Page 42: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

42

How to Use the Interface

Function 22 - Retrieve Pool General ObjectThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variable may be set:

◆ EMCSRDF_RDFGRPS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_POOL_INFO.0

◆ EMCSRDF_PBASE_INFO.i.0

◆ EMCSRDF_PBASE_INFO.i.ii

REXX Interface Programmer’s Reference Guide

Page 43: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Function 23 - Retrieve Pool Device ObjectThis function requires the following variables to be set:

◆ EMCSRDF_CPFX8

◆ EMCSRDF_SELSYM

Optionally, the following variable may be set:

◆ EMCSRDF_RDFGRPS

Returned objects The returned object(s) will be found in the following variables:

◆ EMCSRDF_POOL_INFO.0

◆ EMCSRDF_PBASE_INFO.i.0

◆ EMCSRDF_PBASE_INFO.i.ii

◆ EMCSRDF_PSTAT_INFO.i.0

◆ EMCSRDF_PSTAT_INFO.i.ii

◆ EMCSRDF_PDEV_INFO.i.0

◆ EMCSRDF_PDEV_INFO.i.ii

Supported functions 43

Page 44: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

44

How to Use the Interface

Return and reason codesThis section provides a list of possible REXX return and reason codes. You should check EMCSRDF_RC in addition to the return code from the call or link to EMCSRDFR.

◆ Table 5 shows the return codes from EMCSRDFR.

◆ Table 6 on page 46 lists the dynamic RDF (DRDF) reason codes.

Table 5 Return codes from EMCSRDFR (page 1 of 3)

Return code Description

0 Success

4 Command complete

8 Command not complete

12 Command not found

16 Max commands queued

20 Host Component not accepting commands

24 Unable to locate Host Component subsystem command prefix. Check that this subsystem is running.

28 Bad function code passed

32 Invalid starting device

36 Unable to initiate cross memory interface

40 Unable to terminate cross memory interface

44 Getmain failed

48 Requested object failed validation

52 I/O error (API error)

56 Abend occurred in cross memory

60 Request to queue command failed

64 Requested Symmetrix below minimum microcode level

68 Unable to locate UCB

72 Unexpected condition

REXX Interface Programmer’s Reference Guide

Page 45: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

73 Segment type invalid

76 SCF Not Found (Server Address Space)

80 EMCSRDF_COMMAND is equal to null or blank

84 Version error

88 Bad RDFGRP passed

92 Command waiting to be verified

96 The UCB check for this device has failed

100 The RDF group specified was not found

104 The RDF group specified is invalid

108 Control unit not founda

112 Discover command timed out

116 Bad command timeout specified

120 Error retrieving the REXX variables

124 Error setting the REXX variables

128 Error validating the REXX environment

132 Command parse error

136 Access denied

140 Invalid command length

144 DRDF failed to change the RDF relationship. See EMCSRDF_DRDFRS for the reason code. EMCSRDF_DRDFRTN_MESSAGE will contain the message text.

148 DRDF Symmetrix commands to sync RDF pairs failed. See EMCSRDF_DRDFRS for the reason code. EMCSRDF_DRDFRTN_MESSAGE will contain the message text.

152 DRDF API error. See EMCSRDF_DRDFRS for the reason code. EMCSRDF_DRDFRTN_MESSAGE will contain the message text.

156 MVS device number not specified

160 Remote request not allowed

Table 5 Return codes from EMCSRDFR (page 2 of 3)

Return code Description

Return and reason codes 45

Page 46: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

46

How to Use the Interface

The following reason codes will be reflected in the REXX variable EMCSRDF_DRDFRS as shown in Table 6.

164 SCF maintenance level too low

168 CREATEPAIR NOCOPY flag prohibited by initialization parameters

172 Unknown error code

176 UCB/VOLSER/CUU not founda

180 SCF not ready (in discovery)

184 SCF not available

188 Device table locked - Retry

192 PC routine abend

a. Applications using EMCSRDFR may receive return code 176 instead of return code 108. Return code 108 is returned by the invoked PC routine. Since the error is detected earlier, EMCSRDFR will not call the PC routine and return code 176 will be returned.

Table 5 Return codes from EMCSRDFR (page 3 of 3)

Return code Description

Table 6 Dynamic RDF (DRDF) reason codes (page 1 of 9)

Reason code Description

1 Invalid multi-hop list specified

2 Invalid RDF group specified

3 Dynamic RDF not supported on local Symmetrix

4 Dynamic RDF not supported on remote Symmetrix

5 Local device(s) invalid

6 Remote device(s) invalid

7 Local device not capable

8 Remote device not capable

9 Local device neither R1 nor R2

10 Remote device neither R1 nor R2

11 Local and remote devices both R1 or both R2

12 Swap with different size devices

REXX Interface Programmer’s Reference Guide

Page 47: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

13 Swap with local concurrent R1

14 Swap with remote concurrent R1

15 TF/SNAP lock on local device

16 TF/SNAP lock on remote device

17 Local device(s) in use by another process

18 Remote device(s) in use by another process

19 FBA meta discovery overflow

20 FBA meta devs call failed

21 Device count is zero

22 Device status call failed

23 RDF pair is ready on the link

24 Local device has invalid tracks, force not specified

25 Remote device has invalid tracks, force not specified

26 FBA meta local device CB invalid

27 FBA meta remote device CB invalid

28 FBA meta invalid run

29 FBA meta members are different sizes

30 FBA meta head not in run

31 FBA meta mismatched members

32 FBA meta stripe size mismatch

33 FBA meta too many runs generated

34 FBA meta CB is invalid

35 FBA meta member has invalid tracks, force not specified

36 Logic error

37 R2 is already RDF

Table 6 Dynamic RDF (DRDF) reason codes (page 2 of 9)

Reason code Description

Return and reason codes 47

Page 48: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

48

How to Use the Interface

38 R1 is already RDF and dynamic concurrent not supported

39 R1 is already RDF in specified group

40 R1 is already concurrent RDF

41 Local device not capable of becoming specified type

42 Remote device not capable of becoming specified type

43 Mismatched emulation

44 R2 cannot be larger than R1

45 All mirror positions in use for local device

46 All mirror positions in use for remote device

47 Group not specified for concurrent device

48 RDF-SUSPEND parameter error in run

49 RDF-SUSPEND failed

50 Remote serial# invalid

51 Device range is too large

52 Device number is invalid

53 Action failed for device

54 RDF pair not suspended

55 Bad RDF group specified

56 Device already RDF

57 RDF polarity error

59 Devices not dynamic

60 Undo action failed

61 Microcode level too low

62 DYNRDF internal error

63 Concurrent RDF devs found

Table 6 Dynamic RDF (DRDF) reason codes (page 3 of 9)

Reason code Description

REXX Interface Programmer’s Reference Guide

Page 49: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

64 Farpoint not allowed

65 Invalid flags requested

66 Device held for TF SNAP

67 Invalid multi-execute mask

68 Split CE+DE not allowed

69 PPRC copy direction not set

70 Pair mismatch

71 DRDF RAID_S not supported

72 PPRC reestablish no R1

73 PPRC R1 not TNR

74 Vault device cannot be R2

75 Config mismatch

76 FBA meta mismatch

77 Duplicate device specification

78 Swap R2 is larger than R1

79 SYMMPURGE active on device

80 Cannot swap PPRC devices

81 Device in consistency group

82 Already concurrent RDF

83 RDF mirror exists in group

84 RDF flags mismatch

85 R2 already RDF

86 Already RDF device

87 Swap not allowed in SRDFA group

88 Swap with write pendings

Table 6 Dynamic RDF (DRDF) reason codes (page 4 of 9)

Reason code Description

Return and reason codes 49

Page 50: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

50

How to Use the Interface

89 Tolerance or CEXMPT not set

90 SRDF/A mixed RDF devices

91 No PPRC with SRDF/A

92 No concurrent SRDF/A mirrors

93 SRDF/A activation lock held

94 DEVICE is XRC

95 SRDF/A I/Os outstanding

96 R2 restore not complete

97 Cleanup running

98 No concurrent DRDF on BCV

99 SRDF/A state table locked

100 DEV# too high for RA

101 Group is Star mode

102 CKD meta mirror mask conflict

103 Inconsistent syscall run

104 R21 device will result but ADCOPY_DISK not specified

105 R21 dev will result but Cascaded SRDF not licensed

106 MOVEPAIR denied, SRDF/A active on target RDF group

107 Invalid failover

108 Invalid PPRC reestablish

109 Invalid PPRC failback

110 No PPRC failover/failback

111 BCV with three mirrors

112 SRDF/A multiple CPGs

113 Flags invalid for cascading

Table 6 Dynamic RDF (DRDF) reason codes (page 5 of 9)

Reason code Description

REXX Interface Programmer’s Reference Guide

Page 51: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

114 Cascading invalid with ESCON

115 No cascaded PPRC devices

116 Invalid cascaded R1 mode

118 R21 device not valid for ESCON

119 R21 device cannot be PPRC

120 R21 dev will result, not ADCOPY-DISK mode

121 R22 dev will result. R22 devices not supported

122 Device in pair already has remote mirror in pair

123 Action denied, target group not online

124 RDF group not defined

125 Differential specified but group not Star recovery

126 Cannot ascertain SRDF/A group status

127 R21 device will result, not supported

128 R21 not allowed <5x73

129 R22 not allowed <5x74

130 R22 not allowed, different base R1 devices

131 Partner of R1 not cascaded

132 R1 and R2 on same Symmetrix

133 No table memory

134 Unable to set environment 2 devices

135 Local device not R1 as required

136 Suspend failed during CASSUSP

137 Resume failed during CASRSUM

138 Local device not R2 as required

201 Other process lock query failed

Table 6 Dynamic RDF (DRDF) reason codes (page 6 of 9)

Reason code Description

Return and reason codes 51

Page 52: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

52

How to Use the Interface

202 TF/SNAP lock query failed

203 TF/SNAP lock free failed

299 Syscall error

300 Invalid local device in range

301 Invalid remote device in range

302 Specified group does not match existing RDF mirrors

303 Starting dev# for range is beyond CNTLUNIT boundary

304 Ending dev# for range is beyond CNTLUNIT boundary

305 Error checking device status

306 Device did not change to expected state

307 Existing RDF mirror not TNR

308 Device range too high for config

310 Local device Has Active TimeFinder dataset snap

311 Remote device has active TimeFinder dataset snap

312 Number of RDF groups exceeds max

313 Unable to determine remote group

314 CREATEPAIR with KEEPR2, R2 not TNR

315 Device in use by LDMF

316 Group not Star, NOCOPY init parameter not YES

317 Path invalid or link down

318 CREATEPAIR with R2 smaller than R1

319 No R11 identified as source for R22 (neither of allowed configurations)

320 Invalid topology for creating R22 (attempt via SWAP)

321 Device not blocked

322 R22 mirror partners are mirrors on same R11

Table 6 Dynamic RDF (DRDF) reason codes (page 7 of 9)

Reason code Description

REXX Interface Programmer’s Reference Guide

Page 53: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

323 CREATEPAIR, SWAP, DELETEPAIR requested for a diskless device

324 CASCRE requested with R1 or R2 diskless

325 CREATEPAIR requested with R1 and R2 both diskless

326 MOVEPAIR source or target group not defined

327 MOVEPAIR remote RDF groups on different Symmetrix systems

328 MOVEPAIR local or remote Symmetrix not 5x73 or higher

329 CREATEPAIR denied, SRDF/A active on specified RDF group

330 R22 device not validated, cannot be activated

331 Inline error

332 API caller error - return area too small

333 CASxxxx Env1-Env2 R21 eligible devices mismatch

334 R21 remote mirrors on same Symmetrix

335 MOVEPAIR source and target groups the same

336 CASCRE device to be R21 has remote mirror

337 CREATEPAIR, NOCOPY/DIFFERENTIAL mutually exclusive

338 MOVEPAIR device has remote mirror in target group

339 Attempt to mix diskless/non-diskless devices in SRDF/A

340 Operator verification denied, required for action

341 Remote Symmetrix mismatch, SCF refresh required

342 Cannot have two RDF relationships between same devices

343 R2 device is write-enabled

344 No eligible devices found

345 Half action not allowed on SRDF/A group

346 CREATEPAIR invalid remote range break

347 SRDF/A on multiple remote mirrors

Table 6 Dynamic RDF (DRDF) reason codes (page 8 of 9)

Reason code Description

Return and reason codes 53

Page 54: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

54

How to Use the Interface

348 DELETEPAIR attempted while SRDF/A cleanup running

349 Group Star recovery but STAR option not specified

350 All local mirrors have invalid tracks

351 R1 invalid tracks on R2 remote partner

354 Cache partition group mismatch

355 Enginuity 5773 R22 support patch missing

356 Device is a RAID10 member, skipped

999 FC21 abend ESTAE recovery

Table 6 Dynamic RDF (DRDF) reason codes (page 9 of 9)

Reason code Description

REXX Interface Programmer’s Reference Guide

Page 55: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

Example programsThe sample programs show how to set up and call the Host Component REXX API. With the API, you can retrieve data objects for report or interrogation purposes and submit Host Component commands.

Before you can use the Host Component REXX API samples, you must copy them to the appropriate runtime datasets.

◆ Copy the following sample REXX EXECs to the ResourcePak Base ISPELIB: APIC, APIR, APIV, CALLAPIC, CALLAPID, CALLAPIR, CALLAPIV, and APITEST.

◆ Copy the following sample panels to the ResourcePak Base ISPPLIB: APIDP, APITP, and HAPIR.

Note: The clist and JCL members listed in Table 7 require site-specific tailoring. You will need to provide information such as the Host Component command prefix, the Host Component loadlib that contains EMCSRDFR, the SCF prefix, and possibly others.

The clist members below are actually short REXX setup programs which are used to invoke the sample programs. Each clist and JCL has its own unique requirements. The samples below are documented in the members themselves.

Table 7 lists and briefly describes the sample programs. These examples can be found in the installed SAMPLIB. These samples provide code which illustrates how to use each function and how to process the data returned from each function.

Table 7 Example programs (page 1 of 3)

Program Description

APIC A sample clist which invokes CALLAPIC.

APID A sample clist that invokes CALLAPID.

APIDP A sample panel used to produce the input to CALLAPID.

APIR A sample clist that invokes CALLAPIR.

APITEST A sample program that uses the Host Component REXX API to illustrate how to build a user interface.

APITP A sample panel used to produce the input to CALLAPIR.

Example programs 55

Page 56: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

56

How to Use the Interface

APIV A sample clist that invokes CALLAPIV.

APIVJ A sample JCL member that invokes CALLAPIV.

CALLAPIC A sample program which calls APITEST and uses Function 2 to submit a command and Function 18 to respond to a command prompt.

CALLAPID A sample program that calls APITEST and uses the raw unformatted data to produce a custom object display command.

CALLAPIR A sample program that calls APITEST and uses the raw unformatted data to produce the desired results.

CALLAPIV A sample program that builds a custom display command. This REXX can run online or batch.

EHCJAPIS Sample JCL to invoke EHCXSEL.

EHCJSFxx JCL to execute the EHCXSF## sample programs.

EHCJXCFG Sample JCL to invoke EHCXSCFG.

EHCPHSEL Help panel for EHCPSEL.

EHCJXF19 Invokes EHCXSF19 in batch mode.

EHCPSEL A sample panel used to produce the input to EHCXSEL.

EHCXCSEL A sample REXX clist used to invoke EHCXSEL.

EHCXSCFG A sample program that shows how to build an auto configurator.

EHCXSEL A sample REXX program to build a custom select command for display. It takes as input a statement to parse and calls EMCSRDFR to retrieve device records. The records are filtered based on the supplied criterion and displayed. This sample can be invoked via a panel, JCL, or directly.

EHCXSF01 Sample program to execute Function 01.

EHCXSF06 Sample program to execute Function 06.

EHCXSF07 Sample program to execute Function 07.

EHCXSF08 Sample program to execute Function 08.

EHCXSF09 Sample program to execute Function 09.

EHCXSF10 Sample program to execute Function 10.

EHCXSF11 Sample program to execute Function 11.

EHCXSF12 Sample program to execute Function 12.

Table 7 Example programs (page 2 of 3)

Program Description

REXX Interface Programmer’s Reference Guide

Page 57: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

How to Use the Interface

EHCXSF14 Sample program to execute Function 14.

EHCXSF15 Sample program to execute Function 15.

EHCXSF17 Sample program to execute Function 17.

EHCXSF19 Sample program to execute Function 19.

EHCXSF20 Sample program to execute Function 20.

EHCXSF22 Sample program to execute Function 22.

EHCXSF23 Sample program to execute Function 23.

HAPIR The help panel for APIR.

Table 7 Example programs (page 3 of 3)

Program Description

Example programs 57

Page 58: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

58

How to Use the Interface

Object headersTo allow for expansion and modification of the objects without adversely affecting the applications using these objects, each object has an object header (OBJECTH). This header is used to identify the version of the object.

Note: OBJECTH in the product SAMPLIB contains the object interpretation code.

OBJECTH

Sample object interpretation code:

REXX - Object Header

hdr_0001 = SUBSTR(object_hdr,1 ,8) /* Object ID */hdr_0002 = SUBSTR(object_hdr,9 ,2) /* Function Code */hdr_0003 =X2D(C2X(SUBSTR(object_hdr,11,2))) /* Version */hdr_0004 =X2D(C2X(SUBSTR(object_hdr,13,2))) /* Header Length */hdr_0005 =X2D(C2X(SUBSTR(object_hdr,15,2))) /* Object Length */hdr_0006 =X2D(C2X(SUBSTR(object_hdr,17,16))) /* Unused */

REXX Interface Programmer’s Reference Guide

Page 59: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

3Invisible Body Tag

This chapter lists the Host Component variables returned as objects.

◆ Introduction ........................................................................................ 60◆ Variables .............................................................................................. 61◆ Object cross-reference ........................................................................ 62

REXX Variables

REXX Variables 59

Page 60: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

60

REXX Variables

IntroductionThe REXX interface provides access to Host Component variables returned as string data called objects. The interface can process Host Component commands and replies. The ready-to-use APITEST application illustrates example command usage. The REXX code to interpret the returned object can be found in the OBJECT## members.

REXX Interface Programmer’s Reference Guide

Page 61: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

VariablesUse the .0 variable to determine how many records were generated. The value in this field is used to determine the number of the records in the stem as follows:

EMCSRDF_object_name.0 EMCSRDF_object_name.#

Where object_name is the object name and # is each instance of the object in the stem.

You can use the object interpretation code to format your own variables using these records.

Variables 61

Page 62: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

62

REXX Variables

Object cross-referenceYou can use the object interpretation members (OBJECTXX) in the product SAMPLIB in conjunction with this cross-reference to build custom applications.

The following tables list the offset within the returned object along with the length of the field, the type of field (C=character, X=binary), and a brief description of the field:

◆ Table 8, “Function ALL, Object name: HEADER,” on page 63

◆ Table 9, “Function 01, Object name: SUBSYS,” on page 64

◆ Table 10, “Function 06, Object name: GLOBAL,” on page 65

◆ Table 11, “Function 07, Object name: SERIAL,” on page 67

◆ Table 12, “Function 08, Object name: SSID,” on page 68

◆ Table 13, “Function 09, Object name: CNTLUNIT,” on page 69

◆ Table 14, “Function 10, Object name: DEVICE,” on page 71

◆ Table 15, “Function 11, Object name: LINK,” on page 87

◆ Table 16, “Function 12, Object name: DIRECTOR,” on page 89

◆ Table 17, “Function 14, Object name: RDFGROUP (5x67 and higher microcode level),” on page 90

◆ Table 18, “Function 15, Object name: RGRPSTAT (5x67 and higher microcode level),” on page 97

◆ Table 19, “Function 17, Object name: DSTAT,” on page 98

◆ Table 20, “Function 20, Object name: DEVICE ID,” on page 102

◆ Table 21, “Function 22, Object name: Pool General Information,” on page 104

◆ Table 22, “Function 23, Object name: Pool Status Information,” on page 105

REXX Interface Programmer’s Reference Guide

Page 63: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 8 Function ALL, Object name: HEADER

Offset Length Type Description

1 8 C Object ID

9 2 C Function code

11 2 X Version

13 2 X Header length

15 2 X Object length

17 16 X Reserved

32 Object length

Object cross-reference 63

Page 64: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

64

REXX Variables

Table 9 Function 01, Object name: SUBSYS

Offset Length Type Description

1 4 C Subsystem name

5 2 C Command character(s)

7 3 X Host Component version (vvrrmm)

10 8 C 8-character command prefix

18 7 X Reserved

24 Object length

REXX Interface Programmer’s Reference Guide

Page 65: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 10 Function 06, Object name: GLOBAL (page 1 of 2)

Offset Length Type Description

1 3 X Host Component version (vvrrmm)

4 3 X API version (vvrrmm)

7 2 X Message processing table size

9 2 X Max query

11 2 X Maxcmdq

13 4 C Subsystem name

17 2 C Reserved

19 8 C SAF class name

27 44 C SAF resource name

71 1 X Config security level 1-SAF 2-ANY 3-MASTER 4-SAF,MASTER

72 1 X Query security level 1-SAF 2-ANY 3-MASTER 4-SAF,MASTER

73 1 C Extended SAF flag (Y|N)

74 1 X Current synch direction 0-NONE 1-R1>R2 2-R1<R2

75 1 X Allowed synch direction 0-NONE 1-R1>R2 2-R1<R2 3-R1<>R2

76 1 C Message processing (Y|N)

Object cross-reference 65

Page 66: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

66

REXX Variables

Offset Length Type Description

77 1 C Operator verify A-ALL N-NO C-CRITICAL

78 1 C Config FBA (Y|N)

79 1 C Message Labels S-SYMM SERIAL# M-MVS CUU C-COMMAND# N-NOT SPECIFIED

80 1 C Show command on EMCMN00I (Y/N)

81 1 C Abort command if subtask busy (Y/N)

82 1 C Command details (Y/N)

83 1 C Sort by 0-DFLT (BY SYMDV#) 1-SORT_BY_MVSCUU 2-SORT_BY_VOLSER 3-SORT_BY_COMMAND)

84 8 C Command prefix chars

92 1 C Command prefix registered (Y/N)

93 1 C User command verification (Y/N)

94 5 C User command verify timeout MM:SS

99 6 X Reserved

104 Object length

Table 10 Function 06, Object name: GLOBAL (page 2 of 2)

REXX Interface Programmer’s Reference Guide

Page 67: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 11 Function 07, Object name: SERIAL

Offset Length Type Description

1 12 C Symmetrix serial number

13 2 X Major microcode level

15 2 X Minor microcode level

16 Object length

Object cross-reference 67

Page 68: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

68

REXX Variables

Table 12 Function 08, Object name: SSID

Offset Length Type Description

1 2 X SSID

3 2 X Number of devices

5 1 X SSID Flags 80-EMC CONTROLLER 40-EMC SYM3 20-3990 10-PHY DEV# VALID 08-EMC SYM4 04-EMC SYM5 02-EMC SYM6 01-2105 (3990 will also be set)

6 1 X SSID Flags2 80-EMC SYM3 40-EMC SYM4 20-EMC SYM5 10-EMC SYM6 08-EMC SYM7 04-EMC SYM8

7 2 X MVS device number of 1st device found

9 2 X Symmetrix device number of 1st device found

11 2 X MVS device number of last device found

13 2 X Symmetrix device number of last device found

15 12 C Symmetrix serial number

27 6 X Reserved

32 Object length

REXX Interface Programmer’s Reference Guide

Page 69: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 13 Function 09, Object name: CNTLUNIT (page 1 of 2)

Offset Length Type Description

1 64 C Director map 1-64C-CA DIRECTOR E-EA DIRECTORD-DA DIRECTORS-SA DIRECTOR W-DAF DIRECTOR1-RA1 DIRECTOR2-RA2 DIRECTOR F-FIBER RA DIRECTORA-FIBRE SA G-FIBRE GIGE (RA MODE)I-FICON DIRECTORBLANK-UNUSED DIRECTOR

65 512 X 64 RDF grouping mapsFor each RDF group (0-63), contains an 8-byte list of director numbers associated with that RDF group. Note that directors are numbered starting with 1. A director number of 0 terminates the list. If the first byte of a group map is 0, then there are no directors assigned to that group.

577 4 X Memory MB

581 2 X Control unit type

583 4 X Microcode level (MAJOR/MINOR REL)

587 2 X Number of volumes

589 2 X Number of RAID groups

591 12 C Serial number

603 1 X Flag byte 04-LINKS-DOMINO02-T3 (EXTENDED) LINK

604 1 X Symmetrix type

605 1 C Sync direction 0-NONE 1-R1>R2 2-R1<R2 4-GLOBAL

Object cross-reference 69

Page 70: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

70

REXX Variables

Offset Length Type Description

606 1 X Number of SSIDs

607 256 C Array of SSID entries

863 64 C RDF group sync directions0 - None1 - R1>R22 - R1<R24 - GLOBAL5 - CNFG

927 2 X Reserved

929 1 C RAID 5 configured (Y/N)

930 1 C SRDF/A supported (Y/N)

931 1 C RAID 6 configured (Y/N)

932 5 X Reserved

937 4 X Number of SSID2s

941 4 X Reserved

945 1024 X SSID2 array256 4-byte entries. The SSID is contained in the first two bytes of each entry.

1969 256 C RDF group sync directions0 - None1 - R1>R22 - R1<R24 - GLOBAL5 - CNFG

2225 4 X Reserved

2229 2048 X RDF group director list256 8-byte entries. Each entry contains a list of director numbers associated with that group. Director numbers start at 1. A director number of 0 terminates the list. If the 1st byte of an entry is 0, then no directors are associated with this group.

4277 64 C Director map 65-128

4341 4 X Reserved

4344 Object length

Table 13 Function 09, Object name: CNTLUNIT (page 2 of 2)

REXX Interface Programmer’s Reference Guide

Page 71: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 14 Function 10, Object name: DEVICE (page 1 of 16)

Offset Length Type Description

1 4 X UCB address

Note: To determine if the MVS device number (at offset 45,2) is valid, you can test this field. If the field is 0, then there is no corresponding MVS device.

5 1 X Device flag byte 180-DEVICE ENTRY IS VALID 10-UCB IS VALID 04-VALIDATE COMMAND ISSUED 02-REFRESH COMMAND ISSUED 01-RFR-RSUM COMMAND ISSUED

6 6 C Volume serial

12 1 X Device address on channel

13 4 X Number of M1 invalids

17 4 X Number of M2 invalids

21 4 X Number of M3 invalids

25 4 X Number of M4 invalids

29 4 X Number of R1 invalid tracks

33 4 X Number of R2 invalid tracks

37 4 X Write pending count

41 4 X Max adcopy skew

45 2 X MVS device number

47 2 X Reserved - Replaced by field at offset 544

49 2 X Symmetrix device number

51 2 X Interface address of M1

53 2 X Interface address of M2

55 2 X Interface address of M3

Object cross-reference 71

Page 72: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

72

REXX Variables

Offset Length Type Description

57 2 X Interface address of M4 Format of the interface fields are as follows: DDXI - Where DD is the director number, X is C,D,E, or F, and I is X'0'-X'F'. If XI = X'00' then use the interface fields at offset 288.

59 2 X RAID group

61 1 X RDF group x'FF' indicates no group assigned

62 1 X R1 mirror # (or 0)

63 1 X R2(1) mirror # (or 0)

64 1 X R2(2) mirror # (or 0)

65 2 C Mirror type: PV - PowerVault DR - Disaster recovery RS - Raid L1 - Local R1 L2 - Local R2 BC - BCV R1 - R1 R2 - R2 A1 - SRDFA R1 A2 - SRDFA R2 FS - File system CD - COVD VD - Virtual SV - Log save TD - Thin device (back-end) TH - Thin device (front-end) ML - Mirror localIL - Link blocked11 - R11 21 - R2122 - R22

67 1 X RAID data mirror #

68 1 X Parity mirror #

Table 14 Function 10, Object name: DEVICE (page 2 of 16)

REXX Interface Programmer’s Reference Guide

Page 73: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

Note: For Mirror Disk Flag 1, flag bytes 20 and 10 set will be set for Cascaded SRDF devices.

69 1 X Mirror 1 - Disk Flag 120-RDF PRIMARY DEVICE (R1) 10-RDF SECONDARY DEVICE (R2) 08-HOT SPARE 04-RAID DEVICE 02-RAID PARITY DEVICE

70 1 X Mirror 2 - Disk Flag 120-RDF PRIMARY DEVICE (R1)10-RDF SECONDARY DEVICE (R2)08-HOT SPARE 04-RAID DEVICE 02-RAID PARITY DEVICE

71 1 X Mirror 3 - Disk Flag 120-RDF PRIMARY DEVICE (R1)10-RDF SECONDARY DEVICE (R2)08-HOT SPARE 04-RAID DEVICE 02-RAID PARITY DEVICE

72 1 X Mirror 4 - Disk Flag 20-RDF PRIMARY DEVICE (R1)10-RDF SECONDARY DEVICE (R2)08-HOT SPARE 04-RAID DEVICE 02-RAID PARITY DEVICE

Note: For Mirror Disk Flag 2, if bits 01 and 02 are not set, then the device is a CKD.

73 1 X Mirror 1 - Disk Flag 202-BCV DEVICE 01-FBA DEVICE

74 1 X Mirror 2 - Disk Flag 2 02-BCV DEVICE 01-FBA DEVICE

Table 14 Function 10, Object name: DEVICE (page 3 of 16)

Object cross-reference 73

Page 74: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

74

REXX Variables

Offset Length Type Description

75 1 X Mirror 3 - Disk Flag 202-BCV DEVICE 01-FBA DEVICE

76 1 X Mirror 4 - Disk Flag 2 Not 01 or 02 - CKD02-BCV DEVICE 01-FBA DEVICE

77 1 X Mirror 1 - Disk Flag 380-R2 NR IF INVTRKS 20-WORM DEVICE 10-SHARED CKD/FBA DEVICE 08-OPTIMIZER DRV DEVICE 04-META DEVICE

78 1 X Mirror 2 - Disk Flag 380-R2 NR IF INVTRKS 20-WORM DEVICE 10-SHARED CKD/FBA DEVICE 08-OPTIMIZER DRV DEVICE 04-META DEVICE

79 1 X Mirror 3 - Disk Flag 380-R2 NR IF INVTRKS 20-WORM DEVICE 10-SHARED CKD/FBA DEVICE 08-OPTIMIZER DRV DEVICE 04-META DEVICE

80 1 X Mirror 4 - Disk Flag 380-R2 NR IF INVTRKS 20-WORM DEVICE 10-SHARED CKD/FBA DEVICE 08-OPTIMIZER DRV DEVICE 04-META DEVICE

81 1 X Disk Flag 6 80-M1 CONFIGURED AT IML 40-M2 CONFIGURED AT IML 20-M3 CONFIGURED AT IML 10-M4 CONFIGURED AT IML

Table 14 Function 10, Object name: DEVICE (page 4 of 16)

REXX Interface Programmer’s Reference Guide

Page 75: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

82 1 X Disk Flag 7 - Device Configuration Settings40-SYMMETRIX FILE SYSTEM DEVICE 10-DYNAMIC R2 DEVICE 08-DYNAMIC R1 DEVICE

83 1 X Device status Flag 1 80-READY 40-RDF NOT READY 10-DOMINO MODE 08-M1 CURRENTLY CONFIGURED 04-M2 CURRENTLY CONFIGURED 02-M3 CURRENTLY CONFIGURED 01-M4 CURRENTLY CONFIGURED

84 1 X Device status Flag 2 80-M1 NOT READY 40-M1 WR DISABLED 20-M2 NOT READY 10-M2 WR DISABLED 08-M3 NOT READY 04-M3 WR DISABLED 02-M4 NOT READY 01-M4 WR DISABLED

85 1 X Device status flag 3 20-RAID DEVICE 02-1 JOURNAL1 MODE 0 JOURNAL0 MODE 01-RDF ITRK MODE

86 1 X Device status Flag 4 80-BCV NR 40-DEV IN CONGROUP 20-SPIN UP W/DD 08-FILE SNAP DEV (SRC) 04-FILE SNAP DEV (TGT) 02-MIRROR NOT READY (USER) 01-CGROUP NOT READY (TRIPPED)

Table 14 Function 10, Object name: DEVICE (page 5 of 16)

Object cross-reference 75

Page 76: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

76

REXX Variables

Offset Length Type Description

87 1 X Device Flag 2 08-SOURCE NOT READY 04-TARGET NOT READY 02-SRC WR-DISABLED 01-TGT WR-DISABLED

88 1 X Mirror1 Remote mirror state80-NOT READY 40-WRITE DISABLED 20-ADAPTIVE COPY DISK MODE 10-ADCOPY WRITE PENDING MODE08-RMT MIRROR POSITION VALID

89 1 X M1 Remote Symmetrix RDF device group

90 2 X M1 Remote Symmetrix device number

92 4 X M1 Remote device invalid track count

96 4 X M1 adcopy write pending count

100 4 X M1 4 bytes unused

104 1 X Mirror2 Remote mirror state80-NOT READY 40-WRITE DISABLED 20-ADAPTIVE COPY DISK MODE 10-ADCOPY WRITE PENDING MODE08-RMT MIRROR POSITION VALID

105 1 X M2 Remote Symmetrix RDF device group

106 2 X M2 Remote Symmetrix device number

108 4 X M2 Remote device invalid track count

112 4 X M2 adcopy write pending count

116 4 X M2 4 bytes unused

Table 14 Function 10, Object name: DEVICE (page 6 of 16)

REXX Interface Programmer’s Reference Guide

Page 77: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

120 1 X Mirror3 Remote mirror state80-NOT READY 40-WRITE DISABLED 20-ADAPTIVE COPY DISK MODE 10-ADCOPY WRITE PENDING MODE08-RMT MIRROR POSITION VALID

121 1 X M3 Remote Symmetrix RDF device group

122 2 X M3 Remote Symmetrix device number

124 4 X M3 Remote device invalid track count

128 4 X M3 adcopy write pending count

132 4 X M3 4 bytes unused

136 1 X Mirror4 Remote mirror state80-NOT READY 40-WRITE DISABLED 20-ADAPTIVE COPY DISK MODE 10-ADCOPY WRITE PENDING MODE08-RMT MIRROR POSITION VALID

137 1 X M4 Remote Symmetrix RDF device group

138 2 X M4 Remote Symmetrix device number

140 4 X M4 Remote device invalid track count

144 4 X M4 adcopy write pending count

148 4 X M4 4 bytes unused

152 1 X Reserved

153 1 X RDF state R2 state flags 20-R2 IN R/W MODE10-R2 NOT READY

154 1 X Flagr80-RAID10 HEAD DEV 40-RAID10 MEMBER DEV 20-META HEAD DEV 10-META MEMBER DEV

Table 14 Function 10, Object name: DEVICE (page 7 of 16)

Object cross-reference 77

Page 78: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

78

REXX Variables

Offset Length Type Description

155 1 X Miscellaneous device flags80-M1 IS SYNCH'D 40-M2 IS SYNCH'D 20-M3 IS SYNCH'D 10-M4 IS SYNCH'D 08-FILE SNAP DEV (SRC) 04-FILE SNAP DEV (TGT) 02-MIRR NOT READY (USER) 01-CGRP NOT READY (TRIPPED)

156 1 X Device Status Flag 5 80-WRITE & VERIFY MODE 40-BCV DEVICE 20-PREFETCH TAIL CUT DISABLE 10-PREFETCH MODE ENABLED08-DISABLE SCSI TAG COMMAND 04-DISABLE AUTO BUFR RATIO ALGOR 02-WRITE VERIFY COMPARE MODE 01-DEVICE IN RAID GRP

157 1 X Device Status Flag 6 80-HA NON-EXCLUSIVE ACCESS 40-FILE SYSTEM DEVICE 20-ORACLE CHECKSUM DEV 10-DYNAMIC R2 DEVICE 08-DYNAMIC R1 DEVICE 04-DATA STRIPING DEV 02-520 BYTES/BLOCK LOW-LVL FMT 01-REAL TIME BEHAVIOR

158 1 X Device flag 3 20-OPERATING IN PPRC MODE

159 1 X Device status flag 7 40-THIN DEVICE (BACK-END) 20-THIN DEVICE (FRONT-END) 10-DISKLESS DEVICE (Enginuity 5874 or later) 08-POWER VAULT DEVICE 04-COVD DEVICE 02-BACK-END STRIPED DEV 01-DUMMY DEVICE ENTRY

Table 14 Function 10, Object name: DEVICE (page 8 of 16)

REXX Interface Programmer’s Reference Guide

Page 79: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

160 1 X Config mist flag2 20-META HEAD DEVICE 10-META DEVICE 08-ECA DEFINED 04-LOG DEVICE 02-VIRTUAL DEVICE 01-STRIPED CKD DEVICE

161 1 C SRDFA device (Y/N)

162 1 C SRDFA device active (Y/N)

163 2 X Reserved

165 4 X SRDFA device # of slots active

169 4 X SRDFA device # of slots notactive

173 1 C RAID5 device ? (Y/N)

174 1 C RAID5 device ready state N-NOT READY 1-DEGRADED MODE: 1 DEV READY, 1 MBR NOT READY, SPARE NOT READY 2-DEGRADED MODE: 2 DEV READY, 1 MBR NOT READY, SPARE READY R-DEVICE READY: DEV READY, MBRS READY, SPARE NOT READYS-DEV & SPARE READY: DEV READY, MBRS READY, SPARE READY

175 1 C RAID5 device ReadWrite state D-DEV WRT DISABLED SPARE WRT DISABLED 1-DEV WR ENABLED ONE MBR WR DISABLED 2-DEV WR ENABLED 1 MBR WR DISABLED SPARE WR ENABLED E-DEVICE AND MEMBERS WR ENABLED SPARE WR DISABLED S-DEVICE, MEMBERS

176 1 C RAID5 device spare info valid

177 1 C RAID5 device spare invoked

178 1 X RAID5 device MBR# spare invoked

179 1 X RAID5 device MIR# spare invoked

Table 14 Function 10, Object name: DEVICE (page 9 of 16)

Object cross-reference 79

Page 80: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

80

REXX Variables

Offset Length Type Description

180 1 X RAID5 device MIR# of spare

181 1 X RAID5 device director for spare

182 1 C RAID5 device copy direction 0 - Copy to spare1 - Copy from spare

183 1 X RAID5 device MEM# failing device FF - if no failing device

184 1 X RAID5 MIR# for RAID5 device

185 1 X RAID5 MIR# held for RAID5 device

186 1 X DA for invoked spare

187 1 X IF for invoked spare

188 1 X Invoked spare IF address

189 2 X RAID5 stripe width

191 2 X Reserved

193

1111121121

CCCCXXXXXX

RAID5 Member 1 information. Each RAID5 member will have the following format:Member ready (Y/N) Spare ready (Y/N)Member R/W (Y/N)Spare R/W (Y/N)Director number Target number - Lower 2 bytes of a 4-byte device numberInterface addressDevice addressTarget number - Upper 2 bytes of a 4-byte device numberReserved

205 RAID5 Member 2 infomation

217 RAID5 Member 3 information

229 RAID5 Member 4 information

241 RAID5 Member 5 information

253 RAID5 Member 6 information

265 RAID5 Member 7 information

Table 14 Function 10, Object name: DEVICE (page 10 of 16)

REXX Interface Programmer’s Reference Guide

Page 81: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

277 RAID5 Member 8 information

289 2 X M1 interface address

291 2 X M2 interface address

293 2 X M3 interface address

295 2 X M4 interface addressFormat of the interface fields is as follows: X0IF - Where X is C,D,E,F,G or H and IF is X'00'-X'11'

297 1 C RAID6 device Y/N

298 1 C RAID6 ready N/1/2/R

299 1 C RAID6 device R/W D/1/2/E

300 1 X RAID6 device data mirror #

301 2 X RAID6 stripe width

303 2 X Reserved

305

11121123

CCXXXXXX

RAID6 Member 1 information. Each RAID6 member will have the following format:Member ready Y/NMember R/W Y/NMember director numberTarget number - Lower 2 bytes of a 4-byte device numberMember InterfaceMember IF Addr Target number - Upper 2 bytes of a 4-byte device numberReserved

317 12 RAID6 Member 2 information

329 12 RAID6 Member 3 information

341 12 RAID6 Member 4 information

353 12 RAID6 Member 5 information

365 12 RAID6 Member 6 information

377 12 RAID6 Member 7 information

389 12 RAID6 Member 8 information

401 12 RAID6 Member 9 information

Table 14 Function 10, Object name: DEVICE (page 11 of 16)

Object cross-reference 81

Page 82: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

82

REXX Variables

Offset Length Type Description

413 12 RAID6 Member 10 information

425 12 RAID6 Member 11 information

437 12 RAID6 Member 12 information

449 12 RAID6 Member 13 information

461 12 RAID6 Member 14 information

473 12 RAID6 Member 15 information

485 12 RAID6 Member 16 information

497 2 X RAID10 Member #1 Dev #

499 2 X RAID10 Member #2 Dev #

501 2 X RAID10 Member #3 Dev #

503 2 X RAID10 Member #4 Dev #

505 1 C FBA user not ready (Y/N)

506 1 X FBA stripe size

507 2 X FBA # of members

509 1 C FBA META prev device valid (Y/N)

510 1 C FBA META next device valid (Y/N)

511 2 X FBA META prev member device #

513 2 X FBA META next member device #

515 1 X Device emulation code40 - Device is an FBA20- Device is a 33801F - Emulation size code table

516 1 X RDF Mirror 1 Flag1

517 1 X RDF Mirror 1 Flag204 - ConGroup is enabled

518 1 X RDF Mirror 2 Flag1

519 1 X RDF Mirror 2 Flag204 - ConGroup is enabled

Table 14 Function 10, Object name: DEVICE (page 12 of 16)

REXX Interface Programmer’s Reference Guide

Page 83: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

520 1 X RDF Mirror 3 Flag1

521 1 X RDF Mirror 3 Flag204 - ConGroup is enabled

522 1 X RDF Mirror 4 Flag1

523 1 X RDF Mirror 4 Flag204 - ConGroup is enabled

Note: You must specificly request the RDF Mirror Flag fields listed above. See “EMCSRDF_DEVFLAG” on page 16 for more information.

524 4 X RAID5 - Symmetrix device number

528 4 X RAID5 - RAID group number for Enginuity 5874 or later

532 1 X RAID5 - Primary mirror mask for Enginuity 5874 or later

533 1 X RAID5 - Number of parity devices

534 4 X RAID6 - Symmetrix device number

538 4 X RAID6 - RAID group number for Enginuity 5874 or later

542 1 X RAID6 - Primary mirror mask for Enginuity 5874 or later

543 1 X RAID6 - Number of parity devices

544 4 X Number of cylinders - 4-byte value

548 1 X R1 (1) mirror number or 0

549 1 X R1 (2) mirror number or 0

550 1 C Raid 0 Device Y/N

551 1 X Director

552 1 X Interface

553 1 X Address

554 4 X Target

558 1 X Raid 0 Mirror # relative to zero

559 2 X Reserved

561 8 X Reserved

Table 14 Function 10, Object name: DEVICE (page 13 of 16)

Object cross-reference 83

Page 84: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

84

REXX Variables

Offset Length Type Description

569 1 C Raid 1 Device Y/N

570 1 X Device 1 Director

571 1 X Device 1 Interface

572 1 X Device 1 Address

573 4 X Device 1 Target

577 1 X Reserved

578 2 X Reserved

580 8 X Reserved

588 1 X Device 2 Director

589 1 X Device 2 Interface

590 1 X Device 2 Address

591 4 X Device 2 Target

595 1 X Raid 1 Mirror # relative to zero

596 2 X Reserved

598 8 X Reserved

605 Object length

BCV information record

Offset Length Type Description

1 2 X Symmetrix BCV number

3 2 X Symmetrix STD number

5 2 C Symmetrix device number of last paired

7 1 C Multiple local mirrors (Y/N)

8 1 C BCV RDF type, 1=R1 2=R2

9 1 C BCV RAID10 (Y/N)

10 1 C BCV RAID5 (Y/N)

11 1 C Pair Attached(Y) Split(N)

Table 14 Function 10, Object name: DEVICE (page 14 of 16)

REXX Interface Programmer’s Reference Guide

Page 85: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

BCV information record

Offset Length Type Description

12 1 C Established/Restored (E/R)This field is blank if offset 11 is N.

13 1 C Synchronized (Y/N)This field is blank if offset 11 is N.

14 1 C BCV is/was attached (Y/N)

15 1 C SDDF session exists (Y/N)

16 1 C Reverse split allowed (Y/N) This field is blank if offset 11 is N.

17 1 C Normal split running (Y/N)

18 1 C Instant split running (Y/N)

19 1 C CTR#3 second pass (Y/N) This field is blank if offset 18 is N.

20 1 C BCV syncing (Y/N) This field is blank if offset 11 is N.

21 1 C Split before sync BCV (Y/N) This field is blank if offset 11 is Y.

22 1 C Sync to/from moving mirror (T/F) This field is blank if offset 11 is Y, if offset 20 is N, or if offset 7 is N.

23 1 C Protected restore (Y/N)

24 1 C SMMF held file (Y/N)

25 1 C Invalid BCV (Y/N)

26 1 C Both BCV mirrors attach (Y/N)

27 1 C STD ready for establish (Y/N) This filed is blank if offset 11 is Y.

28 1 C STD knows another BCV (Y/N)

29 1 C Background split>1 mirror (Y/N) This field is blank if offset 11 is N.

30 1 C STD held for SNAP (Y/N)

Table 14 Function 10, Object name: DEVICE (page 15 of 16)

Object cross-reference 85

Page 86: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

86

REXX Variables

BCV information record

Offset Length Type Description

31 4 X CTR#1 number of tracks left to sync

35 4 X CTR#2 number of tracks to sync next

39 4 X Tag

43 4 X Split time in 1/2 seconds

47 2 X CTR#3 number of tracks left to split

49 2 X TimeFinder/Clone session ID

51 6 C Reserved

56

Table 14 Function 10, Object name: DEVICE (page 16 of 16)

REXX Interface Programmer’s Reference Guide

Page 87: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 15 Function 11, Object name: LINK (page 1 of 2)

Offset Length Type Description

1 4 X Total number of IOs

5 1 X Director number

6 1 C Director type 1-RA1 2-RA2 F-FIBER RA

7 1 X Other side director number

8 12 C Other side Symmetrix serial number

Note: This field may contain all periods. If so, this value indicates a switched director and this field will not be accurate. Use the RDF group object to obtain a more complete picture of the RDF relationships between the Symmetrix systems. For statistics, use the dstat object.

20 1 X RDF groupIf '*' then use “Reserved” on page 88

21 1 X Other side RDF groupIF '*' then use “Reserved” on page 88

22 1 C Dir Online Flag (Y/N)

23 1 C Dir Connected Flag (Y/N)

Note: The following interval fields are not available for Enginuity level 5771 and later.

24 1 X Short Interval % busy

25 2 X Short Interval I/O Rate

27 1 X Short Interval time - MM

28 1 X Short Interval time - SS

29 1 X Long Interval %busy

30 2 X Long Interval I/O Rate

32 1 X Long Interval time - DD

Object cross-reference 87

Page 88: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

88

REXX Variables

Offset Length Type Description

33 1 X Long interval time - HH

34 1 X Long interval time - MM

35 1 X Long interval time - SS

36 8 X Reserved

44 2 X Reserved

46 2 X Reserved

48 1 X Reserved

48 Object Length

Table 15 Function 11, Object name: LINK (page 2 of 2)

REXX Interface Programmer’s Reference Guide

Page 89: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 16 Function 12, Object name: DIRECTOR

Offset Length Type Description

1 1 X Director #

2 1 C Director type C-CA DIRECTOR E-EA DIRECTOR D-DA DIRECTOR S-SA DIRECTOR T-SE DIRECTORW-FIBRE DISK 1-RA1 2-RA2 F-FIBER RA A-FIBRE SA I-FICON DIRECTOR G-GIGE (RA MODE) X-2 PORT FIBRE RA Y-2 PORT FIBRE SA

3 1 C Director Online flag (Y/N)

4 1 C Director Connected flag (Y/N)

5 4 X Reserved

8 Object length

Object cross-reference 89

Page 90: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

90

REXX Variables

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 1 of 7)

Offset Length Type Description

1 1 X RDF group

2 1 X Other side RDF group

3 12 C Other side serial number

15 2 X Other side major release

17 2 X Other side minor release

19 2 X Other side model

21 4 X Other side features

25 1 C Sync direction0-NONE 1-R1>R2 2-R1<R2 3-CNFG?-Unable to determine sync direction

26 1 C Online or offline (Y/N)

27 1 C Fiber protocol (Y/N)

28 1 C Escon protocol (Y/N)

29 1 C IP protocol (Y/N)

30 1 C SRDFA group (Y/N)

31 1 C Dynamic group (Y/N)

32 8 X Reserved

40 8 X Director list. For this RA group, contains an 8-byte list of director numbers. Note that since directors are numbered starting with one, a zero terminates the list. If the 1st byte is zero, then the list is empty.

48 8 X Reserved

56 10 C Label

66 7 X Reserved

73 136 Reserved

REXX Interface Programmer’s Reference Guide

Page 91: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

209 136 Reserved

345 12 C This side serial number

357 4 X Enginuity microcode level (major/minor)

361 48 MSC/Star scratch area 192_06 See “MSC Object” on page 95.

409 6 X Reserved

MSC/STAR boxlist area

415 2 X Number of boxlist entries

417 768 24 boxlist entriesSee "“MSC Box List Object” on page 96.

Note: These boxlist area variables have been relocated to the BOXLIST.# variables.

1185 66 C BCV GNS group name

1251 1 X Auto Restart policy-1

1252 1 X Auto Restart policy-2

1253 4 X Auto Restart invalid track count

1257 1 X Auto Restart minimum number of RDF directors

1258 1 X Auto Restart Flag 280-DROP ALL SRDF/A SESSIONS ON FAILURE40-REMOVE FAILING SESSION ON FAILURE20-DISABLE MSC ENVIRONMENT ON FAILURE10-IF MSC VALIDATION FINDS PROBLEMS ONLY WARN ON THE ERROR08' DO NOT PERFORM VALIDATION04' STAR WITH AUTOSWAP REQUESTED02' ONE OR MORE SESSIONS ARE DEFINED VIA GNS01' REMOTE CYCLE SWITCHING

1259 1 x Auto Restart session RA groupThis is the synchronous group in a cascaded R21 configuration.

1260 1 X MSC session minimum number of directors

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 2 of 7)

Object cross-reference 91

Page 92: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

92

REXX Variables

Offset Length Type Description

1261 4 X MSC session number of invalid tracks

1265 1 X MSC session policy flag

1265 Object length

SRDF/Star Local/Remote Object

Offset Length Type Description

1 1 C SRDFA type (1=R1, 2=R2)

2 1 C SRDFA active (Y/N)

3 1 C SRDFA tolerance (Y/N)

4 1 C Cleanup running (Y/N)

5 1 C Host managed const (Y/N)

6 1 C SRDF/Star mode (Y/N)

7 1 C Consistent deact if cycle switch is immediate S - SUCCEED F - FAIL

8 1 C Freeze state

9 1 X State at transition to J0 0 - NOSTATE 1 - START 2 - GOOD 3 - ALMOST DONE

10 1 X Status last transition to J0 0 - NOT IN PROGRESS1 - IN PROGRESS 2 - SUCCESSFUL 3 - FAILED

11 1 X Priority for drop policy

12 1 X The percentage of the system write pending limit at which SRDF/A will drop

13 4 X Active cycle size R1 SIDE: CAPTURER2 SIDE: APPLY

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 3 of 7)

REXX Interface Programmer’s Reference Guide

Page 93: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

17 4 X Inactive cycle size R1 SIDE: TRANSMITR2 SIDE: RECEIVE

21 2 X # seconds since last cycle

23 2 X # seconds duration of last cycle

25 2 X Current cycle # active on R1 inactive on R2

27 2 X Maximum throttle time

29 2 X Minimum cycle length

31 2 X Secondary delay

33 4 X Last cycle size

37 4 X # consistency exmpt

41 4 X Average cycle time (secs)

45 4 X Average cycle size (slots)

49 8 X Tag for MS turn on

57 8 X Tag for MS turn off

The following information is only valid on the R1 side. Check SRDFA type at offset 1.

65 1 C MS window open? (Y/N)

66 1 C Remote consistent? (Y/N)

67 1 C Pure ready state? (Y/N)

68 1 X R1 Flag 1 02 - Transmit is Idle 04 - Transmit Idle Enabled 08 - DSE Active

69 4 X # Tracks written by

73 4 X # Repeat writes by HA

77 4 X # Duplicated slots by HA

******************* End of R1 Specific fields ***********************

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 4 of 7)

Object cross-reference 93

Page 94: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

94

REXX Variables

Offset Length Type Description

The following information is only valid on the R2 side. Check SRDFA type at offset 1.

81 1 C Restore done? (Y/N)

82 1 C R2 suspended? (Y/N)

83 1 X R2 Flag 1 02 - Transmit is Idle 04 - Transmit Idle Enabled 08 - DSE Active

84 1 C Reserved

85 4 X # Slots restored by DA

89 4 X # Slots merged by DA

93 4 X # Seconds for last restore

97 4 X Average restore time

101 4 X SUSP/RSUM token created when cycle switch was suspended

********************* End of R2 Specific fields *********************

105 1 C SRDFA active? (Y/N)

106 1 C R1 inactive cycle empty (Y/N)

107 1 C R2 active cycle empty (Y/N)

108 1 C Inactive cycle on R2 requires intervention R2 side only (Y/N)

109 1 C Force option must be (Y/N)

110 1 C 1ST CONSISTENT CYCLE (Y/N)

111 1 C 2ND CONSISTENT CYCLE (Y/N)To check for GLOBAL CONSISTENCY, do the following from the R1 side: • Check the REMOTE CONSISTENT field at offset 66 and if

it is Y then check 1ST CONSISTENT CYCLE and 2ND CONSISTENT CYCLE.

• If they are both Y, then GLOBAL CONSISTENCY exists.

112 1 C Star mode ahead (Y/N)

113 1 X # cycles JA ahead of J0

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 5 of 7)

REXX Interface Programmer’s Reference Guide

Page 95: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

114 1 C MSC is active (Y/N)

115 2 X Cycle number

117 1 C Globally consistent (Y/N)

118 3 X Reserved

121 1

214

X

XXX

Active cycle tag 80-FIRST CONSISTENT CYCLE 40-SECOND CONSISTENT CYCLE 20-STAR MODE 10-SITE B IS NOT CONSISTENT ReservedCounter of the number of cycles site C is ahead of site BActive cycle

129 8 X Inactive cycle tag

137 4 X Number of seconds since the last cycle switch

141 4 X Duration in seconds of the last cycle

144 Object length

MSC Object

Offset Length Type Description

1 1 C Version0-MSC 1-MSC/STAR

2 1 C List complete (Y/N)

3 1 C MVS defined (Y/N)

4 1 C OS defined (Y/N)

5 1 C Star mode (Y/N)

6 1 C Dynamic target cycle #

7 1 C Disable (Y/N)

8 1 C J0 group (Y/N)

9 1 C Primary side (Y/N)

10 1 X Reserved

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 6 of 7)

Object cross-reference 95

Page 96: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

96

REXX Variables

Offset Length Type Description

11 2 X Target cycle time in seconds

13 1 X My other side group

14 1 X Corresponding R1 group

15 1 X Corresponding R2 group

16 1 X New RDF recovery group

17 8 C Group name

25 4 X SDDF session 1 token

29 4 X SDDF session 2 token

33 16 X Reserved

48 Object length

MSC Box List Object

Offset Length Type Description

1 12 C Primary side serial number

13 1 X Primary side group

14 12 C Secondary side serial number

26 1 X Secondary side group

27 6 X Reserved

32 Object length

Table 17 Function 14, Object name: RDFGROUP (5x67 and higher microcode level) (page 7 of 7)

REXX Interface Programmer’s Reference Guide

Page 97: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 18 Function 15, Object name: RGRPSTAT (5x67 and higher microcode level)

Offset Length Type Description

1 1 X RDF group

2 1 X This side director #

3 1 X Config flags 80-MULTIPATH 40-PATH REASSIGNED FROM GROUP 20-GROUP DISBANDED 10-SINGLE PATH

4 1 X Protocol

5 1 X FC topology 1

6 1 X FC topology 2 flag01-FC PRIVATE ARBRITRATED LOOP 02-FC PUBLIC ARBRITRATED LOOP 04-FC POINT TO POINT 08-FC SWITCHED 10-IP

7 8 X World Wide Name

15 4 X Other side features

19 2 X Other side major code level

21 2 X Other side minor code level

23 1 X Other side model number

24 1 X Other side director number

25 1 X Other side post state

26 1 X Reserved

27 8 X Data in counter

35 8 X Data out counter

43 6 X Reserved

48 Object length

Object cross-reference 97

Page 98: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

98

REXX Variables

Table 19 Function 17, Object name: DSTAT (page 1 of 4)

Offset Length Type Description

1 1 X Director statistics format 02-ESCON 03-SCSI SA DIRECTOR 04-DISK DIRECTOR 06-FIBRE SA DIRECTOR 07-ESCON HW (RA2 MODE) 0B-FICON DIRECTOR TYPE

2 1 X Director type 01-CA - PARALLEL CHNL ADAPTER 02-EA - ESCON 03-SA - SCSI SA DIRECTOR 04-DA - DISK DIRECTOR 05-RA1 - ESCON HW (RA1 MODE) 06-FA - FIBRE SA DIRECTOR 07-RA2 - ESCON HW (RA2 MODE) 08-GE - GIGE (RA MODE) 09-RF - FIBER (RA MODE) 0A-DF - FIBRE DISK 0B-FI - FICON DIRECTOR TYPE 0C-R2 - 4 PORT FIBRE (RA) 0D-F2 - 4 PORT FIBRE SA 0E-SE - GIGE SA (ISCSI)

3 1 X Director #

4 13 X Reserved

17 256 X Director statistics info (See records below)

272 Object length

Format 2 Director type EA

1 4 X Number of writes

5 4 X Number of total I/Os

9 4 X Number of hits

13 4 X Number of requests

17 4 X Number of read misses

21 4 X System write pendings

REXX Interface Programmer’s Reference Guide

Page 99: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

Format 2 Director type EA

25 4 X Device write pendings

28 Object length

Format 3 Director type SA

1 4 X Number of writes

5 4 X Number of total I/Os

9 4 X Number of I/O for port 0

13 4 X Number of I/O for port 1

17 4 X Number of TPUT on port 0

21 4 X Number of TPUT on port 1

25 4 X Number of hits

29 4 X Number of requests

33 4 X Number of read misses

37 4 X System write pendings

41 4 X Device write pendings

44 Object length

Format 4 Director type FA

1 4 X Number of writes

5 4 X Number of total I/Os

9 4 X Number of I/O for port 0

13 4 X Number of I/O for port 1

17 4 X Number of TPUT on port 0

21 4 X Number of TPUT on port 1

25 4 X Number of hits

29 4 X Number of requests

Table 19 Function 17, Object name: DSTAT (page 2 of 4)

Object cross-reference 99

Page 100: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

100

REXX Variables

Offset Length Type Description

Format 4 Director type FA

33 4 X Number of read misses

37 4 X System write pendings

41 4 X Device write pendings

44 Object length

Format 6 Director type DA

1 4 X Number of total I/Os

5 4 X Number of requests

9 4 X Number of reads

13 4 X Number of writes

17 4 X Number of prefetched tracks

21 4 X Number of prefetched tracks not used

25 4 X Number of prefetched tracks used

29 4 X Number of short misses

33 4 X Number of long misses

37 4 X Prefetch restarts

41 4 X Number of prefetch mismatches

45 4 X Number of permacache requests

49 4 X Average fall thru time

52 Object length

Format 7 Director type RF

1 4 X Number of I/Os

5 4 X RDF Link util ctr

9 4 X Time T1 link util ctr

13 4 X Time T2 link util ctr

Table 19 Function 17, Object name: DSTAT (page 3 of 4)

REXX Interface Programmer’s Reference Guide

Page 101: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

Format 7 Director type RF

17 4 X Reserved

21 4 X Reserved

25 8 X RDF kilobytes received

33 8 X RDF kilobytes sent

41 4 X RDF received

45 2 X Received units

47 2 X Reserved

49 4 X RDF sent

53 2 X Sent units

55 2 X Reserved

56 Object length

Format 11 Director type SE

1 4 X Number of writes

5 4 X Number of total I/Os

9 4 X Number of I/O for port 0

13 4 X Number of I/O for port 1

17 4 X Number of TPUT on port 0

21 4 X Number of TPUT on port 1

25 4 X Number of hits

29 4 X Number of requests

33 4 X Number of read misses

37 4 X System write pendings

41 4 X Device write pendings

44 Object length

Table 19 Function 17, Object name: DSTAT (page 4 of 4)

Object cross-reference 101

Page 102: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

102

REXX Variables

Table 20 Function 20, Object name: DEVICE ID (page 1 of 2)

Offset Length Type Description

1 12 C Symmetrix serial number

13 2 X Controller type

15 1 X Controller model

16 2 C Symmetrix type

18 2 X Microcode level

20 3 C Manufacturer

23 2 X Subsystem ID

25 1 C Partition ID

26 1 X LSS

27 6 C Reserved

33 2 X Symmetrix device number

35 2 X Device type

37 1 X Device model

38 4 X Device size

42 2 X Physical block (FBA only)

44 1 X Device class

45 1 X Device code

46 1 X UADDR

47 1 X LADDR

48 1 X PADDR

49 1 C Symmetrix device number is valid

50 1 C Not at minimum MCLV

51 1 C FBA device

52 1 C Virtual device

53 1 C CKD device

54 1 C Meta head

REXX Interface Programmer’s Reference Guide

Page 103: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Offset Length Type Description

55 1 C Meta device

56 9 C Reserved

65 1 C PAV alias device

66 1 C PAV base device

67 2 X Base Symdev number

68 Object length

Table 20 Function 20, Object name: DEVICE ID (page 2 of 2)

Object cross-reference 103

Page 104: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

104

REXX Variables

Table 21 Function 22, Object name: Pool General Information

Offset Length Type Description

1 12 C Pool name

13 2 X Index offset

15 1 X Status1 - Pool is undefined2 - Pool is available3 - Pool is full

16 1 C Device typeA - AS400B - 3380C - 3390F - FBA

17 1 X Type0 - SaveDev pool1 - DSE pool2 - Thin pool

17 Object length

REXX Interface Programmer’s Reference Guide

Page 105: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

REXX Variables

Table 22 Function 23, Object name: Pool Status Information

Offset Length Type Description

1 4 X Number of devices

5 4 X Number of free tracks

9 4 X Number of used tracks

12 Object length

Pool Device Information Object

Offset Length Type Description

1 4 X Device number

5 4 X Free tracks

9 4 X Used tracks

13 2 X Pool offset

15 1 C Device typeA - AS400B - 3380C - 3390F - FBA

16 1 X Status1 - Pool is undefined2 - Pool is available3 - Pool is full

17 1 X Drain status0 - Not Draining1- Draining2 - Waiting for freespace4 - Protected

17 Object length

Object cross-reference 105

Page 106: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

106

REXX Variables

REXX Interface Programmer’s Reference Guide

Page 107: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Glossary

This glossary contains terms related to the REXX interface. Many of these terms are used in this guide.

Aadaptive copy - disk

mode (AD)An SRDF mode of operation that stores new data for a remotely mirrored pair on the source volume of that pair as invalid tracks until it can be successfully transferred to the target volume. A “skew” parameter associated with this mode indicates the maximum number of tracks that can be out of synchronization between the two volumes at any given time. This skew parameter value is set at the device level in Symmetrix systems and can range from 1 to 65,535 (decimal).

adaptive copy - writepending mode (AW)

An SRDF mode of operation that stores new data for a remotely mirrored pair in the cache of the local Symmetrix system until it can be successfully written to both the source and target volumes. A “skew” parameter associated with this mode determines the maximum number of write pendings that can exist for a remotely mirrored pair. (There is a skew value for each remotely mirrored pair configured for the Adaptive Copy mode in Symmetrix systems.) This skew parameter is set at the device level and can range from 1 to 65,535 (decimal).

Bbusiness continuance

volume (BCV)A new mirror that can be established and then split from its mirror and addressed separately.

REXX Interface Programmer’s Reference Guide 107

Page 108: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

108

Glossary

Ccache Random access electronic storage used to retain frequently used data

from disk for faster access by the channel.

channel director The component in the Symmetrix system that interfaces between the host channels and data storage. It transfers data between the channel and cache.

Ddestage The asynchronous write of new or updated data from cache to disk

device.

device A uniquely addressable part of the Symmetrix system that consists of a set of access arms, the associated disk surfaces, and the electronic circuitry required to locate, read, and write data.

device address The hexadecimal value that uniquely defines a physical I/O device on a channel path in an MVS environment.

device number The value that logically identifies a disk device in a string.

diagnostics System level tests or firmware designed to inspect, detect, and correct failing components. These tests are comprehensive and self-invoking.

disk director The component in the Symmetrix system that interfaces between cache and the disk devices.

domino attribute An optional feature for source volumes. When enabled, this feature causes a source volume to become not ready to its host and all I/O activity ceases with that volume if the target volume fails or a link failure occurs. When the fault condition is corrected, the user must manually make the source volume ready. This feature ensures that a remotely mirrored pair is always synchronized.

REXX Interface Programmer’s Reference Guide

Page 109: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Glossary

dynamic sparing A Symmetrix feature that automatically transfers data from a failing disk device to an available spare disk device without affecting data availability. This feature supports all devices in the Symmetrix system.

Ffast write In Symmetrix systems, a write operation at cache speed that does not

require immediate transfer of data to disk. The data is written directly to cache and is available for later destaging.

Ggigabyte (GB) 109 bytes.

Iidentifier (ID) A sequence of bits or characters that identifies a program, device,

controller, or system.

IML Initial microcode program loading.

invalid track An invalid track occurs when data is written to a disk track, and that data is not yet reflected on the partner device. The track on the partner device is said to be invalid. In the normal case where the source (R1) and target (R2) volumes are in communication and staying in synch, the updated track is passed to the target device and once it is written there, it is no longer invalid. If the source and target devices are not in communication for some reason (for instance, if the SRDF links are disabled), the invalid tracks build up over time. The R1 invalid track count can also be built up if the source (R1) volume is not ready to the host while the link is operational and data is being written to the source (R1) volume. Invalid tracks for the source (R1) volume may also be generated during R2 Read/Write testing.

invalid tracks attribute An attribute for target volumes. This attribute, when enabled, informs the host if a target volume did not complete synchronization with its source volume at the time of a second link failure.

invalidate Action for #SC VOL command that makes all tracks invalid for a target volume on a source volume.

I/O device An addressable input/output unit, such as a disk device.

REXX Interface Programmer’s Reference Guide 109

Page 110: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

110

Glossary

Kkilobyte (KB) 1024 bytes.

known device A device that meets at least one of the following criteria and is not specified in the EXCLUDE_DEVICE initialization statement:

• Found online during initialization

• Found online during an SC GLOBAL SSID_REFRESH

• Included in a Defined Group that was found online while processing a group command

• Found because it was used as the z/OS device number in an INCLUDE_RAG initialization statement

• Found online or offline because it was used as the z/OS device number in an EXCLUDE_SYM initialization statement

Llink path A single ESCON Light Emitting Diode (LED) fiber optic connection

between the two Symmetrix systems. A minimum of two to a maximum of eight links can exist between the two units.

local volume A Symmetrix logical volume that is not participating in SRDF operations. All CPUs attached to the Symmetrix system may access it for read/write operations. It is available for local mirroring or dynamic sparing operations to the Symmetrix system in which it resides.

logical volume A user-addressable unit of storage. In the Symmetrix system, the user can define multiple logical volumes on a single physical disk device.

Mmedia The disk surface on which data is stored.

megabyte (MB) 106 bytes.

MII Machine Initiated Interrupt.

REXX Interface Programmer’s Reference Guide

Page 111: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Glossary

mirroring The Symmetrix system maintains two identical copies of a designated volume on separate disks. Each volume automatically updates during a write operation. If one disk device fails, the Symmetrix system automatically uses the other disk device.

mirrored pair A logical volume comprised of two physical devices with all data recorded twice, once on each device.

Ppromotion The process of moving data from a track on the disk device to cache.

See also ”stage.”

RR1 See ”source volume (R1).”

R2 See ”target volume (R2).”

RA1 unit In an SRDF configuration, it is the primary data storage subsystem. It initiates many of the SRDF synchronization activities. An SRDF configuration must have at least one RA1 unit and one RA2 unit. See also ”RA2 unit.”

RA2 unit In an SRDF configuration, this subsystem maintains synchronization with the volumes it is paired with in the RA1 unit. It can serve as an RA1 unit during disaster recovery. An SRDF configuration must have at least one RA1 unit and one RA2 unit. See also ”RA1 unit.”

RAID Redundant Array of Independent Disks.

read hit Data requested by the read operation is in cache.

read miss Data requested by the read operation is not in cache.

remote link director(RLD)

Each Symmetrix system requires a minimum of two up to a maximum of eight RLD directors, depending on the Symmetrix model in use. Each RLD manages two ESCON fiber link connections. Each RLD can perform a single I/O at a time to its paired RLD in the remote Symmetrix unit.

REXX Interface Programmer’s Reference Guide 111

Page 112: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

112

Glossary

SSAF Security Access Facility.

semi-synchronousmode

An SRDF mode of operation that provides an asynchronous mode of operation. Applications are notified that an I/O (or I/O chain) is complete once the data is in the cache of the RA1 Symmetrix system. Any new data is then written to cache in the RA2 Symmetrix system. The RA2 Symmetrix system acknowledges receipt of the data once it is secure in its cache. If source tracks are pending transfer to a target volume and a second write is attempted to the source, the Symmetrix system disconnects (non immediate retry request), and waits for the pending track to transfer to the RA2 Symmetrix system.

source volume (R1) A Symmetrix logical volume that is participating in SRDF operations. It resides in the “local” Symmetrix system. All CPUs attached to the Symmetrix system may access a source volume for read/write operations. All writes to this volume are mirrored to a “remote” Symmetrix system. A source volume is not available for local mirroring operations.

SRDF Symmetrix Remote Data Facility. SRDF consists of the Enginuity and hardware required to support Symmetrixsystem remote mirroring.

SSID Subsystem ID. For 3990 storage control emulations, this value identifies the physical components of a logical DASD subsystem. The SSID must be a unique number in the host system. It should be an even number and start on a zero boundary.

stage The process of writing data from a disk device to cache. See ”promotion.” See also ”destage.”

storage control The component in the Symmetrix system that connects the Symmetrix system to the host channels. It performs channel commands and communicates with the disk adapters and cache. See also ”channel director.”

synchronous mode An SRDF mode of operation that ensures 100% synchronized mirroring between the two Symmetrix systems. This is a synchronous mode of operation. Applications are notified that an I/O (or I/O chain) is complete when the RA2 Symmetrix system acknowledges that the data has been secured in its cache.

REXX Interface Programmer’s Reference Guide

Page 113: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

Glossary

Ttarget volume (R2) A Symmetrix logical volume that is participating in SRDF operations.

It resides in the “remote” Symmetrix system. It is paired with a source volume in the local Symmetrix system and receives all write data from its mirrored pair. This volume is not accessed by user applications during normal I/O operations. A target volume is not available for local mirroring or dynamic sparing operations.

Vvalidate Action for #SC VOL command that makes all tracks for a source

volume valid on a target volume.

REXX Interface Programmer’s Reference Guide 113

Page 114: REXX Interface Programmer's Reference Guide · Summary of Changes 3 This document is an update to the previous version of the REXX Interface Programmer’s Reference Guide (300-002-205,

114

Glossary

REXX Interface Programmer’s Reference Guide