Hi, On Sat, Aug 26, 2017 at 7:43 AM, Mingyu Li <igv...@gmail.com> wrote: > Hi. > > i check the code again. found xmit_more can cause tx timeout. you can > reference this. > https://www.mail-archive.com/netdev@vger.kernel.org/msg123334.html > so the patch should be like this. edit mtk_eth_soc.c > > tx_num = fe_cal_txd_req(skb); > if (unlikely(fe_empty_txd(ring) <= tx_num)) { > + if (skb->xmit_more) > + fe_reg_w32(ring->tx_next_idx, FE_REG_TX_CTX_IDX0); > netif_stop_queue(dev); > netif_err(priv, tx_queued, dev, > "Tx Ring full when queue awake!\n"); > > but i am not sure. maybe the pause frame cause the problem.
Thanks for the patch. I tested it, but I unfortunately still see the error. I also added a print-statement inside the conditional and can see that the condition is never hit. I also don't see the "Tx Ring full"-message. One difference which I noticed now though, is that I don't see the bursty bandwidth pattern I described earlier (32, 0, 32, 0, ...). With your patch, it is always 32, 0, crash. -Kristian _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev