Hi Elad, On Thu, 2016-05-26 at 15:00 +0300, Elad Kanfi wrote: > From: Elad Kanfi <elad...@mellanox.com> > > Since NAPI works by shutting down event interrupts when theres > work and turning them on when theres none, the net driver must > make sure that interrupts are disabled when it reschedules polling. > By calling napi_reschedule, the driver switches to polling mode, > therefor there should be no interrupt interference. > Any received packets will be handled in nps_enet_poll by polling the HW > indication of received packet until all packets are handled. > > Signed-off-by: Elad Kanfi <elad...@mellanox.com> > Acked-by: Noam Camus <noa...@mellanox.com> > --- > drivers/net/ethernet/ezchip/nps_enet.c | 4 +++- > 1 files changed, 3 insertions(+), 1 deletions(-) > > diff --git a/drivers/net/ethernet/ezchip/nps_enet.c > b/drivers/net/ethernet/ezchip/nps_enet.c > index 085f912..06f0317 100644 > --- a/drivers/net/ethernet/ezchip/nps_enet.c > +++ b/drivers/net/ethernet/ezchip/nps_enet.c > @@ -205,8 +205,10 @@ static int nps_enet_poll(struct napi_struct *napi, int > budget) > * re-adding ourselves to the poll list. > */ > > - if (priv->tx_skb && !tx_ctrl_ct) > + if (priv->tx_skb && !tx_ctrl_ct) { > + nps_enet_reg_set(priv, NPS_ENET_REG_BUF_INT_ENABLE, 0); > napi_reschedule(napi); > + } > } > > return work_done;
We just bumped into the same problem (data exchange hangs on the very first "ping") with released Linux v4.6 and linux-next on our nSIM OSCI virtual platform. I believe it was commit 05c00d82f4d1 ("net: nps_enet: bug fix - handle lost tx interrupts") that introduced the problem. At least reverting it I got networking working. And indeed that patch fixes mentioned issue. In other words... Tested-by: Alexey Brodkin <abrod...@synopsys.com> P.S. Given my observation is correct please add following to your commit message if you ever do a respin: ------------------>8--------------- Fixes: 05c00d82f4d1 ("net: nps_enet: bug fix - handle lost tx interrupts") Cc: <sta...@vger.kernel.org> # 4.6.x ------------------>8--------------- _______________________________________________ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc