dispatch_select problem?

Posted for a customer.

-----Original Message-----
From: John A. Murphy [mailto:> murf@perftech.com> ]
Sent: Saturday, July 06, 2002 6:02 PM
To: Xiaodan Tang
Subject: Problem in dispatch_select.c


I posted an article with subject Thread Pool Problems to the
qdn.public.ddk.network newsgroup, thinking that I had found a network
problem. It now appears that the problem is actually in
dispatch_select.c;
do you know whose attention I should bring this to, or what
newsgroup would
be an appropriate place to post it?

The problem is that the _SELECT_EVENT flag doesn’t always get set in
vec.flags, and every time a thread goes back into
dispatch_block() all of
the threads that are currently executing get rearmed in
_select_rearm()
since neither the _SELECT_ARM or _SELECT_EVENT flags are set.
This results
in multiple notifications of the same event, the creation of too many
threads, etc.

Xiaodan Tang <xtang@qnx.com> wrote:

Posted for a customer.

Replied and fixed internally and John has been notified.

THanks,
Thomas

-----Original Message-----
From: John A. Murphy [mailto:> murf@perftech.com> ]
Sent: Saturday, July 06, 2002 6:02 PM
To: Xiaodan Tang
Subject: Problem in dispatch_select.c


I posted an article with subject Thread Pool Problems to the
qdn.public.ddk.network newsgroup, thinking that I had found a network
problem. It now appears that the problem is actually in
dispatch_select.c;
do you know whose attention I should bring this to, or what
newsgroup would
be an appropriate place to post it?

The problem is that the _SELECT_EVENT flag doesn’t always get set in
vec.flags, and every time a thread goes back into
dispatch_block() all of
the threads that are currently executing get rearmed in
_select_rearm()
since neither the _SELECT_ARM or _SELECT_EVENT flags are set.
This results
in multiple notifications of the same event, the creation of too many
threads, etc.

Thomas (toe-mah) Fletcher QNX Software Systems
thomasf@qnx.com Core OS Technology Group
(613)-591-0931 http://www.qnx.com/