]> git.baikalelectronics.ru Git - kernel.git/commit
s390/qeth: also use TX NAPI for non-IQD devices
authorJulian Wiedmann <jwi@linux.ibm.com>
Fri, 11 Jun 2021 07:33:34 +0000 (09:33 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 11 Jun 2021 19:49:15 +0000 (12:49 -0700)
commit35b29dd7ef86f424b6eef4253bd405f963c6847c
treeee81c598aeb2a729a03cc91c66e09a20e509e687
parent3ff2be3e6842f524d89de7435557e350ba183705
s390/qeth: also use TX NAPI for non-IQD devices

Set scan_threshold = 0 to opt out from the qdio layer's internal tasklet
& timer mechanism for TX completions, and replace it with the TX NAPI
infrastructure that qeth already uses for IQD devices. This avoids the
fragile logic in qdio_check_output_queue(), enables tighter integration
and gives us more tuning options via ethtool in the future.

For now we continue to apply the same policy as the qdio layer:
scan for completions if 32 TX buffers are in use, or after 1 sec.
A re-scan is done after 10 sec, but only if no TX interrupt is pending.

With scan_threshold = 0 we no longer get TX completion scans from
within qdio_get_next_buffers(). So trigger these manually in qeth_poll()
and in the RX path switch to the equivalent qdio_inspect_queue().

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_core.h
drivers/s390/net/qeth_core_main.c