Abend S0C4 when invoking/using TMSXITS
search cancel

Abend S0C4 when invoking/using TMSXITS

book

Article ID: 230992

calendar_today

Updated On:

Products

CA 1 Flexible Storage

Issue/Introduction

The routine TMSUX2S was reworked for CA1 14.0 TMSXITS.  My tape jobs get an 0C4 at the same PSW address no matter how I change XITS. I’m wondering if I have an issue picking up my new TMSXITS.  I see it loaded on TMSINIT (and the address is different on each startup), but at times I think it hasn’t been available.  The abend appears to involve the RACHECK parameter list.

Environment

Release : 14.0

Component : CA 1 Tape Management

Resolution

Since CA1 14.0, there was a change to TMSSECUR (the caller of TMSXITS to be AMODE=ANY and RMODE=ANY. Should have changed the documentation as well to indicate that TMSXITS should at least be AMODE=31). The problem is that the RACHECK (after label RACHKRTN) does a “LA  0,U1S0VOL”. This U1S0VOL field is above the line, but because TMSXITS is AMODE24 the high-order byte is dropped. So, instead of using address 0D400870 it is storing 00400870 into the RACHECK parameter list. And 00400870 is not addressable of course.

So, if AMODE=ANY and RMODE=ANY is added to the program itself (right after the “TMSXITS  CSECT” statement) – everything should be okay:

TMSXITS  CSECT

TMSXITS  AMODE ANY           

TMSXITS  RMODE ANY           

Additional Information

The CA1 documentation will be updated with this resolution info.