bug-hurd
[Top][All Lists]
Advanced

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

Re: [PATCH hurd 28/30] libports: use protected payloads to optimize the


From: Justus Winter
Subject: Re: [PATCH hurd 28/30] libports: use protected payloads to optimize the object lookup
Date: Sat, 04 Apr 2015 18:38:11 +0200
User-agent: alot/0.3.5

Quoting Justus Winter (2015-04-03 11:55:07)
> Quoting Samuel Thibault (2014-12-09 02:21:20)
> > Justus Winter, le Thu 04 Dec 2014 15:39:04 +0100, a écrit :
> > > If we now `ports_destroy_right' X, and at the same time the last send
> > > right to X is destroyed, there's a chance that said notification is
> > > already delivered to X.
> > 
> > Mmm, isn't that also true for any kind of message?
> 
> You are right, it is.
> 
> I briefly spoke with Richard about the problem.  He suggested to
> insert a tomb-stone in ports_destroy, and use Mach's no-senders
> notification to deallocate the portinfo structure.  No need for a
> fancy deallocation scheme.

Having spent more time on this, forget what I wrote yesterday.

In fact, I came up with a reasonable simple solution to the problem.
It involves keeping track of threads servicing a port bucket, and
deferring the deallocation of problematic port_info objects until
every currently executing thread has gone through a quiescent state.

See the changes to manage-multithread.c and port-deref-deferred.c of
the following patch.

Justus



reply via email to

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