- Don't set OACTIVE on a down interface, and only set it for the non-multiqueue case.
- Make the watchdog a count down timer with 0 disabling it.
- Explicitly call em_txeof() if a transmit queue appears hung in the timer.
Set OACTIVE in one more place.
Rework watchdog handling
- Set OACTIVE for the legacy case.
- Use a countdown timer for the watchdog.
- Synchronously clean the TX ring rather than scheduling the task.
- Always set OACTIVE if ixv_xmit() fails.
Restart transmission directly from the ithread instead of always scheduling the
task.