Michael Knigge wrote:
Thank you all for your hints... When the bug is found I'll tell you...

If anybody is interested - it is solved!

The bug wasn't found by using IPCS, ABEND-AID, DumpMaster or whatever, just by using the all time favourite Debugger "Eyes'n'Brain" ;-)

My application is written in C with the exception of two modules which are written in assembler (for invoking LOCATE and OBTAIN). This has been my code (extract):

LOCATE   CSECT
LOCATE   AMODE ANY
LOCATE   RMODE ANY
         SAVE  (14,12)
         BALR  R3,0
         USING *,R3
         LR    R9,R13
         LA    R13,SAVEAREA
         ST    R13,8(R9)
         ST    R9,4(R13)
*
         L     R4,0(R1)
         USING PARM,R4
*
         LOCATE PARM
         ST    R15,RC
*
         L     R13,4(,R13)
         MVC   16(4,R13),RC
         LM    R14,R12,12(R13)
         BR    R14

SAVEAREA DS    18F
RC       DS    F


Where is the fault? Nowhere! It's all correct. But this is true only for non-threaded code. My application uses multiple threads and by using the above code all thready have been sharing the same SAVEAREA....

I've written the ASM-modules LE/370 compliant now with dynamic saveareas and hey.... all works perfect...


Bye,
Michael

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to