-----Original Message-----
From: Ioana Ciornei <ioana.ciornei@nxp.com>
Sent: Wednesday, October 6, 2021 11:13 PM
[...]
+static int enetc_map_tx_tso_buffs(struct enetc_bdr *tx_ring, struct
sk_buff *skb)
+{
+ int hdr_len, total_len, data_len;
+ struct enetc_tx_swbd *tx_swbd;
+ union enetc_tx_bd *txbd;
+ struct tso_t tso;
+ __wsum csum, csum2;
+ int count = 0, pos;
+ int err, i;
+
+ /* Check that we have enough BDs for this skb */
+ if (enetc_bd_unused(tx_ring) < tso_count_descs(skb)) {
+ if (net_ratelimit())
+ netdev_err(tx_ring->ndev, "Not enough BDs for TSO!\n");
+ return 0;
+ }
+
On this path, in case the interface is congested, you will drop the packet in the driver,
and the stack will think transmission was successful and will continue to deliver skbs
to the driver. Is this the right thing to do?