Re: Modify ECB COMECBPT Intermittent response
Thank you worked now I have to try it a number if times > On Dec 9, 2018, at 4:03 PM, Charles Mills wrote: > > That is how I do it: > > EXTRACT COMADDR,FIELDS=COMM,MF=(E,EXTRACTL) > L R8,COMADDR GET ADDRESS OF THE AREA > USING COM,R8 USE R8 AS BASE ADDRESS OF COMM AREA > ICM R7,B'',COMCIBPT GET CIB ADDRESS FROM COM AREA > JZCIBDELET_NoCIB NO CIB > > QEDIT ORIGIN=COMCIBPT,BLOCK=(R7) > > CIBDELET_NoCIB EQU * > QEDIT ORIGIN=COMCIBPT,CIBCTR=1 > > Charles > > > -Original Message- > From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] > On Behalf Of Joseph Reichman > Sent: Sunday, December 9, 2018 12:20 PM > To: ASSEMBLER-LIST@LISTSERV.UGA.EDU > Subject: Re: Modify ECB COMECBPT Intermittent response > > I think that was it > > From what I understand After getting the CIB address via extract > I have to issue 2 QEDIT’s > > The first with a BLOCK parameter to free the start CIB > The second to a limit on the number if CIB > L RX,COMCIBPT > 1st QEDIT ORIGIN=COMCIBPT,ORIGIN=(RX) > 2nd QEDIT ORIGIN=COMCIBPT,CIBCTR=4 > Thanks > > > Joe Reichman > 170-10 73 rd ave > Fresh meadows NY 11366 > >> On Dec 7, 2018, at 9:27 AM, Joseph Reichman wrote: >> >> Let me check >> Thanks >> >> >> >>> On Dec 7, 2018, at 9:20 AM, Charles Mills wrote: >>> >>> Do you perhaps have a logic error relative to QEDIT? If you don't free the >>> CIB you may never get another MODIFY. >>> >>> Charles >>> >>> -Original Message- >>> From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] >>> On Behalf Of Joseph Reichman >>> Sent: Thursday, December 6, 2018 10:48 AM >>> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU >>> Subject: Re: Modify ECB COMECBPT Intermittent response >>> >>> It doesn’t have a wait bit there is only one task waiting on it >>> The main task has 2 ECB’s in the list >>> One for the EZASMI SELECT and one for the communication ECB >>> >>> The one task that got dispatched has a number of ECB’s waiting >>> >>> Things is 1 out of 4 times the posted logic works
Re: Modify ECB COMECBPT Intermittent response
That is how I do it: EXTRACT COMADDR,FIELDS=COMM,MF=(E,EXTRACTL) L R8,COMADDR GET ADDRESS OF THE AREA USING COM,R8 USE R8 AS BASE ADDRESS OF COMM AREA ICM R7,B'',COMCIBPT GET CIB ADDRESS FROM COM AREA JZCIBDELET_NoCIB NO CIB QEDIT ORIGIN=COMCIBPT,BLOCK=(R7) CIBDELET_NoCIB EQU * QEDIT ORIGIN=COMCIBPT,CIBCTR=1 Charles -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Joseph Reichman Sent: Sunday, December 9, 2018 12:20 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Modify ECB COMECBPT Intermittent response I think that was it >From what I understand After getting the CIB address via extract I have to issue 2 QEDIT’s The first with a BLOCK parameter to free the start CIB The second to a limit on the number if CIB L RX,COMCIBPT 1st QEDIT ORIGIN=COMCIBPT,ORIGIN=(RX) 2nd QEDIT ORIGIN=COMCIBPT,CIBCTR=4 Thanks Joe Reichman 170-10 73 rd ave Fresh meadows NY 11366 > On Dec 7, 2018, at 9:27 AM, Joseph Reichman wrote: > > Let me check > Thanks > > > >> On Dec 7, 2018, at 9:20 AM, Charles Mills wrote: >> >> Do you perhaps have a logic error relative to QEDIT? If you don't free the >> CIB you may never get another MODIFY. >> >> Charles >> >> -Original Message- >> From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] >> On Behalf Of Joseph Reichman >> Sent: Thursday, December 6, 2018 10:48 AM >> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU >> Subject: Re: Modify ECB COMECBPT Intermittent response >> >> It doesn’t have a wait bit there is only one task waiting on it >> The main task has 2 ECB’s in the list >> One for the EZASMI SELECT and one for the communication ECB >> >> The one task that got dispatched has a number of ECB’s waiting >> >> Things is 1 out of 4 times the posted logic works
Re: Modify ECB COMECBPT Intermittent response
I think that was it From what I understand After getting the CIB address via extract I have to issue 2 QEDIT’s The first with a BLOCK parameter to free the start CIB The second to a limit on the number if CIB L RX,COMCIBPT 1st QEDIT ORIGIN=COMCIBPT,ORIGIN=(RX) 2nd QEDIT ORIGIN=COMCIBPT,CIBCTR=4 Thanks Joe Reichman 170-10 73 rd ave Fresh meadows NY 11366 > On Dec 7, 2018, at 9:27 AM, Joseph Reichman wrote: > > Let me check > Thanks > > > >> On Dec 7, 2018, at 9:20 AM, Charles Mills wrote: >> >> Do you perhaps have a logic error relative to QEDIT? If you don't free the >> CIB you may never get another MODIFY. >> >> Charles >> >> -Original Message- >> From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] >> On Behalf Of Joseph Reichman >> Sent: Thursday, December 6, 2018 10:48 AM >> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU >> Subject: Re: Modify ECB COMECBPT Intermittent response >> >> It doesn’t have a wait bit there is only one task waiting on it >> The main task has 2 ECB’s in the list >> One for the EZASMI SELECT and one for the communication ECB >> >> The one task that got dispatched has a number of ECB’s waiting >> >> Things is 1 out of 4 times the posted logic works
Re: Modify ECB COMECBPT Intermittent response
Let me check Thanks > On Dec 7, 2018, at 9:20 AM, Charles Mills wrote: > > Do you perhaps have a logic error relative to QEDIT? If you don't free the > CIB you may never get another MODIFY. > > Charles > > -Original Message- > From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] > On Behalf Of Joseph Reichman > Sent: Thursday, December 6, 2018 10:48 AM > To: ASSEMBLER-LIST@LISTSERV.UGA.EDU > Subject: Re: Modify ECB COMECBPT Intermittent response > > It doesn’t have a wait bit there is only one task waiting on it > The main task has 2 ECB’s in the list > One for the EZASMI SELECT and one for the communication ECB > > The one task that got dispatched has a number of ECB’s waiting > > Things is 1 out of 4 times the posted logic works
Re: Modify ECB COMECBPT Intermittent response
Do you perhaps have a logic error relative to QEDIT? If you don't free the CIB you may never get another MODIFY. Charles -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Joseph Reichman Sent: Thursday, December 6, 2018 10:48 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Modify ECB COMECBPT Intermittent response It doesn’t have a wait bit there is only one task waiting on it The main task has 2 ECB’s in the list One for the EZASMI SELECT and one for the communication ECB The one task that got dispatched has a number of ECB’s waiting Things is 1 out of 4 times the posted logic works
Re: Modify ECB COMECBPT Intermittent response
On Thu, 6 Dec 2018 13:47:36 -0500, Joseph Reichman wrote: >It doesn’t have a wait bit there is only one task waiting on it That is a contradiction. If a task is waiting on an ECB, it has the wait bit on. Unless, of course, someone has clobbered it. -- Tom Marchant
Re: Modify ECB COMECBPT Intermittent response
I will later on tonite Thanks > On Dec 6, 2018, at 1:44 PM, Jonathan Scott > wrote: > > Ref: Your note of Thu, 6 Dec 2018 08:27:17 -0600 > > John K writes: >> Just curious. Are you using the WAIT or EVENTS macro? > > Last time I tried, EVENTS couldn't be used with the > communications ECB. It's in protected storage, and there's a > special feature in WAIT ECB or ECBLIST that specifically allows > the caller to specify that address, but not in EVENTS. > > The protocol for using QEDIT to process STOP/MODIFY commands > is mostly quite straightforward. If something isn't working > as expected it would be a good idea to provide more detail. > > Jonathan Scott
Re: Modify ECB COMECBPT Intermittent response
It doesn’t have a wait bit there is only one task waiting on it The main task has 2 ECB’s in the list One for the EZASMI SELECT and one for the communication ECB The one task that got dispatched has a number of ECB’s waiting Things is 1 out of 4 times the posted logic works > On Dec 6, 2018, at 1:42 PM, Bob Raicer wrote: > > The scenario you describe creates, at the minimum, race conditions > and you can (and likely will) get a S301 ABEND. (Attempting to > WAIT on an ECB which already has its WAIT bit set to one).
Re: Modify ECB COMECBPT Intermittent response
Ref: Your note of Thu, 6 Dec 2018 08:27:17 -0600 John K writes: > Just curious. Are you using the WAIT or EVENTS macro? Last time I tried, EVENTS couldn't be used with the communications ECB. It's in protected storage, and there's a special feature in WAIT ECB or ECBLIST that specifically allows the caller to specify that address, but not in EVENTS. The protocol for using QEDIT to process STOP/MODIFY commands is mostly quite straightforward. If something isn't working as expected it would be a good idea to provide more detail. Jonathan Scott
Re: Modify ECB COMECBPT Intermittent response
The scenario you describe creates, at the minimum, race conditions and you can (and likely will) get a S301 ABEND. (Attempting to WAIT on an ECB which already has its WAIT bit set to one).
Re: Modify ECB COMECBPT Intermittent response
Just curious. Are you using the WAIT or EVENTS macro? Regards, John K On Wed, Dec 5, 2018 at 6:36 AM Joseph Reichman wrote: > Hi > > > > I have started task which is a TCP/IP concurrent server both the main task > and the subtask have SELECT API (the main task to listen for incoming > connections) the subtask for multiple reads/writes > > The main task has an ECBLIST which contains the communication ECB. Thing is > the modify command sometimes works by that I mean the functionality of the > code. I am thinking of passing the ECB to the subtask to put it in the wait > list 9ECBLIST) as well > > > > > > Thanks >
Re: Modify ECB COMECBPT Intermittent response
One or the other, not both. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Assembler List on behalf of Joseph Reichman Sent: Wednesday, December 5, 2018 7:36 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Modify ECB COMECBPT Intermittent response Hi I have started task which is a TCP/IP concurrent server both the main task and the subtask have SELECT API (the main task to listen for incoming connections) the subtask for multiple reads/writes The main task has an ECBLIST which contains the communication ECB. Thing is the modify command sometimes works by that I mean the functionality of the code. I am thinking of passing the ECB to the subtask to put it in the wait list 9ECBLIST) as well Thanks