bdrewery db51b6bdae nanosleep(2): Fix bogus incrementing of rmtp by tc_tick_sbt on [EINTR].
sbt is the time in the future that the tsleep_sbt() is expected to be completed
at.  sbtt is the current time.  Depending on the precision with sysctl
kern.timecounter.alloweddeviation the start time may be incremented by
tc_tick_sbt.  The same increment is needed for the current time of sbtt before
calculating the difference.  The impact of missing this increment is that rmtp
may increase by one tc_tick_sbt on every early [EINTR] return.  If the same
struct is passed in for rqtp as rmtp this can result in rqtp effectively
incrementing by tc_tick_sbt and sleeping longer than originally intended.

This problem was introduced in r247797.

Reviewed by:	kib, markj, vangyzen (all on an older version of the test)
MFC after:	2 weeks
Sponsored by:	Dell EMC
Differential Revision:	https://reviews.freebsd.org/D14362
2018-02-14 18:43:50 +00:00
..
2017-11-02 20:08:00 +00:00
2017-05-31 19:37:23 +00:00
2017-09-17 19:14:38 +00:00
2017-12-12 17:34:35 +00:00
2018-01-24 14:24:17 +00:00
2017-07-03 19:49:25 +00:00
2017-02-19 17:37:16 +00:00
2017-08-03 15:47:42 +00:00
2017-02-06 08:49:57 +00:00
2017-03-23 22:06:06 +00:00
2017-05-23 09:29:05 +00:00
2017-05-05 13:31:25 +00:00
2018-01-28 03:16:54 +00:00
2017-06-28 09:22:45 +00:00
2017-02-28 23:42:47 +00:00
2017-12-06 02:21:11 +00:00
2017-03-25 14:14:11 +00:00
2017-06-01 19:21:30 +00:00
2017-02-28 23:42:47 +00:00
2018-01-24 06:48:42 +00:00
2017-06-03 18:21:50 +00:00
2017-09-10 01:25:15 +00:00