The word "shared" has 2 meanings. For most people, it means multiple tasks
using the same storage at the same time (e.g. CSA) which requires some sort of
serialization (e.g. CS, ENQ and more). User exits have another type of sharing
because 1 exit point can have multiple exit programs that are called serially
and do not require serialization. For instance, you may have an OEM product
that uses IEFU86 to monitor file open / close. The parm and is shared among all
called exit programs.
In the case of IEFU86, the workarea is passed as part of the parm. Notice the
doc says workarea offset instead of address. Your exit program can either use
this area if it's large enough but you shouldn't replace the parm area unless
IBM gives you instructions on replacing it. If it's too small, then use storage
obtain & release but remember this exit can be CPU expensive depending upon
your SMFPARMS.
Without seeing the dump, I would guess your S0C4 is caused by you not
specifying LINKAGE=BRANCH on the WTO. Also, install the exit manually for
testing using SETPROG from the console because you need the IPL to be
successful. Also remember that production systems are very different than test.
For instance, production may be collecting SUB=MSTR or hardware SMF data which
can be tricky if you don't understand the environment.
On Saturday, July 8, 2023 at 10:06:27 AM PDT, Guillaume Boesel
<[email protected]> wrote:
Hi Charles,
"This is not the environment for a learning exercise!"
Yes I understand that it's dangerous. I'm working on my own system.
"Is WTO even legal from IEFU86?"
WTO is just used to test my exit.
"STORAGE OBTAIN is a pretty "heavy" service to be using for every SMF record"
IEFU83 sample in SAMPLIB uses getmain, is it lighter than storage obtain ? I
use storage obtain because i'm not able to use the workarea safely.
It was my initial question :)
Thanks
Guillaume