ubik: don't rely on timeout value after select()
authorMarc Dionne <marc.c.dionne@gmail.com>
Wed, 6 Apr 2011 01:30:20 +0000 (21:30 -0400)
committerDerrick Brashear <shadow@dementia.org>
Wed, 6 Apr 2011 15:16:54 +0000 (08:16 -0700)
commit0b510fe30afb34202342364e96bd9030052e1567
tree0f431635c2aa7bfceb2b79ec5b80075f98f12938
parent843d705ca6f0250c3760ec2aa1f3403d19de3df1
ubik: don't rely on timeout value after select()

The value of timeout after a select() call should be considered
undefined; relying on its value is not portable.
Since IOMGR_Select doesn't modify the timeout it is given, the
intention of the code seems to be to wait for gradually increasing
timeout values, starting at 50ms.  At least under Linux, the
timeout gets set to 0 by select() if it waited for the full specified
time, resulting in a much shorter maximum possible wait period.

Initialize the timeout value for each loop according to the existing
logic, to get consistent behaviour between the lwp and pthreaded code.

Change-Id: I8d3e90fe4e94a378401dd0a6fb7d77266ec09e5a
Reviewed-on: http://gerrit.openafs.org/4441
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/ubik/recovery.c