SYSTEM STRATEGIES BY TOM BRYANT MVS/XA/ESA Problem Solving: Part III — Advanced SVCDUMP Analysis This article will take us beyond the “one-page MVS/XA/abend analysis” to gather the relevant information and quickly determine where to go for further help with problems other than the simple abend. T o recap this series so far, I’ve examined using IPCS for MVS/ESA Version 5 (Part I, Technical Support, October 1996); and Part II (November 1996) examined a technique called one-page MVS/XA/ESA abend analysis. This article will take us beyond the “one-page MVS/XA/abend analysis” to gather the relevant information and quickly determine where to go for further help with problems other than the simple abend. Future articles will examine slip traps/GTF tracing and standalone dump analysis. Once upon a time, I believed that MVS/XA/ESA debugging (what I referred to it as then) was about nailing down the exact problem to the instruction level. With the increasing complexity of MVS/ESA Version 5 and the many other platforms supported, this methodology had to change. This article will examine: ■ displaying/correcting problems with system contention; ■ how to know when you must use the MVS/ESA FORCE command; ■ how to dump an address space and get just the data you need; ■ the two types of MVS/ESA SVCDUMPs and how to tell them apart; ■ SVCDUMP structures (ASCB, ASXB, TCB, RB, CDE, LLE, and XL); ■ the IBM contents directory entries (CDE) you should know; ■ using the trace table when you are ready for it; and ■ a case study. IDENTIFYING SYSTEMS CONTENTION CONDITIONS The essence of MVS/ESA problem solving is identifying system contention conditions. If you remember nothing else from this article, TECHNICAL SUPPORT DECEMBER 1996 I ask that you commit to memory the commands to list system contention. The payback will be immense. You will save a great deal of time solving problems and avoid that churning feeling in your stomach when a problem does occur. The most important command to know is the one that lets you display MVS/ESA ENQ contention. In IBM systems with Global Resource Serialization (GRS) or equivalent third-party software, this command is the DISPLAY GRS,CONTENTION or D GRS,C. The normal output of this command should be the following two messages: NO ENQ RESOURCE CONTENTION EXISTS NO LATCH CONTENTION EXISTS If you see these two messages, you can relax. Besides ENQ contention, GRS will also report any latch contention, if found. The GRS latch manager is new with MVS/ESA Version 5 and is used to serialize resources within an address space. The GRS latch manager provides a more specific resource serialization mechanism and incurs much less overhead for address space serialization than using the MVS/ESA LOCAL LOCK. Many of the new MVS/ESA Version 5 components, such as Workload Manager, use GRS latches for low-overhead serialization. SYSTEM STRATEGIES Figure 1: D GRS,C Output D GRS,C ISG020I 10.03.18 GRS STATUS 169 S=SYSTEM SYSVTOC TEMP02 SYSNAME JOBNAME ASID LPAR1 USER1 0041 LPAR2 USER2 003D NO LATCH CONTENTION EXISTS TCBADDR EXC/SHR OWN/WAIT 008BAD90 EXCLUSIVE OWN 008F69D8 EXCLUSIVE WAIT Figure 2: Output Message From Issuing the D GRS,RES=???? Command D GRS,DEV=???? ISG020I 12.10.33 GRS STATUS 404 DEVICE:???? VOLUME:TEMP02 RESERVED BY SYSTEM LPAR1 NO RESERVE RESOURCE REQUEST EXISTS I have noticed that the GRS latch names a re hyphenated (i.e., SRM_SA_SAMPLING_LATCH_SET), which should make them easier to spot in the D GRS,C display. Many times you will issue the D GRS,C command and see an ENQ (or RESERVE) lockout. If you have a VTOC RESERVE condition, the D GRS,C output shown in Figure 1 will be displayed. In this situation, the owning user has the resource and the other users wait. In addition, because a hardware reserve is placed on the volume, on LPAR2 you should see IOS071I start pending messages which will display the DASD device and the JOBNAME of the user waiting for that device. In MVS/ESA Version 5 there is a wonderful new command called D GRS,DEV=???? (where ???? is the device address) that shows the system issuing the hardware reserve. We could have issued that command knowing the SYSVTOC ENQ name by D GRS,RES=(SYSVTOC,*). Our output message would look like Figure 2. Once you know the reserving system and the system receiving the action, you can take the appropriate steps without having various jobs (or the system itself) in strife. The onl y caveat to the D GRS,RES=???? command is that it must be issued on the reserving system. If you are running in parallel sysplex mode, just issue the command as: RO *ALL,D GRS,RES=???? and it will be routed to every system in the sysplex. When you issue the D GRS,C command it will take some time before you are familiar with all of the jobnames in the system and what they do. If you have a conflict with multiple instances of the master address space ASID 1 (*MASTER*), you may have a master catalog conflict or another situation in which the master address space had to get involved. In this case, check for outstanding operator reply messages. If you have more than one instance of the dump services jobname DUMPSRV, this means that one SVCDUMP is in progress and another one is waiting. Later, you may want to examine EREP to make sure your dump is one of the oldest problems observed. If the catalog address space (jobname of CATALOG) ever appears when you issue the D GRS,C command, you should immediately issue a modify catalog,list (F CATALOG,LIST) command to see if there is any contention in the catalog address space. The IEC347I message will list jobnames, stepnames and flag fields to indicate the status of the job while its catalog entries are buffered in the CATALOG address space. The flag entries are: ■ O - OLDEST: oldest task in catalog address space; ■ W - WAIT: wait for dataset enqueue or tape mount; ■ A - ABEND: task is abending; ■ E - ENQ: dataset enqueue; and ■ R - RECALL: task is suspended. The OLDEST indicator provides a timeframe as to the oldest jobname in the CATALOG address space. The WAIT and ENQ flags are self explanatory. The RECALL indicator is the most misleading flag; this is not a DFHSM recall request but rather it indicates the task was suspended and should be further examined with other MVS/ESA display commands (such as D A,jobname). There is a handy ID field in the IEC347I message output that can be used by a F CATALOG command to selectively abend requests hung up in catalog processing. Make sure to spend at least a few minutes and look over the situation before issuing the F CATALOG,ABEND(??) command (where ?? is the task ID). Another helpful command is the modify catalog,open command (F CATALOG,OPEN) which will display all open catalogs and important indicators such as: ■ Y/N: allocated to catalog; ■ S: SMS-managed catalog; ■ V: catalog is under VLF caching; ■ ■ ■ ■ ■ I: ISC; C: catalog was closed; D: catalog was deleted; R: catalog is shared; and A:ALT. A very useful, and potentially dangerous, command is the modify catalog, restart (F CATALOG,RESTART). This command will restart the CATALOG address space if internal catalog pointers become corrupted. I’ve had only 50/50 luck with this command. If you see a message from the F CATALOG,OPEN about DAMAGE TO THE CATALOG CAWXA CHAIN (the catalog auxiliary work area), do not issue the F CATALOG,RESTART? command. The catalog auxiliary workarea is one of the few catalog structures that can’t be dynamically rebuilt in the event of a problem (since it is the list of catalogs you see from the F CATALOG,OPEN). H ave you ever issued the MVS/ESA CANCEL command when a batch job or TSO user locked up? The IEE301I jobname CANCEL COMMAND ACCEPTED message appears but the job does not leave the system! In this situat i o n , p e r fo rm a display active,jobname (D A,jobname) and look at the SMC keyword value in your output. If you see a value greater than SMC=000 (e.g., SMC=001), then the job you are cancelling is running in a special system state called stepmust-complete. See Figure 3. USING THE MVS FORCE COMMAND The authorized version of the ENQ macro has a field called SMC which refers to the step-must-complete state. If you wish to get rid of this job (and risk creating partially-freed resources), use the MVS FORCE command with the ARM (Address Space Resource Manager) parameter. Using FORCE U=tsouser,ARM will drive the normal task termination routines without causing address space destruction. To use FORCE ARM the cancel command must have been previously issued. If FORCE ARM doesn’t do it, then you must issue the FORCE U=tsouser which terminates the address space (the final step of address space termination occurs in the master address space ASID 1). See Figure 4. Once a FORCE has been issued for an address space , this does not absolutely guarantee that the address space is gone. It only guarantees that the address space identifier is removed from the dispatching queue (nothing more will run there). Additional recovery termination management (RTM) processing occurs in the master address space (ASID 1), and if things get hung up there, a TSO user may not be able to logon again. The system will think the user is active, when in fact, he is not. IBM gave me a nifty little program that will issue the CALLRTM macro which allows SYSTEM STRATEGIES Figure 3: Display Active With a Non-Zero ENQ SMC Value D A,TSOUSER IEE115I 14.55.03 96.131 ACTIVITY 633 JOBS M/S TS USERS SYSAS INITS ACTIVE/MAX VTAM 00015 00085 00148 00023 00050 00148/00300 TSOUSER IN PR A=00C8 PER=YES SMC=001 PGN=N/A DMN=N/A CT=099.775S ET=05.07.18 WUID=TSU21757 WKL=TSO SCL=TSO P=1 SYSTEM ID PT11 DATE 5/10/96 96.131 LINE 90,313 RGP=N/A SRVR=NO QSC=NO ADDR SPACE ASTE=1FD20200 Figure 4: FORCE Out a TSO User With Address Space Destruction FORCE U=TSOUSER IEE301I TSOUSER FORCE COMMAND ACCEPTED *ISG033E UNIDENTIFIED TASK JS FAILED WHILE IN MUST COMPLETE STATUS ISG032E RESOURCE NAMED BLXDAS, Q % MAY BE DAMAGED ISG032E RESOURCE NAMED SYSIKJUA,TSOUSER MAY BE DAMAGED ISG032E RESOURCE NAMED SPFEDIT,TSOUSER.ISPPROF MAY BE DAMAGED ISG032E RESOURCE NAMED SPFEDIT,TSOUSER.ISPPROF MAY BE DAMAGED ISG032E RESOURCE NAMED SPFEDIT,TSOUSER.ISPPROF MAY BE DAMAGED ISG032E RESOURCE NAMED SYSDSN,TSOUSER.SPFTEMP1.CNTL MAY BE DAMAGED IST804I CLOSE IN PROGRESS FOR TSO0012 OPENED BY TSOUSER ISG032E RESOURCE NAMED SPFEDIT,TSOUSER.ISPPROF MAY BE DAMAGED IST400I TERMINATION IN PROGRESS FOR APPLID TSO0012 ISG032E RESOURCE NAMED SPFEDIT,TSOUSER.ISPPROF MAY BE DAMAGED $HASP310 TSOUSER TERMINATED AT END OF MEMORY IEF743I IKJACCNT.TSOUSER FORCED - CODE SA22 IN ADDRESS SPACE 00C8 IST805I VTAM CLOSE COMPLETE FOR TSO0012 $HASP250 TSOUSER PURGED — (JOB KEY WAS ACD86C3F) me to select a TCB for recovery termination. TSO uses the CALLRTM macro when you reply FSTOP to the TSO termination message. This program can be beneficial, but it can also bring your system down in a heartbeat if used improperly. See IBM APAR II05723 for more details. CONSOLE DUMPS There are certain circumstances where you will need to take a console dump of one or more address spaces for IBM or another vendor. It’s important to make sure that you have all the pertinent information in the dump. The IBM defaults for the areas to be dumped are on the lean side. To be sure, I thought it would be best to write down the steps on how to dump an address space. Let’s say we want to dump the address space of the batch job called HOGJOB. To do this, issue the MVS command DUMP COMM=(HOGJOB NOT CANCELLING). The COMM value will be our dump title and should reflect something meaningful. MVS will prompt you for more information with the following message: *?? IEE094D SPECIFY OPERAND(S) FOR DUMP COMMAND where ?? is the outstanding reply number. We wish to indicate that HOGJOB is to be dumped and also want to specify our SDATA dumped areas options. Since the SDSF line may not be long enough, we reply as follows: R ??,JOBNAME=HOGJOB,CONT to make sure MVS will prompt us again with the IEE094D message (the CONT parameter does this). Our next reply to the IEE094D message will tell MVS what areas we want dumped. I usually reply as follows: R ??,SDATA=(LPA,LSQA,PSA,RGN,SQA,SUM,TRT,GR SQ,CSA) which means I want just about every data area except all of the DAT-on nucleus (which I haven’t needed as yet). MVS will first capture the dump in a dataspace and issue the message: IEA794I SVC DUMP HAS CAPTURED: DUMPID=??? REQUESTED BY JOB (*MASTER*) DUMP TITLE=HOGJOB NOT CANCELLING where ??? is a generated number for the dump identifier. If you issue the DISPLAY DUMP,TITLES (D D,T) command you should see the dump in an appropriate DUMP?? dataset (where ?? is from 00 to 99). If you’re using MVS dynamic dump datasets, then issue D D,T,AUTODSN=3 to list the last three dynamic dump datasets created. Identifying SVCDUMPs This section examines the sch e d u l e d (asynchronous) dump where a system routine detects an abnormal situation that would c o m p romise processing and sch e d u l e s abnormal termination of the task via the SDUMP BRANCH=YES or ABEND macro. The current task and request block information in a scheduled dump is for the dump task. The dump must be analyzed to find the failing TCB and RB. To find out what kind of dump you have, execute the IPCS STATUS SYSTEM command. In the field PROGRAM REQUESTED SVCDUMP you will see the name IEAVTSDT, which indicates a scheduled SVCDUMP. In most situations with a scheduled SVCDUMP you will have to look at the current and/or error address space(s) followed by the task control blocks (TCBs) and request blocks (RBs) to get a clear indication of what was going on. Remember, your job is to narrow the scope of the problem and first determine what vendor owns the code (not always IBM). For an IBM problem, the next goal is to be able to provide a good search argument so you can narrow down the number of possibilities. The IPCS CBSTAT and IPCS VERBEXIT SRMDATA commands are good ways to check the health indicators of our current and/or error address space. The IPCS CBSTAT command takes an ASCB address as input. For example, you would enter IPCS CBSTAT XXXXXX. (where XXXXXX is the ASCB address (make sure to include the period). You can find out if a address space is swapped in or out, and the reasons why such as input terminal wait (user hasn’t pressed enter) or detected wait (e.g., ENQ or DFHSM recall). You will also get information on address space status such as if the address space was forced out (S0A22 abend). The ASCB fields ASCBJBNI (jobname field for initiated programs) and ASCBJBNS (jobname field for start/mount/logon) will indicate what type of job you are looking at. If you look at the eight bytes off of the address in ASCBJBNI and see INIT, and look at ASCBJBNS and see YOURJOB, then you know that the system initiator just started job YOURJOB. I will cover more on types of jobnames/recognition of dumps later in this article. The IPCS VERBEXIT SRMDATA command was primarily designed to let us check health indicators for the System Resources Manager (SRM) responsible for performance management decisions in MVS/XA/ESA. By using the IPCS VERBEXIT SRMDATA command, we can see much more information than by using the IPCS CBSTAT command which predominantly checks indicators in the ASCB. Since the output from IPCS VERBEXIT SRMDATA is quite large, I just perform a FIND command for ASID in column two and continue the finds while I look at the data. See macro IRAOUCB in SYS1.MODGEN for more information on the SRM user control block (OUCB) fields. SYSTEM STRATEGIES Once you are done looking at the address space, it’s time to look over the task control block (TCB) and request block (RB) structures to see what was going on. Practice this first on small problems so you can get a feel for what types of work (and loaded programs) are present. The IPCS SUMMARY KEYFIELD command shows you key fields in the ASCB, TCB and RBs. For the TCB you get the completion code (COMP) where (for the most part) any non-zero completion code should be reviewed. The IPCS SUMMARY KEYFIELD command will automatically issue the IPCS CBSTAT command so you see TCB status along with the TCB. See Figure 5. Request blocks are simply the representation of programs in stor age. There are some types of RBs which need to be clarified. When you execute your program, a program request block (PRB) is created. On the other hand, if MVS has to execute a program on your behalf, a supervisor request block (SVRB) is created. The RB WLIC field is very important, since it shows the wait count and interrupt code (which is usually, but not always, the abend code). When the interrupt code (the IC of WLIC) is from a PRB, your program issued the SVC. When the IC is from a SVRB, the system issued a SVC on your behalf. Another type of RB is an interrupt request block. This block is created by the create interrupt request block (CIRB) authorized macro. The CIRB creates an interrupt queue element which is high priority work tacked on to a TCB. I will provide an example of an IRB problem later in the case study. The contents directory entry (CDE) is the physical representation of a module, its entry point and use count. If you see multiple copies of the same CDE in a dump, you can be sure that the load module does not have the re-entrant and reusable (RENT,REUS) linkage editor indicators on. The CDE is pointed to by the RBCDE field, which you will have to format with IPCS CBFORMAT since it is not listed in IPCS SUMMARY KEYFIELD. Two other fields of note are the load list element (LLE), which is used to control load and delete references to a load module, and the extent list (XL), which contains the load module address and size. I will not cover them further since I have not had to use them very often. When you execute the IPCS SUMMARY KEYFIELD command , your RB information is presented backwards. For a given TCB, if you want the last (most recent) RB in the dump you will go to the last RB for this TCB. For the times you use IPCS SUMMARY FORMAT (hopefully not too often due to the amount of output) this order is the other way around in that the most recent RB is presented immediately after the TCB. I thought I was going crazy until I realized this simple fact and verified it with IBM Level 2. When using Figure 5: IPCS SUMMARY KEYFIELD Output (A Section) TCB: 008FE240 CMP. . . . . 00000000 PKF. . . . . 00 LMP. . . . FF DSP. . . . . FF TSFLG. . . 00 STAB. . . . 008FF6E0 NDSP. . . 00000000 JSCB. . . . 008FFDFC BITS . . . . 00000000 DAR. . . . 00 RTWA . . . 00000000 FBYT1. . . 00 Task non-dispatchability flags from TCBFLGS4: Top RB is in a wait Figure 6: Common IBM CDE Entries (Field FLCDE) IEAVAR00 - Region Control Task RCT initialization and termination. IEAVTSDT - SVC Dump Task. IEFSD060 - Initiator Control Initialization. IEESB605 - Job Scheduling routine. (If the next CDE NAME is an application name then this jobname must be a started task.) IEFIIC - Initiator Interface Control (batch jobs only) IKJEFT01 - Terminal Monitor Program Initialization routine (TSO usage only). If previous cdename is IEFIIC then TSO was run in batch. IKJEFT02 - Terminal Monitor Program Mainline routine (TSO usage only). You may see this name twice due to parallel tmp! IKJEFT09 - Terminal Monitor Program Second Level routine (TSO usage only). Unauthorized routines only. the IPCS SUMMARY KEYFIELD command, only the first CDE is shown for a given RB in the dump. If you want to see all of the CDEs for a given RB then execute: RUNCHAIN ADDRESS(XXXXXX.) NAME(CDE) LINK(0) + CHAIN(999) LENGTH(32) EXEC((CBFORMAT X STRUCTURE(CDE))) I would recommend getting used to IPCS SUMMARY KEYFIELD, since it has less output and is easier to use. If this is your first time in an MVS/XA/ESA dump, the amount of data presented even using IPCS S U M M A RY KEYFIELD can be ove rwhelming. I have seen many first- and second-time dump readers looking over the TCB/RB fields for CDE IEAVAR00. This is the MVS/XA/ESA region control task program and in no way is where their problems are. I have found that most dumps contain TCB/RB information you need to be aware of when locating your application or system problem. See Figure 6. Once you learn these names, it will be easier to determine the type of job you are looking at. Figure 7 presents an example of four types of jobs and their CDE entries. The one that is somewhat different is the batch job running a DB2 command under the TSO terminal monitor program. The documentation for IEAVAR00, IEAVTSDT, IEFSD060 and IEESB605 is presented in the MVS/ESA Version 3 logic manuals. Logic manuals were discontinued in MVS/ESA Version 4 and higher (to my dismay), so if you have access to earlier logic manuals, keep them handy. COMPONENT ANALYSIS The last section I want to cover in this article before the case study is component analysis. The IPCS VERBEXIT TRACE command or SYSTRACE TIME(LOCAL) for IPCS Version 5 and higher will give you the instorage trace table. I find the trace table invaluable when, for example, I know the area where the problem is and want to see the SVC instruction. From a SAS regression of many trace tables, I have determined the frequency of trace table entries and the ones you should be able to recognize. See Figure 8. In life there are always exceptions, and the recovery event (RCVY) is one of them. A RCVY PROG means that recovery termination management phase 1 (RTM1) was entered for a program check. RCVY PERC means that a given recovery routine could not correct the abend and is passing the error to the next recovery routine (percolation) from RTM1 to RTM2. RCVY FRR means that RTM1 is invoking a SETFRR macro instruction which places the address of a recovery routine in the FRR stack. RCVY ABT is a request for abnormal end-oftask by the CALLRTM TYPE=ABTERM macro. If you’ve ever replied FSTOP to a P TSO request and pulled the rug out from many TSO users, then you initiated a CALLRTM TYPE=ABTERM routine. SYSTEM STRATEGIES A CASE STUDY Figure 7: Examples of IBM CDE Entries This case study will hopefully pull together some of the concepts covered in this article. This problem occurred on an MVS/ESA Version 4.2.0. system a few years ago, although the debugging techniques are still valid. The symptoms occur when your co-worker gets a SVCDUMP under his userid with the following SVCDUMP title: Major CDE entries for various types of work in IPCS SUMMARY KEYFIELD order BATCHJOB ———— TSOUSER ———— MYSTC ———— BATCHDB2 ———— IEAVAR00 IEAVAR00 IEAVAR00 IEAVAR00 IEAVTSDT IEAVTSDT IEAVTSDT IEAVTSDT IEFSD060 IEFSD060 IEFSD060 IEFSD060 IEESB605 IEESB605 IEESB605 IEESB605 COMPID=5665-28502,ISSUER=IKJEFT05. SDUMP FROM THE TMP ESTAE ROUTINE ————————————————————————————— IEFIIC IKJEFT01 TPX1 IEFIIC DFSSBT00 IKJEFT02 TPXMON IKJEFT01 DFSPCC30 IKJEFT09 TPXCONS IKJEFT02 DFSRRC00 ISRUMC TPXWRITR IKJEFT09 ISPTASK DSN ISPMAIN ISPF Figure 8: Frequency Distribution of IBM Trace Table Entries ENTRY PERCENT ————————SVC SVCR SSAR SSRV PC PT DSP SRB WAIT I/O PGM SSCH PR CALL EXT EMS CLKC RCVY SUSP RSCH EXPL SSRB 18.5 18.3 13.1 (LOWER PERCENTAGE IN SADUMP) 12.9 8.0 5.4 4.8 (HIGHER PERCENTAGE IN SADUMP) 3.8 3.2 2.5 2.4 2.4 2.2 1.0 0.6 0.3 0.2 0.2 0.2 0.1 0.1 0.1 The first thing we want to do is find out what kind of SVCDUMP we are dealing with. Issue the IPCS STATUS SYSTEM command and look at the program requesting dump, which in this case is a SVCDUMP (a synchronous dump). I will always issue a IPCS STATUS FAILDATA command to get the failure data and the registers. See Figure 9. Since we have a synchronous dump (SVCDUMP) you may think that all we do is start looking backward from the address in register 14 to get a CSECT (the one in error). Getting the CSECT moving back from register 14 may pr ovide our answer. If you want to reduce the number of hits on a search, it’s better to understand exactly what was going on. We issue the IPCS SUMMARY KEYFIELD command and look over the output. See Figure 10. We have passed control synchronously (the SYNCH SVC X’0C’) to a routine (PRB) with a IRB in front of it. Seeing IRBs in any SVCDUMP is unusual enough. Where does the EPA (entry point address) of the IRB point to? I got the IEAVAR05 name from the MVS/ESA Version 3 logic manuals. IEAVAR05 is the TMP attention exit routine. Figure 11 is the output of the SYNCH SVRB registers so we can see what was passed. If you check the previous IPCS STATUS FAILDATA REGISTERS output you will notice the SVRB registers are identical. Now we want to work backward from register 14’s address until we see a TSO CSECT eyecatcher. We list the storage area 0260F430. from register 15 to get the module name. From Figure 12 we see the words “TMP EXIT ATTENTION ROUTINE”in the text. You may also notice that register 11 in our IPCS STATUS FAILDATA register area is the entry point address of the IKJEFT03 TMP attention exit routine. The actual fix for this was APAR OY33820. This is not the only way to solve this problem. My intention in this case study was to make sure the debugger is aware of all conditions before searching. It is too easy to get confused in the search when all that is needed is a little up-front analysis to save a great deal of time later. Part IV will examine SLIP traps and GTF tracing. You will need the SLIP trap knowledge to get the right information in the dump or if the system is not providing a dump. GTF tracing will allow you to see system events as they unfold. Please stay tuned! ts Figure 9: Case Study Dump of IPCS STATUS FAILDATA Command TIME OF ERROR INFORMATION PSW: 078C0000 80000004 INSTRUCTION LENGTH: 02 INTERRUPT CODE: 0001 FAILING INSTRUCTION TEXT: 0000040C 00008113 5DF80000 REGISTERS 0-7 GR: 00000000 000084B8 AR: 00000000 00000000 000084D4 00008904 00008918 00000000 00000000 00000000 000084D0 005D1230 005FF510 00000000 00000000 00000000 REGISTERS 8-15 GR: 005E8AF8 00008770 AR: 00000000 00000000 000084D8 8260F530 00008438 00000000 00000000 00000000 00008438 00000000 RECOVERY ENVIRONMENT RECOVERY ROUTINE TYPE: ESTAE RECOVERY ROUTINE RECOVERY ROUTINE ENTRY POINT: 82611F58 AN IRB PRECEDED THE RB THAT IS ASSOCIATED WITH THIS TASK. AN SVC DUMP WAS SCHEDULED BY A PREVIOUS RECOVERY ROUTINE. 8260FAC6 80000000 00000000 00000000 SYSTEM STRATEGIES Figure 10: Case Study Dump of IPCS SUMMARY KEYFIELD Command FROM IPCS SUMMARY KEYFIELD command: TCB: 005F99F0 CMP . . . . . . . 940C1000 NDSP. . . . . . . 00000000 PKF. . . . . . . . 80 JSCB. . . . . . . 005EE6A4 LMP. . . . . . . . FF BITS. . . . . . . . 00000000 SVRB: 005FD330 WLIC. . . . . . . 0002008A FLCDE. . . . . . 00000000 OPSW . . . . . . 070C1000 8217C906 PRB: 005911F8 WLIC. . . . . . . 00020033 FLCDE. . . . . . 14000000 OPSW . . . . . . 070C1000 82613B42 SVRB: 005FD4A0 WLIC. . . . . . . 0002000C FLCDE. . . . . . 00000000 OPSW . . . . . . 070C1000 8222FD50 IRB: 005D1230 WLIC . . . . . . . 00020001 EPA . . . . . . . . 829916C1 OPSW . . . . . . 078C0000 80000004 PRB: 005FF510 WLIC . . . . . . . 00020001 FLCDE. . . . . . 00C29D40 OPSW . . . . . . 078C1000 82608954 CDE: 00C29D40 NAME. . . . . . . IKJEFT02 ENTPT. . . . . . 82608000 Figure 11: Case Study Dump Inspection of SYNCH SVRB SVRB: 005FD4A0 -0020 -0008 +0018 +0020 +0030 +0040 +0050 XSB . . . . . . . 005FD570 FLAGS1. . . . . 20000000 Q . . . . . . . . . 00000000 GPR0-3. . . . . 00000000 GPR4-7. . . . . 00008918 GPR8-11. . . . 005E8AF8 GPR12-15. . . 00008438 FLAGS2 . . . . . WLIC . . . . . . . LINK. . . . . . . . 000084B8 . . . 000084D0 . . . 00008770. . . . 00008438. . . . 00000000 0002000C 005D1230 000084D4 005D1230 000084D8 8260FAC6 00008904 005FF510 8260F530 80000000 Figure 12: Case Study Dump List of Register 15 Area LIST 0260F430 ASID(X’0020’) ASID(X’0020’) LENGTH(300) ADDRESS(0260F430) KEY(00) CHARACTER COMMON 0260F430 . . . . . . &. . . . . . . .| 0260F440 | B4&. . . . .C.&. . . . .C%&. . . . . . . &. . . . }. . . \. . .0\.. . 0H. . . . B>.0B. .-4. . . . . | 0260F480 | IRXTVARS. . .0B@. . . . . . . . . 0.H. . . . . . . . . 0. . . . . . BQ. .B0.0. . . . . . . . PATC | 0260F4C0 | H AREA - IKJEFTP8 91.077B. B . B . B . B{BBBDBFBHB.B.B.B}BKBMBOBQB.B.B. | 0260F500 | B\BSBUBWBY. . . . . . . . }. . . . . . . .QSYSIKJUA. . . . . . . . . . . 00. . IKJEFT03-TM | 0260F540 | P EXIT ATTENTION ROUTINE 910 | IRB: 005D1230 WLIC.. . . . 00020001 EPA. . . . . . 829916C1 OPSW. . . . . 078C0000 80000004 029916C1 | 00. . IEAVAR05 91038 HBB4420. . . }. . .3. . /. . . . J.-. . .B. . | NaSPA board member Tom Bryant has more than 18 years of experi ence in data processing, with 15 of those years as an MVS/XA/ESA systems programmer. ©1996 Technical Enterprises, Inc. Reprinted with permission of Technical Support magazine. For subscription information, email mbrship@naspa.net or call 414-768-8000, Ext. 116. TECHNICAL SUPPORT DECEMBER 1996