Nils Goroll
2010-05-18 14:00:21 UTC
Hi,
I'm analyzing a core dump where port_associate() failed with EAGAIN. My
understanding is that the number of associated fds has reached the
process.max-port-events limit.
I am thus suspecting a bug on my side going back to the following sentence in
the man page:
When an event for a PORT_SOURCE_FD object is retrieved, the
object no longer has an association with the port.
My initial understanding was that port_getn() was implicitly
port_dissociate()ing all ports, but checking the source this seems not to be the
case.
Could someone please confirm that my initial understanding was wrong and that
port_dissociate() should always be called for for every fd port_associate() had
been called?
Being at it, it would be nice if a clarification was added to the man page.
Thanks, Nils
I'm analyzing a core dump where port_associate() failed with EAGAIN. My
understanding is that the number of associated fds has reached the
process.max-port-events limit.
From another structure maintaining the fds associated, I know that the
respective limit of 64K cannot possibly have been reached.I am thus suspecting a bug on my side going back to the following sentence in
the man page:
When an event for a PORT_SOURCE_FD object is retrieved, the
object no longer has an association with the port.
My initial understanding was that port_getn() was implicitly
port_dissociate()ing all ports, but checking the source this seems not to be the
case.
Could someone please confirm that my initial understanding was wrong and that
port_dissociate() should always be called for for every fd port_associate() had
been called?
Being at it, it would be nice if a clarification was added to the man page.
Thanks, Nils