[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: io_close proposal

From: Thomas Bushnell, BSG
Subject: Re: io_close proposal
Date: 15 May 2002 23:30:52 -0700
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Roland McGrath <address@hidden> writes:

> Actually, isn't there a race in libports if we use a move-send right for
> the receiver port?  The last send right will move into the message and then
> won't a no-senders notification be generated while the message is
> queued?

No...the port isn't destroyed, just moved.  While it is in transit, it
is still in existence.  It gets to the server, which now has the
user's send right.  

The server for io_close would look something like:

  set up synchronization watch, lock against creation of new send rights
  see if we have the only outstanding send right now
  if we do:
    deallocate the received send right
    wait for synchronization
  if we don't
    tear down synchronization watch
    deallocate the received send right

The deallocation of the receive right itself will happen exactly as it
does now, with the additional signalling of whatever relevant
condition there is.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]