Hi This post is somewhat related to the original
Post I was just looking at the parameters for DCBE and one of them FIXED=USER with this DCBE option you assert that data areas remain fixed from the time the read or write is issued through the completion of WAIT or CHECK So first I was unaware of this Second does this refer to the I/O areas Or the control block DCB, DCBE DECB as well I was able to get my READ working when I chose sp=233 for the I/O area which is it not pageable and fixed Thanks > On Mar 22, 2023, at 8:09 AM, [email protected] wrote: > > This is the code all I did was change the ioarea from sp=0 to sp=233 > I am running under TESTAUTH and all my routines start by establishing an > estate > > After the balr from the read (using sp = 0) that's were it went to the estae > > Checked R1-> SDWAPTR at +5 for 12 bits was 800 r15 starting at +18 from > sdwa was a 4 > > thanks > L R0,=F'31996' > * > MVC SUP_LIST(SUP_LEN),SUP_ON MOVE CONSTANT > * > MODESET MF=(E,SUP_LIST) STORAGE KEY ZERO > * > SPKA 0 > STORAGE OBTAIN,LENGTH=(R0),ADDR=(R7),LOC=(31,64),SP=233 > <------ > * LA R7,IOAREA > * ST R7,IOPTR > * > ST R7,IOBUFF > L R7,IOBUFF > MVC OPEN_LST(OPEN_LEN),OPEN_CON > OPEN ((R6),INPUT),MF=(E,OPEN_LST),MODE=31 > * > * MVC ADATADECB(IREADLEN),IREAD > TM DCBOFLGS,DCBOFOPN > BZ EXITDEBG > USING ASMADATA,R7 > PROCADATA DS 0H > READ ADATADECB,SF,(R6),(R7),'S',MF=E > * > CHECK ADATADECB > * > LA R7,4(,R7) > CHSI ADATA_RECTYPE,ADATA_RECESD External sym dic. > BNE CKSRC > > > -----Original Message----- > From: IBM Mainframe Discussion List <[email protected]> On Behalf Of > Binyamin Dissen > Sent: Wednesday, March 22, 2023 5:24 AM > To: [email protected] > Subject: Re: BSAM READ AMODE 31 RMODE 31 > > Did you check the dump as I suggested? > > If so, post your new code. > > On Wed, 22 Mar 2023 03:54:37 -0400 Joseph Reichman <[email protected]> > wrote: > > :>This was when I used R7 R7 had the address of the IOAREA it abended 800 RC > 4 when I got the storage from sp 233 it worked :> :>This is application code > subpool zero shouldn't give me a problem :> :>> On Mar 22, 2023, at 2:48 AM, > Binyamin Dissen <[email protected]> wrote: > :>> > :>> ?Because when you supply IOBUFF as the address of the buffer it will > overlay :>> storage following that label. That includes register save areas, > code, etc. > :>> Any kind of abend may occur. > :>> > :>> Look at your dump very carefully. See if the entire working storage is > as :>> expected. > :>> > :>> Look at the trace table before the abend and t6he BEA. How did you get > there? > :>> > :>> > :>> On Tue, 21 Mar 2023 21:26:20 -0400 Joseph Reichman > <[email protected]> :>> wrote: > :>> > :>> :>This totally crazy I abended 800 RC 4 :>> :>Looked at the abend codes > says system EXCPVSR was trying to page fix storage :>> :> :>> :>I then got > sp 233 says it's fixed and also key 0 :>> :>Worked :>> :> :>> :>I don't get > it there is no reason for the IOAREA to be sp 233 subpool 0 should be good > enough :>> :> :>> :> :>> :> :>> :>> On Mar 21, 2023, at 11:43 AM, Seymour J > Metz <[email protected]> wrote: > :>> :>> > :>> :>> ?You have to give READ the address of the buffer, not the address of > a pointer to it. > :>> :>> > :>> :>> For 64-bit there is a different DECB format; I believe that's SF64. > :>> :>> > :>> :>> ________________________________________ > :>> :>> From: IBM Mainframe Discussion List <[email protected]> on > behalf of Joseph Reichman <[email protected]> :>> :>> Sent: Tuesday, > March 21, 2023 11:22 AM :>> :>> To: [email protected] :>> :>> > Subject: Re: BSAM READ AMODE 31 RMODE 31 :>> :>> :>> :>> Still have problems > :>> :>> :>> :>> With the read :>> :>> :>> :>> I tried last night and it > worked let me explain :>> :>> :>> :>> The address of the IO area I store in > a full word :>> :>> IOBUFF :>> :>> :>> :>> When I did LA R7,IOBUFF :>> :>> > And then did :>> :>> :>> :>> READ ADATADECB,SF,(R6),(R7),'S',MF=E :>> :>> > :>> :>> It worked today morning didn't change code had problems :>> :>> :>> > :>> When I did L R7,IOBUFF it didn't :>> :>> :>> :>> I know both Binyamin > and Charles Mills in their example had Load but it doesn't make sense :>> > :>> :>> :>> At +12 is the address of a pointer to the IOAREA if that were > the address it self :>> :>> :>> :>> What if you had a 64 bit pointer (which > bsam supoorts) so it had to be a pointer to where the pointer ( in 64 bit > that would 8 bytes ) :>> :>> Thanks :>> :>> :>> :>> :>> :>>> On Mar 20, > 2023, at 3:46 PM, Seymour J Metz <[email protected]> wrote: > :>> :>>> > :>> :>>> ?IMHO it's clearer to just use > :>> :>>> > :>> :>>> READ PDSDECB,SF,PDSDCB,address _of_READ_buffer,MF=E :>> :>>> CHECK > PDSDECB :>> :>>> :>> :>>> :>> :>>> -- :>> :>>> Shmuel (Seymour J.) Metz :>> > :>>> http://mason.gmu.edu/~smetz3 :>> :>>> :>> :>>> > ________________________________________ > :>> :>>> From: IBM Mainframe Discussion List [[email protected]] on > behalf of Joseph Reichman [[email protected]] :>> :>>> Sent: Monday, > March 20, 2023 9:20 AM :>> :>>> To: [email protected] :>> :>>> > Subject: BSAM READ AMODE 31 RMODE 31 :>> :>>> > :>> :>>> Hi > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> I know Charles Mills answered my question nearly 4 weeks ago but I > would :>> :>>> just like to corroborate the I/O areas for the read can be 31 > bit addressing :>> :>>> only the dcb and decb need to be below the line :>> > :>>> :>> :>>> I am running AMODE 31 RMODE 31 :>> :>>> :>> :>>> :>> :>>> :>> > :>>> The DCB is below the line as well as the DECB :>> :>>> :>> :>>> :>> > :>>> :>> :>>> My read returns ok :>> :>>> :>> :>>> :>> :>>> :>> :>>> After I > set a beak point after the CHECK I get As S0D9 ABEND with a SDUMP :>> :>>> > :>> :>>> :>> :>>> :>> :>>> This the example that Charles sent to me does nt > say anything about the :>> :>>> IOAREAS or pointers to the IOAREAS :>> :>>> > :>> :>>> :>> :>>> :>> :>>> LA Rn,PDSDCB :>> :>>> :>> :>>> ST Rn,PDSDECB+8 > PLACE DCB ADDRESS IN DECB :>> :>>> :>> :>>> L Rn,address of READ buffer :>> > :>>> :>> :>>> READ PDSDECB,SF,,(Rn),MF=E CHECK PDSDECB :>> :>>> :>> :>>> :>> > :>>> :>> :>>> :>> :>>> :>> :>>> :>> :>>> :>> :>>> :>> :>>> :>> :>>> This is > my read :>> :>>> :>> :>>> :>> :>>> :>> :>>> READ > ADATADECB,SF,(R6),IOBUFF,'S',MF=E :>> :>>> :>> :>>> :>> :>>> :>> :>>> The > IOBUFF is a full word pointer to the storage I obtain :>> :>>> :>> :>>> :>> > :>>> :>> :>>> :>> :>>> :>> :>>> Here is my code :>> :>>> :>> :>>> :>> :>>> > :>> :>>> LA R0,IODSECTLEN > :>> :>>> > :>> :>>> STORAGE OBTAIN,LENGTH=(R0),ADDR=(R6),LOC=BELOW,SP=0 > :>> :>>> > :>> :>>> LR R9,R6 > :>> :>>> > :>> :>>> USING IHADCB,R9 > :>> :>>> > :>> :>>> USING IODSECT,R6 > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> LA R7,SYSADATA > :>> :>>> > :>> :>>> MVC 0(IODSECTLEN,R6),0(R7) > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> LA R7,SYSDCBE-SYSADATA(,R6) > :>> :>>> > :>> :>>> ST R7,DCBDCBE > :>> :>>> > :>> :>>> LA R7,EX24LST-SYSADATA(,R6) > :>> :>>> > :>> :>>> STCM R7,B'0111',DCBEXLSA > :>> :>>> > :>> :>>> LA R7,ABND24-SYSADATA(,R6) > :>> :>>> > :>> :>>> STCM R7,B'0111',ABND24ADR-SYSADATA(R6) > :>> :>>> > :>> :>>> LA R7,ABENDRTN > :>> :>>> > :>> :>>> ST R7,ABEND31-SYSADATA(,R6) > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> T L R0,=F'31996' > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> STORAGE OBTAIN,LENGTH=(R0),ADDR=(R7),LOC=RES,SP=0 > :>> :>>> > :>> :>>> * LA R7,IOAREA > :>> :>>> > :>> :>>> * ST R7,IOPTR > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> ST R7,IOBUFF > :>> :>>> > :>> :>>> MVC OPEN_LST(OPEN_LEN),OPEN_CON > :>> :>>> > :>> :>>> OPEN ((R6),INPUT),MF=(E,OPEN_LST),MODE=31 > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> TM DCBOFLGS,DCBOFOPN > :>> :>>> > :>> :>>> BZ EXITDEBG > :>> :>>> > :>> :>>> USING ASMADATA,R7 > :>> :>>> > :>> :>>> L R10,IOBUFF > :>> :>>> > :>> :>>> PROCADATA DS 0H > :>> :>>> > :>> :>>> READ ADATADECB,SF,(R6),IOBUFF,'S',MF=E > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> CHECK ADATADECB > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> OPEN_CON OPEN (*-*,INPUT),MF=L,MODE=31 :>> :>>> :>> :>>> SYSADATA > DCB DDNAME=SYSADATA,RECFM=VB,MACRF=RP,DSORG=PS,DCBE=SYSDCBE,EXX > :>> :>>> > :>> :>>> LST=EX24LST > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> IHADECB DSECT=NO > :>> :>>> > :>> :>>> DECBLEN EQU *-DECB > :>> :>>> > :>> :>>> SYSDCBE DCBE > EODAD=FIN,GETSIZE=YES,LOC=ANY,RMODE31=BUFF,SYNAD=SYNAD,VEX > :>> :>>> > :>> :>>> RSION=1 > :>> :>>> > :>> :>>> EX24LST DS 0F > :>> :>>> > :>> :>>> ADATAEXLST DC AL1(EXLDCBAB+X'80') > :>> :>>> > :>> :>>> ABND24ADR DS AL3 > :>> :>>> > :>> :>>> ABND24 DS 0H > :>> :>>> > :>> :>>> L R15,ABEND31-SYSADATA(,R15) > :>> :>>> > :>> :>>> BSM 0,R15 > :>> :>>> > :>> :>>> ABEND31 DS XL4 > :>> :>>> > :>> :>>> STROGE24 EQU *-EX24LST > :>> :>>> > :>> :>>> * > :>> :>>> > :>> :>>> IODSECT DSECT > :>> :>>> > :>> :>>> ADATADCB DS CL(DCBLNGBS) > :>> :>>> > :>> :>>> ADATADECB DS CL(DECBLEN) > :>> :>>> > :>> :>>> ADATADCBE DS CL(DCBELENV1) > :>> :>>> > :>> :>>> DS 0F > :>> :>>> > :>> :>>> INST31 DS CL(STROGE24) > :>> :>>> > :>> :>>> IODSECTLEN EQU *-IODSECT > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > :>> :>>> > ---------------------------------------------------------------------- > :>> :>>> 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 > :>> :> :>> > :>---------------------------------------------------------------------- > :>> :>For IBM-MAIN subscribe / signoff / archive access instructions, :>> > :>send email to [email protected] with the message: INFO IBM-MAIN :>> > :>> -- :>> Binyamin Dissen <[email protected]> :>> > http://www.dissensoftware.com :>> :>> Director, Dissen Software, Bar & Grill > - Israel :>> :>> > ---------------------------------------------------------------------- > :>> 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 > > -- > Binyamin Dissen <[email protected]> http://www.dissensoftware.com > > Director, Dissen Software, Bar & Grill - Israel > > ---------------------------------------------------------------------- > 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
