Re:question about numbered user exits

Discussion created by ca.portal.admin on Oct 18, 2010
I am reading Chris Hoelscher's article on z/IIP exploitation in the
September 2010 ""IUA Connections"" with great interest as our site
experienced the problem that he describes. Chris indicates that the
numbered user exits can contribute to TCB/SRB swapping. We use exit 28
(security pre-processing) and I am wondering if this could account for
some of the high swapping rate that we saw.

Here is my question: Is there any way to determine how many times a
numbered user exit is actually being executed?

Kay Rozeboom
State of Iowa
Information Technology Enterprise
Department of Administrative Services
Telephone: 515.281.6139 Fax: 515.281.6137
Email: Kay.Rozeboom@Iowa.Gov
*****JuliusBaer Disclaimer***** This e-mail is for the intended
recipient only and may contain confidential or privileged information.
If you have received this e-mail by mistake, please contact us
immediately and completely delete it (and any attachments) and do not
forward it or inform any other person of its contents. If you send us
messages by e-mail, we take this as your authorization to correspond
with you by e-mail, however, we will not accept the electronic
transmission of orders/instructions without a specific agreement being
in place to govern the same. If you do not wish to receive any further
e-mail correspondence please let us know. E-mail transmission cannot be
guaranteed to be secure or error-free as information could be
intercepted, amended, corrupted, lost, destroyed, arrive late or
incomplete, or contain viruses. Neither the Julius Baer Group nor the
sender accept liability for any errors or omissions in the content of
this message which arise as a result of its e-mail transmission. Please
note that all e-mail communications to and from the Julius Baer Group
may be monitored. This communication is for informational purposes only.
It is not intended as an offer or solicitation for the purchase or sale
of any financial instrument or as an official confirmation of any
IDMS 3rd-party providers forum


Re: question about numbered user exits
"Hi Chris,

You are correct. IDMSCOMP and IDMSCOM are allowed to run in SRB mode.
All others require TCB mode. (It has nothing to do with the name. In
other words, you couldn't name a DB proc IDMSCOMP and have it run in SRB
mode). The majority of ""overhead"" when using the zIIP option comes from
swapping back and forth so the less swapping the better.

In my opinion, with respect to the question related to performance. I
would suggest you hard link RHDCUXIT exits with RHDCUXIT as opposed to
defining them as programs and having them called using Standard DC
services. A simple BALR is a lot faster than having the RHDCCXIT module
issue a #CALL to a program. The call and the code path is a lot longer
than the BALR. In a sense this is a lot like linking ""BIFS"" with ADS.
I've heard of and seen some fairly impressive numbers on this subject.
As far as SRB/TCB/SRB swapping, we will always swap to TCB mode when
calling an RHDCUXIT exit.

If you want to see where swaps are occurring you could specify
""CSATST49"" in your SYSIDMS file. I would only do this on a non
production system simply because in addition to counting the swaps there
are some WTORs produced which might not amuse the operators. Don't get
me wrong, we can use this in production systems if the situation
warrants but as a simple matter of gathering information over a period
of time it might be a bit much. It is fine for TEST, QA, Pre-Production,
development systems or whatever your site refers to them as.

""DCMT D SUBT"" will report on the swaps. Here's a sample:


*** Display all subtasks ***

Work Task dispatch

Name Nr type Status count Wakeup count Total
CPU time
---- -- ---- ------ ------------- ------------
MAINTASK 01 IDMS BUSY 1,327 1,228

CHGEMODE table display

Address Program Offset Call cnt TCB->SRB SRB->TCB

-------- -------- -------- ---------- ---------- ----------

3D4B28EA RHDCWAIT 000032EA 1 1 0

3D554058 RHDCTSKI 00000458 22 0 22

3D54C514 RHDCMSTR 00000114 1 1 0

3D52B8F2 RHDCWTL 00001AF2 84 0 84