IEC904I
239,rc,cc,jjj,sss,ddname

Explanation

An error occurred during processing associated with a DFP program that frees a buffer or extends the unscheduled list (via a FREEDBUF macro issued either by the user or by the system). The BDAM task recovery routine determined that a control block required as input was not in the user's region and/or key.

In the message text:
rc
The return code.
cc
The cleanup code.
jjj
job name
sss
step name
ddname
DDname
The hex return code identifies the control block found to be outside the user's region or key. They are as follows:
Return Code
Explanation
01
DCB (nothing was written to the GTF data set).
02
DECB (nothing was written to the GTF data set).
03
BCB (nothing was written to the GTF data set).
04
USL (nothing was written to the GTF data set).
05
Next IOB to get a buffer (nothing was written to the GTF data set).
82
DECB (the DCB was written to the GTF data set).
83
BCB (the DCB and DECB were written to the GTF data set).
84
USL (the DCB, DECB, and BCB were written to the GTF data set).
85
Next IOB to get a buffer (the DCB, DECB, and BCB were written to the GTF data set).
The hex cleanup code identifies the results of attempting to clean up the processing left in partial stages of completion.
Cleanup Code
Explanation
01
Cleanup was unsuccessful. While attempting to clean up the buffer and IOB queues the recovery routine program checked. Results of future use of dynamic buffering with this DCB are unpredictable.
02
Cleanup was successful. The DCB with dynamic buffering should be reusable.
03
Cleanup not attempted. It was determined unnecessary as all processing was completed before the abnormal end. The DCB with dynamic buffering should be reusable.
04
Cleanup not attempted because DEBCHK found an incorrect DEB or the audit trail bit was incorrect. Results of future use of dynamic buffering with this DCB are unpredictable.

System action

Those control blocks indicated by the particular return code (as specified above) are written to the GTF data set. The task is ended.

Operator response

Start a generalized trace facility (GTF) trace, and re-create the problem. Reply to message AHL100A with:
TRACE=SYS,USR,SLIP
On the DD statement for the data set in error, specify:
DCB=DIAGNS=TRACE

System programmer response

If the error recurs and the program is not in error, search problem reporting data bases for a fix for the problem. If no fix exists, contact the IBM® Support Center. Provide the SYSOUT output for the job.

Programmer response

Ensure the validity of the control block from which the address of the block in error was taken. The DECB and DCB were specified in the FREEDBUF macro as input to the SVC. Ensure that the DCBBUFCB field in the DCB contains the correct address of the buffer control block and the DCBDYNB field contains the correct address of the unscheduled list (if address space is virtual). The BCB or USL contain the address of the next IOB waiting to get a buffer, if one was not available. Ensure that this address has not been overlaid. Ensure also that the input DECB contains the address of the buffer being freed (DECAREA field) and, if a buffer was requested for keys also, that the DECKYADR field contains the correct address.

Source

DFSMSdfp

Module

IGCT005G

Routing code

11

Descriptor code

6