IWMCONN — Connect to workload management
- Request that WLM Work Management services be available to the connecting address space and optionally to pass topology information to WLM.
- Request that WLM Work Queuing services be available to the connecting address space.
- Request that WLM Work Execution services be available to the connecting address space.
- Request that WLM Work Balancing services be available to the connecting address space.
- Request that WLM export and import services be available to the connecting address space.
- The space which is connected is the current home address space.
- Only a single connection is allowed to be active for a given address space at any given time.
- For each connected task/space, WLM will establish a dynamic resource manager (RESMGR) to be associated with the current task/space. When it receives control, it will free any accumulated resources and delete any enclaves associated with the connect token. This implies that the resource manager will logically perform the disconnect function and the connect token can no longer be passed to WLM services.
Environment
The requirements for the caller are:
Minimum authorization: | For WORK_MANAGER=YES or ROUTER=YES, QUEUE_MANAGER=YES or EXPTIMPT=YES,
supervisor state or program key mask (PKM) allowing keys 0-7. For SERVER_MANAGER=YES, problem state with any PSW key. |
Dispatchable unit mode: | Task |
Cross memory mode: | Non-XMEM when input key is a user key or SERVER_MANAGER = YES, otherwise XMEM, any P,S,H. |
AMODE: | 31-bit |
ASC mode: | Primary |
Interrupt status: | Enabled for I/O and external interrupts |
Locks: | No locks may be held. |
Control parameters: | Control parameters must be in the primary address space. |
Programming requirements
- Make sure no EUT FRRs are established.
- The macro CVT must be included to use this macro.
- The macro IWMYCON must be included to use this macro.
- The macro IWMPB must be in the library concatenation, since it is included by IWMYCON.
- Note that the high-order halfword of register 0, and the reason code variable when specified, may be non-zero and represents diagnostic data which is NOT part of the external interface. The high-order halfword should thus be excluded from comparison with the reason code values described above. The constant, IWMRSNCODE_MASK_CONST defined in IWMYCON, may be used for this purpose.
- All character data, unless otherwise specified, is assumed to be left-justified and padded with blanks on the right, as needed, to occupy the specified number of bytes.
Restrictions
- This macro may not be used during task/address space termination.
- Only a single connection is allowed to be active for a given address space at any given time.
- Specification of both Queue_Manager=Yes, and Server_Manager=Yes requires that Server_Type=Queue. Specification of Server_Type=Routing is rejected.
- Specification of both Router=Yes, and Server_Manager=Yes requires that Server_Type=Routing. Specification of Server_Type=Queue is rejected.
- If the callers recovery routine should get control as a result of requesting this service, the function cannot be guaranteed to be complete. It is possible that a token has been saved in the parameter list where the connect token would reside upon successful completion. This token may be passed to IWMDISC to prevent the address space from being disabled from future IWMCONN requests, but the token should not be used for other services. IWMDISC in these circumstances may give a warning return code indicating that no connection was established, however.
- If the key specified on IWMCONN is a user key (8-F) or SERVER_MANAGER=YES was specified, then the caller must be in non-cross-memory mode (P=S=H).
- While not a restriction for IWMCONN, it should be noted that when the key specified is a user key (8-F), the Connect token may only be passed to IWMCLSFY, IWMRPT, or IWMMNTFY services, when the current primary matches primary at the time IWMCONN is invoked.
Input register information
Before issuing the IWMCONN macro, the caller does not have to place any information into any register unless using it in register notation for a particular parameter, or using it as a base register.
Output register information
- Register
- Contents
- 0
- Reason code if GR15 return code is non-zero
- 1
- Used as work registers by the system
- 2-13
- Unchanged
- 14
- Used as work registers by the system
- 15
- Return code
- Register
- Contents
- 0-1
- Used as work registers by the system
- 2-13
- Unchanged
- 14-15
- Used as work registers by the system
Some callers depend on register contents remaining the same before and after issuing a service. If the system changes the contents of registers on which the caller depends, the caller must save them before issuing the service, and restore them after the system returns control.
Performance implications
None.
Syntax
The syntax of the IWMCONN macro is as follows:
Parameters
- name
- An optional symbol, starting in column 1, that is the name on the IWMCONN macro invocation. The name must conform to the rules for an ordinary assembler language symbol.
- ,APPLENV=applenv
- When SERVER_MANAGER=YES is specified, a required input parameter,
which contains the application environment under which work requests
are served.
To code: Specify the RS-type address, or address in register (2)-(12), of a 32-character field.
- ,CONNTKN=conntkn
- A required output parameter, which will receive the connect token.
To code: Specify the RS-type address, or address in register (2)-(12), of a 32 bit field.
- ,CONNTKNKEY=conntknkey
- When CONNTKNKEYP=VALUE and WORK_MANAGER=YES are specified, a required
input parameter, which contains the key for which the various branch
entry services using the CONNTKN returned by IWMCONN must have PSW
update authority. These other services include Classify (IWMCLSFY),
Report (IWMRPT), Notify (IWMMNTFY). Create (IWMMCREA) is a PC interface
and hence is excluded. The low order 4 bits (bits 4-7) contain the
key value. The high-order 4 bits (bits 0-3) must be zeros.
Note however that there are other services that use the connect token, for which the CONNTKNKEY does not relate to PSW update authority but instead must be a system key (0-7) rather than a user key (8-15).
To code: Specify the RS-type address, or address in register (2)-(12), of an 8 bit field.
- ,CONNTKNKEYP=VALUE
- ,CONNTKNKEYP=PSWKEY
- When WORK_MANAGER=YES is specified, a required parameter, which
describes how the input key should be obtained.
- ,CONNTKNKEYP=VALUE
- indicates that the key is being passed explicitly via CONNTKNKEY.
- ,CONNTKNKEYP=PSWKEY
- indicates that the current PSW key should be used.
- ,DYNAMIC=NO
- ,DYNAMIC=YES
- When SERVER_MANAGER=YES is specified, an optional parameter indicating
whether the server manager connects to a dynamic or static application
environment. The default is DYNAMIC=NO.
- ,DYNAMIC=NO
- The server manager connects to a static application environment. This is the default.
- ,DYNAMIC=YES
- The server manager connects to a dynamic application environment.
- ,EWLM=NO
- ,EWLM=YES
- When WORK_MANAGER=YES is specified, an optional parameter, which
indicates if this work manager intends to participate in cross-platform
enterprise workload management (EWLM). The default is EWLM=NO.
- ,EWLM=NO
- The work manager interacts only with WLM and no interaction with EWLM takes place. This is the default.
- ,EWLM=YES
- The work manager participates in cross-platform enterprise workload management and interacts with EWLM.
- ,EXPTIMPT=NO
- ,EXPTIMPT=YES
- An optional parameter indicating whether the space needs access
to the export and import services (IWMEXPT, IWMUEXPT, IWMIMPT, IWMUIMPT).
The default is EXPTIMPT=NO.
- ,EXPTIMPT=NO
- The connecting address space will not use the export and import services.
- ,EXPTIMPT=YES
- The connecting address space will use the export and import services.
- ,GROUPNM=groupnm
- ,GROUPNM=NO_GROUPNM
- An optional input parameter, which contains the name of an application
group, for example, a group of similar or cooperating subsystem instances.
A group name can be up to 255 characters long. Provision of a data
area initialized to all blanks is equivalent to specification of NO_GROUPNM.
The default is NO_GROUPNM. This indicates that no group name is passed.
To code: Specify the RS-type address, or address in register (2)-(12), of a character field.
- ,GROUPNM_LEN=groupnm_len
- When GROUPNM=groupnm is specified, a
required input parameter, which contains the length of the group name.
A group name can be up to 255 characters long.
To code: Specify the RS-type address, or address in register (2)-(12), of a fullword field.
- ,MANAGE_TASKS=NO
- ,MANAGE_TASKS=YES
- When SERVER_TYPE=QUEUE and SERVER_MANAGER=YES are specified, an
optional parameter indicating that WLM will manage the server instances
(tasks), selecting work from a work queue.
If YES is specified the caller must use service IWMSINF to obtain the number of server instances to start from WLM.
The meaning of PARALLEL_EU changes in this case. PARALLEL_EU is only used to determine the number of tasks to start if the application environment cannot be managed by WLM. Otherwise PARALLEL_EU can be used to limit the number of server tasks to start initially.
The server can define the SERVER_LIMIT parameter to specify a limit for the number of server tasks supported by the application.
- ,MANAGE_TASKS=NO
- The connecting address space starts the number of server instances as provided with PARALLEL_EU.
- ,MANAGE_TASKS=YES
- The connecting address space uses IWMSINF to obtain the number of server instances to start from WLM.
- ,MF=S
- ,MF=(L,list addr)
- ,MF=(L,list addr,attr)
- ,MF=(L,list addr,0D)
- ,MF=(E,list addr)
- ,MF=(E,list addr,COMPLETE)
- An optional input parameter that specifies the macro form.
Use MF=S to specify the standard form of the macro, which builds an inline parameter list and generates the macro invocation to transfer control to the service. MF=S is the default.
Use MF=L to specify the list form of the macro. Use the list form together with the execute form of the macro for applications that require reentrant code. The list form defines an area of storage that the execute form uses to store the parameters. Only the PLISTVER parameter may be coded with the list form of the macro.
Use MF=E to specify the execute form of the macro. Use the execute form together with the list form of the macro for applications that require reentrant code. The execute form of the macro stores the parameters into the storage area defined by the list form, and generates the macro invocation to transfer control to the service.- ,list addr
- The name of a storage area to contain the parameters. For MF=S and MF=E, this can be an RS-type address or an address in register (1)-(12).
- ,attr
- An optional 1- to 60-character input string that you use to force boundary alignment of the parameter list. Use a value of X'0F' to force the parameter list to a word boundary, or X'0D' to force the parameter list to a doubleword boundary. If you do not code attr, the system provides a value of X'0D'.
- ,COMPLETE
- Specifies that the system is to check for required parameters and supply defaults for omitted optional parameters.
- ,NODENM=nodenm
- ,NODENM=NO_NODENM
- An optional input parameter, which contains the node name to be
used for classifying work requests when Work_Manager=Yes is specified
or taken as default. The node name identifies a specific subcomponent
of the generic subsystem type.
When Server_Manager=Yes and Server_Type=Queue is specified, the node name should match the node name specified on the corresponding Connect for the Queue_Manager, for example, all servers associated with the Queue_Manager have identical node names.
If a product chooses to use both Work_Manager=Yes and Server_Manager=Yes on a single invocation of IWMCONN for a space, then the rules for Server_Manager apply, for example, the node name refers to the node name of the space playing the role of Queue_Manager.
If the caller connects to the WLM work queueing services, the combination of the subsystem type, node name and the subsystem name must be unique to that MVS™ system. Node name can be omitted. The default is NO_NODENM.
To code: Specify the RS-type address, or address in register (2)-(12), of an 8-character field.
- ,NUMBERASCB=numberascb
- When TOPOLOGY=topology and WORK_MANAGER=YES
are specified, a required input parameter, which contains the number
of ASCBs in the list passed via xTOPOLOGY. While there is no restriction
on the number of entries in the list, the current support will only
look at the first 10 entries. The number specified must be positive
(hence also non-zero).
To code: Specify the RS-type address, or address in register (2)-(12), of a fullword field.
- ,PARALLEL_EU=parallel_eu
- When SERVER_MANAGER=YES is specified, a required input parameter,
which contains the maximum number of tasks (TCBs) within the address
space which will be used to concurrently process distinct work requests
if MANAGE_TASKS=YES is not in effect. When Select (IWMSSEL) is used
to obtain a work request, which might then be passed to another task
(TCB) for processing under a Begin (IWMSTBGN) environment, this count
represents the number of tasks (TCBs) which can be running concurrently
against these work requests, i.e. the number of concurrent Begin environments.
It is important that this count represent the actual number of tasks
(TCBs) which can be utilized, and not merely some approximate upper
bound, as this value will influence system algorithms.
If MANAGE_TASKS=YES is in effect, the application environment managed by WLM PARALLEL_EU is not used. In this case the parameter is only used as described above if no procedure name was defined for the application environment.
To code: Specify the RS-type address, or address in register (2)-(12), of a fullword field.
- ,PLISTVER=IMPLIED_VERSION
- ,PLISTVER=MAX
- ,PLISTVER=0
- ,PLISTVER=1,PLISTVER=2
- ,PLISTVER=3
- ,PLISTVER=4
- An optional input parameter that specifies the version of the
macro. PLISTVER determines which parameter list the system generates.
PLISTVER is an optional input parameter on all forms of the macro,
including the list form. When using PLISTVER, specify it on all macro
forms used for a request and with the same value on all of the macro
forms. The values are:
- IMPLIED_VERSION, which is the lowest version that allows all parameters specified on the request to be processed. If you omit the PLISTVER parameter, IMPLIED_VERSION is the default.
- MAX, if you want the parameter list to be the largest size
currently possible. This size might grow from release to release and
affect the amount of storage that your program needs.
If you can tolerate the size change, IBM® recommends that you always specify PLISTVER=MAX on the list form of the macro. Specifying MAX ensures that the list-form parameter list is always long enough to hold all the parameters you might specify on the execute form, when both are assembled with the same level of the system. In this way, MAX ensures that the parameter list does not overwrite nearby storage.
- 0, which supports all parameters except those specifically referenced in higher versions.
- 1, which supports the following parameters and those from
version 0:
APPLENV QUEUE_MANAGER SERVER_TYPE EXPTIMPT ROUTER SRV_MGR_EXIT@ PARALLEL_EU SERVER_DATA WORK_MANAGER QMGR_EXIT@ SERVER_MANAGER - 2, which supports the following parameters and those from
version 0 and 1:
MANAGE_TASKS SERVER_LIMIT GROUPNM_LEN - 3, which supports the following parameters and those from
version 0, 1, and 2:
DYNAMIC NODENM - 4, which supports the following parameters and those from
version 0, 1, 2, and 3:
EWLM GROUPNM GROUPNM_LEN
To code: Specify one of the following:- IMPLIED_VERSION
- MAX
- A decimal value of 0, 1, 2, 3, or 4
- ,QMGR_EXIT@=qmgr_exit@
- ,QMGR_EXIT@=NO_QMGR_EXIT@
- When QUEUE_MANAGER=YES and ROUTER=NO are specified, an optional
input parameter that contains the address of the Queue Manager Connect
Exit to be invoked when the system wishes to inform the queue manager
of actions it should perform. The exit will be called in enabled,
unlocked TCB mode with no FRRs set, but may be called in a cross-memory
environment. The mapping of the parameter list for the exit and its
invocation environment is given by the list form of the IWMQCXIT macro.
The system may chose to discontinue calling the exit upon repetitive abnormal completions, i.e. where the system recovery routine is percolated to from an error within the exit. The exit must be callable from any address space and remain available after the queue manager disconnects or terminates. The default is NO_QMGR_EXIT@, which indicates that no queue manager exit is provided.
To code: Specify the RS-type address, or address in register (2)-(12), of a pointer field.
- ,QUEUE_MANAGER=NO
- ,QUEUE_MANAGER=YES
- When ROUTER=NO is specified, an optional parameter indicating
that WLM Work Queuing services be available to the connecting address
space. For example:
- Insert (IWMQINS)
- Delete (IWMQDEL)
If YES is specified, the combination of the subsystem type and the subsystem name must be unique to that MVS system. The default is QUEUE_MANAGER=NO.- ,QUEUE_MANAGER=NO
- The connecting address space will not use the WLM Work Queuing services.
- ,QUEUE_MANAGER=YES
- The connecting address space will be using the WLM Work Queuing services.
- ,RETCODE=retcode
- An optional output parameter into which the return code is to
be copied from GPR 15.
To code: Specify the RS-type address of a fullword field, or register (2)-(12).
- ,ROUTER=NO
- ,ROUTER=YES
- An optional parameter, which describes whether recommendations
for sysplex routing to servers associated with the same subsystem
type and name are requested. The default is ROUTER=NO.
- ,ROUTER=NO
- indicates that recommendations for sysplex routing via IWMSRFSV are not required.
- ,ROUTER=YES
- indicates that recommendations for sysplex routing via IWMSRFSV
is required. Note that only server spaces which have the same Subsystem
type and name AND which specified Server_Type=Routing are considered
when IWMSRFSV is invoked.
If YES is specified, the combination of the subsystem type and the subsystem name must be unique to that MVS system.
- ,RSNCODE=rsncode
- An optional output parameter into which the reason code is to
be copied from GPR 0.
To code: Specify the RS-type address of a fullword field, or register (2)-(12).
- ,SERVER_DATA=server_data
- When SERVER_TYPE=ROUTING and SERVER_MANAGER=YES are specified,
a required input parameter, which contains whatever data is needed
to uniquely identify the server when recommended by MVS through use of the IWMSRFSV interface. The
structure of this data is undefined to MVS,
and will be returned to the program invoking IWMSRFSV when the server
is returned.
To code: Specify the RS-type address, or address in register (2)-(12), of a 32-character field.
- ,SERVER_LIMIT=server_limit
- ,SERVER_LIMIT=1000
- When MANAGE_TASKS=YES, SERVER_TYPE=QUEUE and SERVER_MANAGER=YES
are specified, an optional input parameter indicating the architectural
limit of the application for the number of server instances which
can be supported.
This parameter can be used to tell WLM the upper limit up to which WLM will recommend to start server instances. If the parameter is omitted or is set higher than 1000, WLM will use 1000 as upper limit instead. The default is 1000.
To code: Specify the RS-type address of a fullword field.
- ,SERVER_MANAGER=NO
- ,SERVER_MANAGER=YES
- An optional parameter indicating whether the space needs access
to a family of services specified by SERVER_TYPE. The default is SERVER_MANAGER=NO.
- ,SERVER_MANAGER=NO
- The connecting address space will not use any of the various server related WLM services documented under SERVER_TYPE.
- ,SERVER_MANAGER=YES
- The connecting address space will be acting in the role of a server
and needs access to the family of services specified by SERVER_TYPE.
Specification of both Queue_Manager=Yes, and Server_Manager=Yes requires that Server_Type=Queue. Specification of Server_Type=Routing is rejected.
Specification of both Router=Yes, and Server_Manager=Yes requires that Server_Type=Routing. Specification of Server_Type=Queue is rejected.
- ,SERVER_TYPE=QUEUE
- ,SERVER_TYPE=ROUTING
- When SERVER_MANAGER=YES is specified, an optional parameter, which
describes what type of services are used by the server. The default
is SERVER_TYPE=QUEUE.
- ,SERVER_TYPE=QUEUE
- indicates that the server selects work from a queue, and thus
requests that WLM Work Execution services be available to the connecting
address space. For example:
- Select (IWMSSEL)
- Begin (IWMSTBGN)
- End (IWMSTEND)
The server also has the WLM Work Queuing services available to the connecting address space when the corresponding Queue Manager with the same subsystem type and name is active on the same MVS image (see following macros for macro specific restrictions). For example:- Insert (IWMQINS)
- Delete (IWMQDEL)
- ,SERVER_TYPE=ROUTING
- indicates that the server receives work by way of routing, and
may be selected by the IWMSRFSV (Find Server) macro interface. Note
that the space which invokes the IWMSRFSV service must Connect with
Router=Yes.
Termination of the router with the same subsystem type and name on the same MVS image will not cause notification to the server to terminate. This coordination, if required, must be handled through a different protocol than use of Connect.
- ,SRV_MGR_EXIT@=srv_mgr_exit@
- When SERVER_TYPE=ROUTING and SERVER_MANAGER=YES are specified,
a required input parameter that is to contain the address of the Server
Manager Connect Exit to be invoked when the system wishes to inform
the server of actions it should perform. This exit will be called
in SRB mode, with a non cross-memory environment, where HASN=SASN=PASN=HASN
at the time IWMCONN was invoked. The mapping of the parameter list
for the exit and its invocation environment is given by the list form
of the IWMSCXIT macro.
Note that it may be possible for the exit to be called before the caller has received control back from IWMCONN. The exit or any program it drives (synchronously or asynchronously) must synchronize with the program issuing IWMCONN to ensure that IWMCONN has returned a connect token prior to issuing IWMDISC (disconnect) or any other services that need the connect token.
The system may cause the space to become ineligible to be recommended by IWMSRFSV upon repetitive errors in calling the exit specified. The exit must be callable from the server address space and remain available after the server manager disconnects or the connecting server TCB terminates. The exit need not persist upon memory termination of the server.
To code: Specify the RS-type address, or address in register (2)-(12), of a pointer field.
- ,SUBSYS=subsys
- A required input parameter, which contains the generic subsystem
type (e.g. IMS, CICS®, etc.). When WORK_MANAGER=YES is specified,
this is the primary category under which classification rules are
grouped.
If the caller connects to the WLM work queueing services by specifying QUEUE_MANAGER=YES, or requests sysplex routing by specifying ROUTER=YES, the combination of the subsystem type and the subsystem name must be unique to that MVS system.
To code: Specify the RS-type address, or address in register (2)-(12), of a 4-character field.
- ,SUBSYSNM=subsysnm
- A required input parameter, which contains the subsystem name
to be used for classifying work requests when Work_Manager=Yes is
specified or taken as default. The subsystem name identifies a specific
instance of the generic subsystem type.
When Server_Manager=Yes and Server_Type=Queue is specified, the subsystem name should match the subsystem name specified on the corresponding Connect for the Queue_Manager, i.e. all servers associated with the Queue_Manager have identical subsystem names.
When Server_Manager=Yes and Server_Type=Routing is specified, the subsystem name should match the subsystem name specified on the corresponding Connect for Router=Yes, i.e. all servers associated with the Router have identical subsystem names.
If a product choses to use both Work_Manager=Yes and Server_Manager=Yes on a single invocation of IWMCONN for a space, then the rules for Server_Manager apply, i.e. the subsystem name refers to the subsystem name of the space playing the role of Queue_Manager or Router.
If the caller connects to the WLM work queueing services, or to sysplex routing services, the combination of the subsystem type and the subsystem name must be unique to that MVS system.
To code: Specify the RS-type address, or address in register (2)-(12), of an 8-character field.
- ,TOPOLOGY=topology
- ,TOPOLOGY=NO_TOPOLOGY
- When WORK_MANAGER=YES is specified, an optional input parameter,
which represents a list of ASCB addresses for the address spaces which
comprise the subsystem. This list should ONLY include address spaces
which do NOT surface as the current home address space when IWMMINIT
or IWMMRELA are used to establish the delay monitoring environments,
but that may participate as dispatchable units (TCBs or SRBs) in serving
work requests. If the current primary or home space is a space not
surfacing in a monitoring environment and its execution can affect
the response time of work flowing through the subsystem, then it should
appear in the list. Neither current primary nor current home are defaults.
While there are no limits on the number of address spaces, this information
is less precise than that provided by monitoring environments. The
default is NO_TOPOLOGY, which indicates that no topology information
was passed.
To code: Specify the RS-type address, or address in register (2)-(12), of a character field.
- WORK_MANAGER=YES
- WORK_MANAGER=NO
- An optional parameter indicating that WLM Work Management services
be available to the connecting address space. For example:
- Classify (IWMCLSFY)
- Report (IWMRPT)
- Notify (IWMMNTFY)
- Enclave Create (IWMECREA)
- Modify Connect (IWMWMCON)
If NO is specified, the above services cannot be used, except for the form of Notify that does not pass an input connect token. The default is WORK_MANAGER=YES.- WORK_MANAGER=YES
- The connecting address space will be using the WLM Work Management services.
- WORK_MANAGER=NO
- The connecting address space will not use the WLM Work Management services. Specifying this keyword may reduce the use of system resources.
ABEND codes
None.
Return codes and reason codes
- GPR 15 (and retcode, if you coded RETCODE) contains a return code.
- When the value in GPR 15 is not zero, GPR 0 (and rsncode, if you coded RSNCODE) contains reason code.
The following table identifies the hexadecimal return and reason codes and the equate symbol associated with each reason code. IBM support personnel may request the entire reason code, including the xxxx value.
Return Code | Reason Code | Equate Symbol, Meaning, and Action |
---|---|---|
0 | — | Equate Symbol: IwmRetCodeOk Meaning: Successful completion. Action: None required. |
4 | — | Equate Symbol: IwmRetCodeWarning Meaning: Successful completion, unusual conditions noted. |
8 | — | Equate Symbol: IwmRetCodeInvocError Meaning: Invalid invocation environment or parameters. |
8 | xxxx0801 | Equate Symbol: IwmRsnCodeSrbMode Meaning: Caller is in SRB mode. Action: Avoid requesting this function while in SRB mode. |
8 | xxxx0802 | Equate Symbol: IwmRsnCodeXmemUserKeyTkn
Meaning: Caller is in cross-memory mode while the token was requested in user key. Action: Avoid requesting this function while in cross-memory mode. |
8 | xxxx0803 | Equate Symbol: IwmRsnCodeDisabled Meaning: Caller is disabled. Action: Avoid requesting this function while disabled. |
8 | xxxx0804 | Equate Symbol: IwmRsnCodeLocked Meaning: Caller is locked. Action: Avoid requesting this function while locked. |
8 | xxxx080B | Equate Symbol: IwmRsnCodeBadPl Meaning: Error accessing parameter list. Action: Check for possible storage overlay. Also check if you call this macro in 64-bit address mode. Refer to the description of reason code xxxx089E for further information. |
8 | xxxx0810 | Equate Symbol: IwmRsnCodeEutFrr Meaning: Caller has EUT FRR established. Action: Avoid requesting this function with an EUT FRR set. |
8 | xxxx0812 | Equate Symbol: IwmRsnCodeBadAscb Meaning: Bad ASCB address passed. Action: Check for possible storage overlay. |
8 | xxxx0823 | Equate Symbol: IwmRsnCodeDatoff Meaning: Caller invoked service while DATOFF Action: Avoid requesting this function in this environment. |
8 | xxxx0824 | Equate Symbol: IwmRsnCodeAmode24 Meaning: Caller invoked service but was in 24 bit addressing mode. Action: Request this function only when you are in 31 bit addressing mode. |
8 | xxxx0825 | Equate Symbol: IwmRsnCodeAscModeNotPrimary
Meaning: Caller invoked service but was not DAT on Primary ASC mode. Action: Avoid requesting this function in this environment. |
8 | xxxx0826 | Equate Symbol: IwmRsnCodeTaskTerm Meaning: Caller invoked service while task termination is in progress for the TCB associated with the owner. Action: Avoid requesting this function in this environment. |
8 | xxxx0827 | Equate Symbol: IwmRsnCodeRsvdNot0 Meaning: Reserved field in parameter list was non-zero. Action: Check for possible storage overlay of the parameter list. |
8 | xxxx0828 | Equate Symbol: IwmRsnCodeBadVersion Meaning: Version number in parameter list is not valid. Action: Check for possible storage overlay of the parameter list. |
8 | xxxx0829 | Equate Symbol: IwmRsnCodeBadOptions Meaning: Parameter list omits required parameters or supplies mutually exclusive parameters or provides data associated with options not selected. Action: Check for possible storage overlay of the parameter list. |
8 | xxxx082C | Equate Symbol: IwmRsnCodeBadNumberAscb
Meaning: NUMBERASCB variable is not a positive value. Action: Check for possible storage overlay of the parameter list or variable. |
8 | xxxx082E | Equate Symbol: IwmRsnCodeConnectExists
Meaning: Connect has already been established for the current home address space. Action: Avoid requesting this function when a connection already exists. |
8 | xxxx0840 | Equate Symbol: IwmRsnCodeServiceNotEnabled
Meaning: Requested connection type cannot be established in the current execution environment. This occurs when SERVER_MANAGER=YES is specified and the program is run as a batch job in a WLM-managed job class. Action: Run the program as a started task. |
8 | xxxx0841 | Equate Symbol: IwmRsnCodeXMemMode Meaning: Caller is in cross memory mode. Action: Invoke the function in non-cross memory mode. |
8 | xxxx0847 | Equate Symbol: IwmRsnCodeOtherSpaceConnected
Meaning: Another address space with the same subsystem type and name is connected to WLM on the MVS image and has the role of queue manager or router. Action: Avoid requesting this function with duplicate values. |
8 | xxxx0849 | Equate Symbol: IwmRsnCodeWLMServBadAPPL
Meaning: The application environment name (APPLENV=) specified is not the same as the one used by WLM to start the server. Action: Verify that the start parameters for the application environment are coded correctly in the WLM ISPF application, and that those parameters are used by the started JCL procedure. |
8 | xxxx084A | Equate Symbol: IwmRsnCodeWLMServBadSSN
Meaning: The subsystem name (SUBSYSNM=) specified is not the same as the one used by WLM to start the server. Action: Verify that the start parameters for the application environment are coded correctly in the WLM ISPF application, and that those parameters are used by the started JCL procedure. |
8 | xxxx084B | Equate Symbol: IwmRsnCodeWLMServBadSST
Meaning: The subsystem type (SUBSYS=) specified is not the same as the one used by WLM to start the server. Action: Verify that the start parameters for the application environment are coded correctly in the WLM ISPF application, and that those parameters are used by the started JCL procedure. |
8 | xxxx084D | Equate Symbol: IwmRsnCodeNotAuthConnect
Meaning: The caller must be supervisor state or have PSW key mask 0-7 authority to connect to the requested WLM services. Action: Avoid requesting this function in this environment. |
8 | xxxx084E | Equate Symbol: IwmRsnCodeWlmServBadType
Meaning: For WLM started servers, the SERVER_TYPE= is not the one used to start the server. Action: Specify the correct SERVER_TYPE. |
8 | xxxx0853 | Equate Symbol: IwmRsnCodeWlmQmBadType Meaning: There is a queue manager or router environment of the specified subsystem name, but of a different type than that specified by the caller. Action: Verify that the option for queue manager/router is specified correctly on IWMCONN. If the option is correct, then server address spaces for a different Server_Type exist and must terminate before the current space may connect as a queue manager or router. |
8 | xxxx0855 | Equate Symbol: IwmRsnCodeBadNumEUMax Meaning: PARALLEL_EU variable is greater than the maximum of 1000. Action: Specify a value between 1 and 1000. |
8 | xxxx0856 | Equate Symbol: IwmRsnCodeBadNumEUMin Meaning: PARALLEL_EU variable is less than the minimum of 1. Action: Specify a value between 1 and 1000. |
8 | xxxx085C | Equate Symbol: IwmRsnCodeWrongNumEU Meaning: Caller invoked service with a PARALLEL_EU value which is different from the PARALLEL_EU of existing servers in the application environment Action: Ensure that all servers in the application environment specify the same PARALLEL_EU value. |
8 | xxxx0873 | Equate Symbol: IwmRsnCodeWrongSrvLmt Meaning: Caller invoked service with a SERVER_LIMIT parameter setting which is different from the SERVER_LIMIT of existing servers in the application environment Action: Ensure that all servers in the application environment specify the same SERVER_LIMIT value. |
8 | xxxx0874 | Equate Symbol: IwmRsnCodeWrongMngTsk Meaning: Caller invoked service with a MANAGE_TASKS parameter setting which is different from the MANAGE_TASKS of existing servers in the application environment Action: Ensure that all servers in the application environment specify the same MANAGE_TASKS value. |
8 | xxxx0878 | Equate Symbol: IwmRsnCodeBadNumLimitMax
Meaning: Caller invoked service with a SERVER_LIMIT parameter setting which exceeds the maximum number of tasks which can be started in a server address space. Action: Correct number or do not specify SERVER_LIMIT parameter in order to use the default. |
8 | xxxx0879 | Equate Symbol: IwmRsnCodeBadNumLimitMin
Meaning: Caller invoked service with a SERVER_LIMIT parameter setting which is less than what has been defined on the PARALLEL_EU parameter. Action: Ensure that SERVER_LIMIT is always greater or equal to PARALLEL_EU. |
8 | xxxx087A | Equate Symbol: IwmRsnCodeNoQServer Meaning: The MANAGE_TASKS parameter is not allowed when QUEUE_SERVER=YES has been specified. Action: Ensure to use the parameters correctly. |
8 | xxxx088E | Equate Symbol: IwmRsnCodeWlmServBadSSND
Meaning: For WLM started servers, the NODENM= is not the one used to start the server. Action: Specify the correct NODENM. |
8 | xxxx088F | Equate Symbol: IwmRsnCodeApplNotSSN Meaning: The application environment name is defined for use by a different subsystem node. Action: Check whether the correct application environment name is being used. |
8 | xxxx089E | Equate Symbol: IwmRsnCodeServiceAModeMismatch
Meaning: The caller is in 64-bit address mode and tried to invoke a service macro that is only enabled for a 31-bit environment. Action: Use the 64-bit enabled service macro (IWM4CON) or change the address mode of the caller to 31-bit. |
C | — | Equate Symbol: IwmRetCodeEnvError Meaning: Environmental error. |
C | xxxx0C01 | Equate Symbol: IwmRsnCodeNoStg Meaning: Storage is not available for the request. Action: There is a storage shortage. The function may work successfully at a later time. |
C | xxxx0C09 | Equate Symbol: IwmRsnCodeNoResmgr Meaning: Resource manager could not be established. Action: No action required. This condition may be due to a storage shortage condition. |
C | xxxx0C14 | Equate Symbol: IwmRsnCodeNoWorkShutDown
Meaning: No work selected. Caller is to shutdown. Action: The server should shut down (terminate). |
C | xxxx0C19 | Equate Symbol: IwmRsnCodeNotSecAuthConnect
Meaning: The caller is not authorized by SAF to connect to WLM with SERVER_MANAGER=YES. Action: The security administrator must grant access to the appropriate resource. |
C | xxxx0C1A | Equate Symbol: IwmRsnCodeApplNotDefined
Meaning: The application environment name is not defined in the active WLM policy. Action: Check whether the correct application environment name is being used. If so, a service administrator must define the application environment in the WLM service definition. |
C | xxxx0C1B | Equate Symbol: IwmRsnCodeApplNotSST Meaning: The application environment name is defined for use by a different subsystem type in the active WLM policy. Action: Check whether the correct application environment name is being used. If so, a service administrator must change the application environment in the WLM service definition to specify the correct subsystem type. |
C | xxxx0C1F | Equate Symbol: IwmRsnCodeServerExists Meaning: A server exists for the specified application environment which only allows 1 such server in the sysplex. Action: Check whether the correct application environment name is being used. If so and the current server is shutting down, a retry may be successful after a delay. |
C | xxxx0C22 | Equate Symbol: IwmRsnCodeApplEnvQuiesced
Meaning: The specified application environment has been quiesced, server cannot be started for the request. Action: Restart the application environment and then retry the request. |
10 | — | Equate Symbol: IwmRetCodeCompError Meaning: Component error. Action: No action required. The function may be successful if invoked again. |
Example
IWMCONN SUBSYS=GENSUB,SUBSYSNM=SUBNAME,
TOPOLOGY=LISTASCBS,NUMBERASCB=NUMSPACE
CONNTKN=CTKN,CONNTKNKEYP=VALUE,CONNTKNKEY=KEY,
RETCODE=RC,RSNCODE=RSN,
Where the following are
declared: GENSUB DS CL4 Generic subsystem type
SUBNAME DS CL8 Subsystem name
LISTASCBS DS CL28 List of 7 address spaces
NUMSPACE DC F'7' Number of ASCBs
CTKN DS FL4 Connect token
KEY DS XL1 Key value