I know of a product that created a permanent subtask in the *MASTER*
address space by scheduling an SRB to *MASTER*, which then located the
IEEVWAIT task there and issued CIRB to create an IRB associated with
IEEVWAIT, which in turn issued an ATTACH to create a permanent subtask of
IEEVWAIT. The technique was used to create a task that would write SMF
records asynchronously out of *MASTER*, and it worked well.

Mike Shaw
MVS/QuickRef Support Group
Chicago-Soft, Ltd.


On Sun, Sep 17, 2023 at 10:09 AM Seymour J Metz <[email protected]> wrote:

> An IRB is an RB while an SRB, despite the name, is not. An SRB oes away
> once it is dispatched; a page fault schedules a new SRB to resume once the
> page is read in.
>
> GY28-6659-7, OS Release 21. 7 - IBM System/360 Operating System - MVT
> Supervisor - Program Number 360S-CI-535, GY28-6659-7, SERVICES INDIRECTLY
> RELATED TO A TASK
> CONTROL BLOCK, pp. 43-44, at <
> https://bitsavers.org/pdf/ibm/360/os/R21.7_Apr73/plm/GY28-6659-7_MVT_Supervisor_PLM_Rel_21.7_May73.pdf#page=63>
> and SCHEDULING A USER EXIT ROUTINE, pp. 64-67 at <...#page=84>, provides a
> good description that is till relevant to z/OS, although some details have
> changed.
>
> ________________________________________
> From: IBM Mainframe Discussion List <[email protected]> on behalf
> of Tom Brennan <[email protected]>
> Sent: Sunday, September 17, 2023 1:58 AM
> To: [email protected]
> Subject: Re: Why it's important to take Seymour's advice
>
> I've never written code that runs as an SRB, but over the years I've
> read about them and seen them in action, such as Omegamon poking code
> into other address spaces to grab data or do things like zap memory.  So
> my simple understanding is an SRB is code that once scheduled, gets run
> first when the dispatcher comes back around to that address space, and
> then (I assume) is removed once it has done its work.
>
> So what's an IRB - Interrupt Request Block?  I've heard the name but
> know nothing about it other than the manual mentions Asynchronous Exits,
> but doesn't seem to go into the details.  So are we talking about code
> that gets executed sometime during interrupt processing, such as when an
> I/O interrupt occurs?
>
> On 9/15/2023 10:54 PM, Michael Stein wrote:
> > On Fri, Sep 15, 2023 at 06:16:59PM -0400, Joseph Reichman wrote:
> >> I did schedule the irb in the ikjeft01 TCB against Seymour's advice
> >> for a return code of zero from schedirb
> >
> > There are likely many ways to do something like what you are trying
> > to do and the IRB idea likely wasn't close to the best, however:
> >
> > * if you have a test system at your disposal where a dump or crash
> >    won't hurt others
> >
> > * and you have the time to do a bit of exploring and learning
> >
> > I don't see it as bad, unless you don't learn from it.
> >
> >> However the TMP Estae issued an SDUMP
> >
> > Which is what I'd expect if the code the IRB tried to run had any sort
> > of problem (program check? abend?).  The resulting abend will be passed
> > to that tasks (IKJEFT01) ESTAE and most likely it has no idea what to
> > do about it.  So it took a dump and likely got the RB chain for that
> > task cleaned up (or terminated the task?).
> >
> >> I guess it didn't like me scheduling an irb in its TCB
> >
> > No, my best guess is that IKJEFT01 has no idea anyone would do such
> > a thing.  And if the IRB code ran and terminated normally the IRB would
> > go away and IKJEFT01 would still be there and would never know.
> >
> > Go read the dump and figure out what happened...
> >
> > Find the IJKEFT01 TCB and it's RB chain.  Does it show an IRB on the
> > chain?  Where do the PSWs in the RBs on the chain point?
> >
> > ----------------------------------------------------------------------
> > For IBM-MAIN subscribe / signoff / archive access instructions,
> > send email to [email protected] with the message: INFO IBM-MAIN
> >
> >
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to