Updating time counters without memory barriers is wrong. Put
authorbluhm <bluhm@openbsd.org>
Tue, 18 Sep 2018 20:47:11 +0000 (20:47 +0000)
committerbluhm <bluhm@openbsd.org>
Tue, 18 Sep 2018 20:47:11 +0000 (20:47 +0000)
commita701e5dfafb22455e8cfbca0e7f2f834808b1a9d
treeb11c4b91d263de17326aa6e9dfec0c451e5332df
parent3d56ebce3ebb9c8a172fe01306f9897260997ec2
Updating time counters without memory barriers is wrong.  Put
membar_producer() into tc_windup() and membar_consumer() into the
uptime functions.  They order the visibility of the time and
generation number updates.
This is a combination of what NetBSD and FreeBSD do.
OK kettenis@
sys/kern/kern_tc.c