Re: io_close proposal

Marcus Brinkmann <[email protected]>
Newsgroups gmane.os.hurd.devel.readers
Message-ID <[email protected]>
On Sun, May 19, 2002 at 01:31:54PM -0700, Thomas Bushnell, BSG wrote:
> Marcus Brinkmann <[email protected]> writes:
> 
> > Well, the real problem, and the explanation why my idea won't work is this:
> > 
> > If the server sees 1 extant send right, he doesn't know if this is the
> > callers extant send right, or if the number of extant send rights has been
> > 2 and the caller did:
> > 
> > io_close_request(port)
> > mach_port_deallocate(mach_task_self(), port);
> 
> Here, the user has not followed the protocol.  He has the port
> *twice*, and if he wants close actions to work properly, he must call
> io_close_request on *each*.  

Sorry, I was not being clear.  I was arguing here against the idea of
sending the io_close _without sending the port right along with the
message_, which is a different idea from the one I originally proposed.

The point is that the current interruptible RPC stubs expect that the caller
keeps a send right for each send right moved in the message.  I was trying
to think about a way to make io_close work without moving the send right of
the caller to the server.

I think I have showed that such an approach is impossible to work reliably.

I should have given the io_close_request above a different name to
distinguish it from the original proposal.

Thanks,
Marcus

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org [email protected]
Marcus Brinkmann              GNU    http://www.gnu.org    [email protected]
[email protected]
http://www.marcus-brinkmann.de
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.