summaryrefslogtreecommitdiffstats
path: root/sys/dev/softraid.c
diff options
context:
space:
mode:
authorratchov <ratchov@openbsd.org>2015-07-29 08:06:29 +0000
committerratchov <ratchov@openbsd.org>2015-07-29 08:06:29 +0000
commit439d85c0ab34151d37fd95def165da984f8ba372 (patch)
tree5a4e05c930a812c11ed01b2232b033e24cde57a4 /sys/dev/softraid.c
parentadd a FILES section to make clear where RADIUS configuration file (diff)
downloadwireguard-openbsd-439d85c0ab34151d37fd95def165da984f8ba372.tar.xz
wireguard-openbsd-439d85c0ab34151d37fd95def165da984f8ba372.zip
Rework buffer position reporting code.
- use simpler data structures (makes the code shorter). - if multiple interrupts are missed, call audio(4) as many times as we missed interrupts (unless the pointer wrapped, which this is undetectable, but upper layer handles it) - fetch the link fifos size in the interrupt handler, as, according to the spec it may change dynamically. - certain devices expose the last offset of the link fifo size instead of the fifo size itself; workaround this by incrementing the reported link fifo size if it's odd. Fixes recovery after missed interrupts on asus eeepcs, maybe others. ok deraadt, help from armani@
Diffstat (limited to 'sys/dev/softraid.c')
0 files changed, 0 insertions, 0 deletions