On Sat, Nov 16, 2013 at 11:41:03AM +0100, Justus Winter wrote:
> I just realized that I tested these changes *with* the
> libports_stability.patch, so the threads do not actually time out and
> so this particular code is never reached. Maybe we should defer this
> patch until Richards patch destruction rework is finished and we got
> rid of that patch?

We can't get totally rid of it. We can let threads terminate cleanly,
but we still need to force the global timeout to 0, since requests can
arrive while a server is going away, after it was determined to return
from ports_manage_port_operations_multithread, but before the receive
rights have been destroyed. If this happens, clients will get complaints
about farms being bought by computers.

But this is another subject. The problem with letting threads terminate
is that libpthread has some subtle bugs. Thread destruction isn't only
meant to reduce resource usage after peaks, but also to fix those bugs.
I guess we can merge your changes however, since they're not conflicting
at all. With the fix Samuel mentioned, it should be fine.

-- 
Richard Braun

Reply via email to