Micheal 

Thanks for looking at it I see 8E76D0 at IQETCB

+0  (4) 00000000 link
+4  (4) 00026A6C IQEPARAM
+8  (4) 008AA7a8 IQEIRB
+c  (4) 00000000 IQETCB

why isn't IQETCB set?  I see 8E76D0 at that location 

I am begging to think that because I am running under TESTAUTH the IRB is
getting dispatched


00000000_008AA7A8   >000077B8  00000000  010F404E 9FF01E81 *>..........
+.0.a*
00000000_008AA7B8    078D0000  9FF01E80  008AA80C 008FEA90
*.....0....y.....*
00000000_008AA7C8    00000001  FF735894  852CAB40 052CBB3F  *.......me..
....*
00000000_008AA7D8    808CACD0  00000000  008CACA8 008CACD0
*...........y....*
00000000_008AA7E8    008CACD8  00000000  008C9AB8 052CCB3E
*...Q............*
00000000_008AA7F8    008CA2C0  008CA2C0  852CB72C 808FEA90
*..s...s.e.......*
00000000_008AA808    008AA80C  00000000  00026A6C 008AA7A8
*..y........%..xy*
00000000_008AA818    008E76D0  00000000  00000000 00000000
*................*


-----Original Message-----
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> On Behalf Of
Michael Stein
Sent: Friday, September 22, 2023 4:22 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: SCHEDIRB with CIRB

On Fri, Sep 22, 2023 at 01:58:00PM -0400, Joseph Reichman wrote:
> I am posting my code in addition to some displays I captured as I am 
> getting the feeling my IRB was not dispatched for some reason
> 
> So here is the code in my STIMER routine from where I issue the 
> SCHEDIRB pointing to the IQE generated  by the CIRB

I don't see why you need the stimer routine.  The description of SCHEDIRB
says that is for "directed IRB" where you specify your IRB is to run before
the specified RB.

> Here using LOOK is a display of the IRB Address 8AA7A8 don't know Why 
> RBEPA has bit 0 a 0 looking at the RBOPSW it's a 0 LAST CMD  - 8AA7A8

{storage display text realligned..}

00000000_008AA7A8   >000077B8  00000000  010F404E 9FF01E81 *>..........
+.0.a*
00000000_008AA7B8    078D0000  9FF01E80  008AA80C 008FEA90
*.....0....y.....*
00000000_008AA7C8    00000001  FF735894  852CAB40 052CBB3F  *.......me..
....*
00000000_008AA7D8    808CACD0  00000000  008CACA8 008CACD0
*...........y....*
00000000_008AA7E8    008CACD8  00000000  008C9AB8 052CCB3E
*...Q............*
00000000_008AA7F8    008CA2C0  008CA2C0  852CB72C 808FEA90
*..s...s.e.......*
00000000_008AA808    008AA80C  00000000  00026A6C 008AA7A8
*..y........%..xy*
00000000_008AA818    008E76D0  00000000  00000000 00000000
*................* 

The RB mapping includes fields for all types of RBs: PRB, SVRB, IRB, SIRB
and perhaps for types & flavors which don't exist anymore (since before
MVT).  A lot of these fields overlap as they aren't used at them same time.

Looking at our IRB:

+0  (4) 000077B8 address of problem program save area
+8  (2) 010f     length of RB in double words
+a  (1) 40      is an IRB
+b  (1) 4d      ? bits about has IQE, don't return IQE
+c  (4) 9ff01e81 rbepa, looks like low bit is flag bit for mode=defined
+10 (8) 078d0000 9ff01e80 -> psw
+18 (4) 008aa80c list orig for iqe
+60 (4) 008aa80c rbnexav => @ next avail IEQ
+64 (.) ..IQE.. 

The IQE: 00000000  00026A6C 008AA7A8 00000000 

+0  (4) 00000000 link
+4  (4) 00026A6C IQEPARAM
+8  (4) 008AA7a8 IQEIRB
+c  (4) 00000000 IQETCB

why isn't IQETCB set?  

https://www.ibm.com/docs/en/zos/2.1.0?topic=routines-using-cirb-macro-initia
lize-irb

The same TCB needs to be used to allocate the storage for the IRB and to
free it, thus CIRB needs the TCB address in addition to the TCB address in
the IQE (task to run the IRB).

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email
to lists...@listserv.ua.edu <mailto:lists...@listserv.ua.edu>  with the
message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to