Svante Signell, le Tue 18 Dec 2012 14:51:59 +0100, a écrit : > On Mon, 2012-12-17 at 23:02 +0100, Svante Signell wrote: > > On Mon, 2012-12-17 at 20:58 +0100, Richard Braun wrote: > > > On Mon, Dec 17, 2012 at 03:12:10AM +0100, Svante Signell wrote: > > > > Richards patch "if (!err && got == 0 && firstfd != -1 && (firstfd != > > > > lastfd))" does not work, apt-get update (select-based) fails. So there > > > > will be other means to avoid the double delay bug. > > > > > > Please don't mention work I haven't released to explain bugs in your own > > > work ... This was untested code which was later replaced. See [1]. > > > > Sorry, but the stuff above was not my invention. I adopted it before it > > was confirmed by you to work properly, sorry again. Still, there are > > problems for the poll case by setting the timeout to zero in the > > __io_select call. One example is ntpdate (it is now available, see the > > debian-devel ML). > > As a follow-up the attached patch combines Richards zero timeout for > select()-based calls to hurdselect to also work with poll(). One example > is ntpdate. The timeout also seems to be OK, maybe further testing > needed?. This is a workaround until the split into three cases are > ready, and until the poll code is updated.
At last I find the time looking through my mbox again. Only to find that this has already been dealt with: the issue you were trying to solve is interruptability of the __mach_msg call, for which I have submitted a patch to libc-alpha the other day. Samuel