mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-12-04 07:01:52 +01:00
e1000: Remove old itr sysctl handler
This implementation had various bugs. bde@ reported that the unit
conversion/scaling is wrong, and it also does not handle 82574L or
igb(4) devices correctly.
With the new AIM code, it is expected most users will not need to
manually tune this.
If you do need static control:
hw.em.enable_aim=0 for all interfaces at boot or dev.em.X.enable_aim=0
for individual interfaces at runtime and they will track the
hw.em.max_interrupt_rate tunable. That codepath has been bugfixed for
all supported chipsets.
You may view the current rate with dev.em.X.queue_rx_0.interrupt_rate
which has been bugfixed for all supported chipsets.
If you need to set different rates per interface for some reason let me
know and I will rethink how to add this back. Otherwise you can leave
AIM on for general purpose interfaces and disable it at runtime on
special purpose low or high latency interfaces that would track
hw.em.max_interrupt_rate if you have a mix of concerns.
PR: 235031
Reported by: Bruce Evans <bde@FreeBSD.org>
Relnotes: yes
Sponsored by: BBOX.io
(cherry picked from commit 4020351325
)
This commit is contained in:
parent
48155c983c
commit
edf50670e2
@ -1234,10 +1234,6 @@ em_if_attach_pre(if_ctx_t ctx)
|
||||
"transmit interrupt delay limit in usecs",
|
||||
&sc->tx_abs_int_delay,
|
||||
E1000_REGISTER(hw, E1000_TADV), em_tx_abs_int_delay_dflt);
|
||||
em_add_int_delay_sysctl(sc, "itr",
|
||||
"interrupt delay limit in usecs/4", &sc->tx_itr,
|
||||
E1000_REGISTER(hw, E1000_ITR),
|
||||
EM_INTS_TO_ITR(em_max_interrupt_rate));
|
||||
}
|
||||
|
||||
hw->mac.autoneg = DO_AUTO_NEG;
|
||||
@ -5403,8 +5399,6 @@ em_sysctl_int_delay(SYSCTL_HANDLER_ARGS)
|
||||
return (EINVAL);
|
||||
info->value = usecs;
|
||||
ticks = EM_USECS_TO_TICKS(usecs);
|
||||
if (info->offset == E1000_ITR) /* units are 256ns here */
|
||||
ticks *= 4;
|
||||
|
||||
sc = info->sc;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user