Date: Wed, 22 May 1996 11:01:03 -0600 From: Warner Losh <imp@village.org> To: Kees Jan Koster <dutchman@spase.nl> Cc: freebsd-hackers@FreeBSD.ORG (FreeBSD hackers Mailing list) Subject: Re: Forgiving select() call. Message-ID: <199605221701.LAA04803@rover.village.org> In-Reply-To: Your message of Wed, 22 May 1996 15:02:14 %2B0200
next in thread | raw e-mail | index | archive | help
: I want to modify select(2) to return the `timeout left' as described in the : BUGS section of the manual page. Any reason why I should not? That is *********NOT******* how select works. Too many programs do not do the right thing when this is done. The failure mode is that things seem to work but you have no CPU left for other thigns. Ths is a *VERY*BAD* idea. Linux tried it and now they have bsd compatible select behavior unless you go our of your way to get the behavior you propose. Why? Too many programs were eating the CPU for lunch because they were poorly programmed. And there were too many to easily fix all of them. Linux is the *ONLY* system that changes the timeval in the select call. It is a bad idea. If it had been a good idea, then Lite or Lite2 would have had it changed. The bug in the man page is really a bug with the man page by now, imho. If you want to have a system call that returns this information, don't call it select. All that said, people should write code that doesn't assume that timeval will be const in this call. Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199605221701.LAA04803>