diff options
author | davidcs <davidcs@FreeBSD.org> | 2015-08-05 00:00:06 +0000 |
---|---|---|
committer | davidcs <davidcs@FreeBSD.org> | 2015-08-05 00:00:06 +0000 |
commit | 861d78f2a3cbb714d3930a5d2e820c252bfbaf1d (patch) | |
tree | 3e9baac6d79d561a9f6ed6cad2c3b0645a0a7699 /sys/i386/include/pmc_mdep.h | |
parent | e6c899bb957d980ee3f4eee6be3e7c8e2b35eb34 (diff) | |
download | FreeBSD-src-861d78f2a3cbb714d3930a5d2e820c252bfbaf1d.zip FreeBSD-src-861d78f2a3cbb714d3930a5d2e820c252bfbaf1d.tar.gz |
MFC r285973
- Avoid lock contention in the if_transmit callback by using trylock and
enqueueing the frames when it fails. This way there is some latency
removed from the transmitting path.
- If IFF_DRV_OACTIVE is set (and also if IFF_DRV_RUNNING is not) just
enqueue the desired frames and return successful transmit. This way we
avoid to return errors on transmit side and resulting in
possible out-of-order frames. Please note that IFF_DRV_OACTIVE is set
everytime we get the threshold ring hit, so this can be happening quite
often.
Submitted by: Attilio.Rao@isilon.com
Diffstat (limited to 'sys/i386/include/pmc_mdep.h')
0 files changed, 0 insertions, 0 deletions