Re: Modify ECB COMECBPT Intermittent response

2018-12-09 Thread Joseph Reichman
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

2018-12-09 Thread Charles Mills
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

2018-12-09 Thread Joseph Reichman
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

2018-12-07 Thread Joseph Reichman
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

2018-12-07 Thread Charles Mills
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

2018-12-06 Thread Tom Marchant
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

2018-12-06 Thread Joseph Reichman
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

2018-12-06 Thread Joseph Reichman
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

2018-12-06 Thread Jonathan Scott
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

2018-12-06 Thread Bob Raicer

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

2018-12-06 Thread Janko Kalinic
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

2018-12-05 Thread Seymour J Metz
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