diff options
author | Stefan Sperling <stsp@cvs.openbsd.org> | 2012-07-13 10:08:16 +0000 |
---|---|---|
committer | Stefan Sperling <stsp@cvs.openbsd.org> | 2012-07-13 10:08:16 +0000 |
commit | e88a6f2d21a7d8b0565da510ebae982d4e31a4be (patch) | |
tree | ee6f02cbda055e32fed3e6e364034fad139f89ec /sbin | |
parent | ce3878f3661a55c891f6523fbc959007cf662830 (diff) |
Keep separate OACTIVE flags to mark full management/data tx queues,
and set the interface's IFF_OACTIVE flag if either queue is full and
clear it only if both queues have free slots. Before this change both
queues were setting/clearing the same flag with no regard for the
other queue's state.
Also, don't reset the tx watchdog counter if either queue still has frames
queued when we exit the frame-processing loop in the per-queue interrupt
handlers.
Both changes originally from sephe@dragonfly.
Tested by myself and edd on a slow busy soekris which before this
change required occasional 'ifconfig ral0 down up' to recover.
Diffstat (limited to 'sbin')
0 files changed, 0 insertions, 0 deletions