summaryrefslogtreecommitdiffstats
path: root/lib/libc/stdlib
diff options
context:
space:
mode:
authorchuck <chuck@openbsd.org>1996-11-21 20:51:22 +0000
committerchuck <chuck@openbsd.org>1996-11-21 20:51:22 +0000
commitd0709493714a10eb25a8f4fe9504c27e7642ca17 (patch)
tree8e7eac52527338639eeb34a952e160044be9b2e3 /lib/libc/stdlib
parentexport struct cfdata cfdata[]; (diff)
downloadwireguard-openbsd-d0709493714a10eb25a8f4fe9504c27e7642ca17.tar.xz
wireguard-openbsd-d0709493714a10eb25a8f4fe9504c27e7642ca17.zip
midway fixes:
1. fix possible hang in en_txlaunch(). when attempting to extend the length of an mbuf to avoid a flush we should extend it by cnt [which is ((need - len) % 4)] rather than 4 - cnt. also, add an EN_DEBUG printf() when we pad/FLUSH a buffer to help with debugging/understanding what the driver is up to. 2. use interface packet counters 3. when turning off a recv VCI we recompute the new mode. make sure we don't include the "in service" bit in the new mode, otherwise a VCI may appear "hung" if you turn it off while a service interrupt is pending. 4. when shutting down a VCI that is still receiving data, don't bother going into "drain mode" if only the hardware in service bit is set (otherwise the VCI may get "hung" in drain mode). as a result of this we may get "unexpected rx interrupt" messages which are not really an error, so put this printf in EN_DEBUG. 5. be sure to zero txspeed[lcv] when enabling a VCI (start at full speed). (hooks for setting txspeed[] are currently not in the driver, but we are playing with it locally). credits: #1: Detected by: Zdenek Salvet <salvet@horn.ics.muni.cz>, fix by me. #2: Contributed by: Zdenek Salvet <salvet@horn.ics.muni.cz> #3,#4,#5: Detected by: Milind M. Buddhikot <milind@dworkin.wustl.edu>, fixed by me.
Diffstat (limited to 'lib/libc/stdlib')
0 files changed, 0 insertions, 0 deletions