diff options
| author | Marc Kleine-Budde <[email protected]> | 2023-06-02 07:29:07 +0000 |
|---|---|---|
| committer | Marc Kleine-Budde <[email protected]> | 2023-07-28 07:45:25 +0000 |
| commit | 24bc41b4558347672a3db61009c339b1f5692169 (patch) | |
| tree | 7570ccd9412a428d8c477b9c761c62701f6e91b7 /tools/net/ynl/generated/netdev-user.c | |
| parent | can: rx-offload: add can_rx_offload_get_echo_skb_queue_tail() (diff) | |
| download | kernel-24bc41b4558347672a3db61009c339b1f5692169.tar.gz kernel-24bc41b4558347672a3db61009c339b1f5692169.zip | |
can: gs_usb: convert to NAPI/rx-offload to avoid OoO reception
The driver used to pass received CAN frames/skbs to the network stack
with netif_rx(). In netif_rx() the skbs are queued to the local CPU.
If IRQs are handled in round robin, OoO packets may occur.
To avoid out-of-order reception convert the driver from netif_rx() to
NAPI.
For USB devices with timestamping support use the rx-offload helper
can_rx_offload_queue_timestamp() for the RX, and
can_rx_offload_get_echo_skb_queue_timestamp() for the TX path. Devices
without timestamping support use can_rx_offload_queue_tail() for RX,
and can_rx_offload_get_echo_skb_queue_tail() for the TX path.
Link: https://lore.kernel.org/all/[email protected]
Link: https://github.com/candle-usb/candleLight_fw/issues/166
Link: https://lore.kernel.org/all/[email protected]
Signed-off-by: Marc Kleine-Budde <[email protected]>
Diffstat (limited to 'tools/net/ynl/generated/netdev-user.c')
0 files changed, 0 insertions, 0 deletions
