On May 25,  6:37pm, Clemens Schrimpe wrote:
> On Sat, 25 May 2002, Allen Smith wrote:
> 

> > Perhaps because POLLOUT alone doesn't pick up "high-priority data
> > writeable" (at least it doesn't on IRIX)? Admittedly, high-priority data
> is, <> well, uncommon. Exactly what is the problem on Solaris?
> 
> The condition with POLLWRBAND is always true on Solaris 7 and 8
> at least for TCP sockets (obviously, as you can /always/ send "the" OOB
> octet ;-).

Urk! Ah. I seem to recall that there is a rather wide range of definitions
of "out-of-band"/"urgent" data on different UNIXen... this might explain the 
peculiarities.

> Thus the callback is constantly being called, regardless of the
> sockets ability to receive further data from the process, which is -well-
> "counterproductive".

Quite.

> Since the Event::io module is very flexible in regards to what events can
> be "waited" for: Why not introduce another set of conditions, like
> "urgent" ('u') or "out-of-band" ('o') to still provide the functionality
> for those few, who really use urgent/oob data together with Event::io
> triggers on the writing end of a socket/pipe/whatever.

Hmm... I am wondering whether a flag for "include out-of-band" is a more
correct way to do this - in other words, should not only "w" include
"out-of-band" availability, but should "r" include "out-of-band"
availability. How independent these two desires for checking are - and can
be on various OSes - is a good question.

> (Apparently not very many people seem to use Event::io for write events
> anyway. The Event module has been around for some time and Solaris is not
> exactly "uncommon", but still I had to find the problem just recently ...)

Well, there were some recent modifications to this portion of the code to
solve some bugs, so it's possible that those bugs were covering over this
problem, if people were using writeable _non-blocking_ sockets.

        -Allen

-- 
Allen Smith                     http://cesario.rutgers.edu/easmith/
September 11, 2001              A Day That Shall Live In Infamy II
"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety." - Benjamin Franklin

Reply via email to