diff options
author | yongari <yongari@FreeBSD.org> | 2010-05-09 22:16:15 +0000 |
---|---|---|
committer | yongari <yongari@FreeBSD.org> | 2010-05-09 22:16:15 +0000 |
commit | 3e09decd1986826f54af1a47be97bb87c1220783 (patch) | |
tree | 37186e7204715c4fe42c5d9a9db3cf8d50f2b3ae /usr.bin/xz | |
parent | 48c5cd85a64eb9c45f373bdcba6b8287284a13ef (diff) | |
download | FreeBSD-src-3e09decd1986826f54af1a47be97bb87c1220783.zip FreeBSD-src-3e09decd1986826f54af1a47be97bb87c1220783.tar.gz |
Export hardware MAC statistics through sysctl node. Previously
fxp(4) already used to extract most hardware MAC statistics but it
didn't show them. With this change, all MAC statistics counters
are exported. Because there are a couple of new counters for 82558
and 82559, enable extended MAC statistics functionality to get
these counters. Accoring to public data sheet, 82559 MAC statistics
return 24 DWORD counters(3 counters are unknown at this moment) so
increase MAC counter structure to meet the MAC statistics block size.
The completion of MAC counter dump is now checked against
FXP_STATS_DR_COMPLETE status code which is appended at the end of
status block. Previously fxp(4) ignored the status of the
FXP_SCB_COMMAND_CU_DUMPRESET command. fxp(4) does not wait for the
completion of pending command before issuing
FXP_SCB_COMMAND_CU_DUMPRESET. Instead it skips the command and try
it next time. This scheme may show better performance but there is
chance to loose updated counters after stopping controller. So make
sure to update MAC statistics in fxp_stop().
While I'm here move sysctl node creation to fxp_sysctl_node().
Tested by: Larry Baird < lab <> gta dot com >
Diffstat (limited to 'usr.bin/xz')
0 files changed, 0 insertions, 0 deletions