OpenBSD cvs log

created 2019-11-02T14:44:34Z
begin 2019-10-26T00:00:00Z
end 2019-10-27T00:00:00Z
path src/sys
commits 5

date 2019-10-26T05:44:59Z
author guenther
files src/sys/arch/amd64/amd64/db_trace.c log diff annotate
message Correct some ASM in a comment

date 2019-10-26T21:16:38Z
author cheloha
files src/sys/kern/kern_tc.c log diff annotate
src/sys/kern/kern_time.c log diff annotate
src/sys/sys/timetc.h log diff annotate
message clock_getres(2): actually return the resolution of the given clock

Currently we return (1000000000 / hz) from clock_getres(2) as the
resolution for every clock. This is often untrue.

For CPUTIME clocks, if we have a separate statclock interrupt the
resolution is (1000000000 / stathz). Otherwise it is as we currently
claim: (1000000000 / hz).

For the REALTIME/MONOTONIC/UPTIME/BOOTTIME clocks the resolution is
that of the active timecounter. During tc_init() we can compute the
precision of a timecounter by examining its tc_counter_mask and store
it for lookup later in a new member, tc_precision. The resolution of
a clock backed by a timecounter "tc" is then

tc.tc_precision * (2^64 / tc.tc_frequency)

fractional seconds.

While here we can clean up sys_clock_getres() a bit.

Standards input from guenther@. Lots of input, feedback from
kettenis@.

ok kettenis@

date 2019-10-26T23:01:33Z
author dlg
files src/sys/dev/pci/if_vmx.c log diff annotate
message avoid rxr races between rxfill from the interrupt and timeout paths

vmx "hardware" seems to be able to use rx descriptors as soon as
theyre filled in, which means filling the ring from a timeout can
run conccurently with an isr that's pulling stuff off the ring.
this is mostly a problem with the rxr accounting, so we serialise
updates to the alive counter by running rxfill in a mutex.

most of the investigation was done by claudio@ and mathieu@
an earlier version of this diff was tested hard by mathieu@ and was
ok@ claudio

date 2019-10-26T23:40:29Z
author dlg
files src/sys/dev/pci/if_vmx.c log diff annotate
src/sys/dev/pci/if_vmxreg.h log diff annotate
message make vmx transmit (vmxnet3_start) mpsafe.

to make mpsafetey a bit easier to figure out i disabled checksum
and vlan offload. i'll put them back in soon though.

date 2019-10-26T23:55:58Z
author dlg
files src/sys/dev/pci/if_vmx.c log diff annotate
message put vlan tag offload back in