Re: [PATCH] net: moxa: fix TX overrun memory leak

From: David Miller
Date: Sun Jun 07 2015 - 22:22:30 EST


From: Jonas Jensen <jonas.jensen@xxxxxxxxx>
Date: Fri, 5 Jun 2015 15:46:18 +0200

> desc = priv->tx_desc_base + (TX_REG_DESC_SIZE * tx_head);
>
> - spin_lock_irq(&priv->txlock);
> + if (CIRC_SPACE(tx_head, tx_tail, TX_DESC_NUM) == 0) {
> + priv->stats.tx_dropped++;
> + goto out_unlock;
> + }

You can't do this.

Whatever code creates this condition _must_ stop the TX queue
so that the core netdevice transmit layer does not call your
transmit method.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/