$ (X'5B')
# (X'7B')
@ (X'7C')
MODULE(SPECIALNAME)
BLS18451I Unable to identify the area at 'addr space' address xxxxxxxx
If IPCS issues this message, enter one or more of the dump analysis subcommands, such as SUMMARY and STATUS, then reenter the WHERE subcommand. Based the dump processing for the analysis subcommands, IPCS may now be able to identify the area.
WHERE will not change X if error conditions occur, such as syntax errors or an unresolvable data-descr.
When used as a primary command, WHERE stacks a pointer to the address, but does not change the value of X. Use option 1 (BROWSE) of the IPCS dialog to find the pointer.
You can invoke WHERE as an IPCS subcommand or as an IPCS primary command. (This section refers to both the subcommand and the primary command as the “WHERE command.”) The WHERE command is useful for identifying locations of addresses found in other reports produced by IPCS subcommands.
For addresses in these areas, the WHERE command returns the name of a load module.
The WHERE command provides the most specific information for addresses located in the nucleus. The WHERE command provides the name of the externally defined CSECTs within the nucleus in which the address is located. They are identified following the load module name. For nucleus CSECTs, the load module name is IEANUCOx, where x is obtained from field CVTNUCLS. Externally defined CSECTs in other load modules are not displayed.
The IPCS storage map entries describe subpools in increments of 4096-byte pages associated with subpools rather than the 8-byte units of allocated storage within them.
BLS18451I Unable to identify the area at ASID(X'0032') address 005CD478
ASID(X'0032') 005CD478. AREA(CURRENT)+5CC478 IN PRIVATE
The detail of the report generated by the WHERE command depends to a large extent on how much you have processed the dump. For example, if after initializing a dump, you enter WHERE, IPCS generates a minimal report. But if you enter WHERE again later in your IPCS session, after entering a number of subcommands, a more detailed report will probably be produced.
{ WHERE } data-descr
{ W }
[SELECT([AREA][MODULE][STRUCTURE])]
-------- SETDEF-Defined Parameters -------------------------
Note: You can override the following SETDEF parameters.
See SETDEF subcommand — set defaults.
[ FLAG(severity) ]
[ PRINT | NOPRINT ]
[ TERMINAL | NOTERMINAL ]
[ TEST | NOTEST ]
See Standard subcommand return codes for a description of the return codes produced by the WHERE subcommand.
COMMAND ===> IPCS WHERE FD2834.
WHERE generates the following output line, showing that the specified address, in address space X'0058' is X'20D14' bytes into CSECT IOSUCB, which is located in load module IEANUC01 in the READ/WRITE NUCLEUS.
IPCS OUTPUT STREAM -------------------------------------- LINE 0 COLS 1 78
COMMAND ===> _ SCROLL ===> CSR
****************************** TOP OF DATA ***********************************
ASID(X'0058') 00FD2834. IEANUC01.IOSUCB+020D14 IN READ/WRITE NUCLEUS
****************************** END OF DATA ***********************************
If the address you specified is in the portion of the dump in memory, the WHERE subcommand also takes you to that address in the dump when you press F3 to exit this screen.
If the primary command are used in this example, the item that contains the address are added to the pointer stack. If more than one item contains the address, the item with the smallest offset are added to the pointer stack.
===> SYSTRACE
Now, enter
WHERE on the command line of the system trace table.IPCS OUTPUT STREAM ---------------------------------------- LINE 471 COLS 1 78
COMMAND ===> WHERE 1D073D0 SCROLL ===> CSR
01 001B 009F8E88 SVCR 78 070C2000 81D07386 00000000 00000080 7FFFDD10
01 001B 009F8E88 SVC 78 070C3000 81D073B2 0000E101 00000030 7FFFDD10
01 001B 009F8E88 SVCR 78 070C3000 81D073B2 00000000 00000030 7FFFDD10
01 001B 009F8E88 SVC 78 070C1000 81D073D0 0000E101 00000010 7FFFDD80
01 001B 009F8E88 SVCR 78 070C1000 81D073D0 00000000 00000010 7FFFDD80
01 001B 009F8E88 SVCR 2A 070C1000 8001B832 00000000 00000000 009F8CF0
01 001B 009F8E88 SVC 78 070C2000 8001B93E 00000003 00000190 00006C60
01 001B 009F8E88 SVCR 78 070C2000 8001B93E 00000000 00000190 00006C60
01 001B 009F8E88 SVC 78 070C0000 80008B50 00000002 00000368 00000000
01 001B 009F8E88 SVCR 78 070C0000 80008B50 00000000 00000368 00006A88
01 001B 009F8E88 SVC 38 070C1000 80008C4E 00000000 00000006 00006C78
01 001B 009F8E88 PC ... 0 811520D2 00108
01 001B 009F8E88 PT ... 0 811520D2 001B
01 001B 009F8E88 SVCR 38 070C1000 80008C4E 00000000 00000002 00F3FB14
01 001B 009F8E88 SVC 78 070C0000 80019294 00000002 00000358 00000000
01 001B 009F8E88 SVCR 78 070C0000 80019294 00000000 00000358 00006730
01 001B 009F8E88 ?EXPL 0003 77007B16 C3629700 00000003
01 000E 009F6E88 SRB 070C0000 811A3180 0000000E 00F42200 00F4222C
80
01 000E 00000000 SSRV 2 80FFB540 000A002C 7F000000 00000000
00000000
01 000E 00000000 SSRV 12A 80007478 00B9E8B0 40000000 00000000
00000000
01 000E 009F6E88 DSP 070C0000 800073C2 00000000 000070C0 00B9E8B0 00
01 000E 009F6E88 SSRV 1 80007388 00B9E8B0 00000001 00000000
00000000
01 001B 009F8E88 DSP 070C0000 800192C8 00000000 00000002 00006B48 00
01 001B 009F8E88 SVC 78 070C2000 8001936C 0000E572 00001000 00000000
01 001B 009F8E88 SVCR 78 070C2000 8001936C 00000000 00001000 7FFE0000
01 001B 009F8E88 SVC 78 070C2000 800199B8 0000EF72 00000018 00000000
01 001B 009F8E88 SVCR 78 070C2000 800199B8 00000000 00000018 01B1E640
01 001B 009F8E88 SVC F0 070C2000 80014912 80014910 00000000 0000677C
01 001B 009F8E88 *SVC D 070C1000 80FE5CFC 80014910 80000000 80FF0000
01 001B 009F8E88 PC ... 0 811808CE 00506
01 001B 009F8E88 PC ... 0 82106B2A 00503
****************************** END OF DATA ***********************************
WHERE generates the following dump display reporter panel. It tells you that the address is 03D0 hexadecimal bytes into load module IGC0004B in the extended PLPA.
IPCS OUTPUT STREAM -------------------------------------- LINE 0 COLS 1 78
COMMAND ===> _ SCROLL ===> CSR
****************************** TOP OF DATA ***********************************
ASID(X'001B') 01D073D0. IGC0004B+03D0 IN EXTENDED PLPA
****************************** END OF DATA ***********************************
Because WHERE was invoked as a primary command, WHERE also stacks a pointer to the beginning of the load module, X'1D07000'. The pointer will appear in the Browse option of the IPCS dialog. The following shows using WHERE in the system trace table.
DSNAME('D46IPCS.DRVC400.SA00001') POINTERS -----------------------------------
COMMAND ===> _ SCROLL ===> CSR
PTR Address Address space Data type
00001 00000000 ASID(X'0003') AREA
Remarks:
00002 000006B0 ASID(X'0003') AREA
Remarks:
00003 00FD7420 ASID(X'0001') STRUCTURE(Cvt)
Remarks: Communications Vector Table
-------------------------------------------------------------------------------
|00004 01D07000 ASID(X'001B') MODULE(IGC0004B) |
| Remarks: |
-------------------------------------------------------------------------------
**************************** END OF POINTER STACK *****************************
IPCS OUTPUT STREAM -------------------------------------- LINE 0 COLS 1 78
COMMAND ===> WHERE 120E298 SCROLL ===> CSR
****************************** TOP OF DATA ***********************************
* * * * * L O G D A T A * * * * *
TYPE: SOFTWARE RECORD REPORT: SOFTWARE EDIT REPORT DAY.YEAR
(SVC 13) REPORT DATE 197.95
SVC: VS 2 REL 3 ERROR DATE 158.95
MODEL:3090 HH:MM:SS.T
SERIAL:170067 13::1:44.9
JOBNAME: D22AMSTR
ERRORID: SEQ=17095 CPU=0041 ASID=0047 TIME=13:31:43.9
< Some Output Not Shown >
TIME OF ERROR INFORMATION
PSW: 070C2000 8120E298 INSTRUCTION LENGTH: 02 INTERRUPT CODE: 000D
FAILING INSTRUCTION TEXT: 581097E6 0A0D4830 C0105800
REGISTERS 0-7
GR: 00000000 04C78000 006F72D8 0000E601 006F72D8 7FF12080 00000004 00EE5500
AR: 0124E1B8 00000000 00000000 00000000 00000000 00000000 00000000 00000000
First, all items that contain this address are displayed using the dump display reporter panel. The message below shows that the PSW you want to examine more closely is 200 bytes into CSECT IGVSTSKT. That CSECT is in load module IEANUC01 in the read-only nucleus.
IPCS OUTPUT STREAM -------------------------------------- LINE 0 COLS 1 78
COMMAND ===> _ SCROLL ===> CSR
****************************** TOP OF DATA ***********************************
ASID(X'0058') 0120E298. IEANUC01.IGVSTSKT+0200 IN READ ONLY NUCLEUS
****************************** END OF DATA ***********************************
When you press F3 to exit this screen, IPCS will stack the pointer to the beginning of the CSECT, so when you go back into Browse you can look at all of the detailed information in that register or PSW.
DSNAME('D46IPCS.DRVC400.SA00001') POINTERS -----------------------------------
COMMAND ===> _ SCROLL ===> CSR
PTR Address Address space Data type
00001 00000000 ASID(X'0003') AREA
Remarks:
00002 000006B0 ASID(X'0003') AREA
Remarks:
00003 00FD7420 ASID(X'0001') STRUCTURE(Cvt)
Remarks: Communications Vector Table
-------------------------------------------------------------------------------
|00004 0120E298 ASID(X'0058') MODULE(IEANUC01) |
| Remarks: |
-------------------------------------------------------------------------------
**************************** END OF POINTER STACK *****************************
COMMAND ===> where cda800.
WHERE generates the following output line, showing that the specified address is a TCB in the PRIVATE area.
CDA800. STRUCTURE(TCB)-10 IN PRIVATE
COMMAND ===> where 04a8001a
IPCS identifies the address space containing the module, the module name (if the name conforms to IPCS naming conventions), the offset of the address into the module, and the storage area containing the module.
ASID(X'0179') 04A8001A. IGC0006A+1A IN EXTENDED PLPA
COMMAND ===> where 04ab001a
IPCS provides the same information shown in the previous example, but instead of the name of the module, IPCS displays “SPECIALNAME”. IPCS also expands the name in hexadecimal characters, and shows the module name as an eye-catcher in the output.
ASID(X'0179') 04AB001A. SPECIALNAME+A01A IN EXTENDED PLPA
+0000 C9C7C3F0 F0F1F3C0 | IGC0013{ |