|
Message-ID: <20210319123806.GB25400@brightrain.aerifal.cx> Date: Fri, 19 Mar 2021 08:38:07 -0400 From: Rich Felker <dalias@...c.org> To: Paulius Zaleckas <paulius.zaleckas@...il.com> Cc: musl@...ts.openwall.com Subject: Re: select() does not return remaining timeout On Fri, Mar 19, 2021 at 01:25:53PM +0200, Paulius Zaleckas wrote: > Linux select syscall returns remaining timeout in tv pointer, but > since musl uses local variable for syscall it does not update tv for > caller. See commit 722a1ae3351a03ab25010dbebd492eced664853b. Previously it was inconsistent and we sometimes (depending on arch) let the kernel behavior through, but the kernel behavior actually doesn't fit within the standard's allowance for select to modify the tv (which only allows it upon successful completion). So rather than trying to preserve something that was wrong with respect to the spec as written, the behavior was just dropped. In any case, it has always been an allowance for legacy behavior, not a requirement, and programs which are expecting it to reflect remaining time are not correct or portable. Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.