Message ID | 1447410289-3741-1-git-send-email-ykaneko0929@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Hi Kaneko-san, On Fri, Nov 13, 2015 at 11:24 AM, Yoshihiro Kaneko <ykaneko0929@gmail.com> wrote: > From: Masaru Nagai <masaru.nagai.vx@renesas.com> > > When RX/TX interrupt for Network Control queue and Best Effort queue > is issued at the same time, the interrupt mask of Network Control > queue will be reset when the mask of Best Effort queue is set. Nice catch! At first I was a bit puzzled why this would make a difference, but the key is "will be reset in the next iteration of the for loop", which falls outside of the visible context. > This patch fixes this problem. > > Signed-off-by: Masaru Nagai <masaru.nagai.vx@renesas.com> > Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Nov 13, 2015 at 11:45:28AM +0100, Geert Uytterhoeven wrote: > Hi Kaneko-san, > > On Fri, Nov 13, 2015 at 11:24 AM, Yoshihiro Kaneko > <ykaneko0929@gmail.com> wrote: > > From: Masaru Nagai <masaru.nagai.vx@renesas.com> > > > > When RX/TX interrupt for Network Control queue and Best Effort queue > > is issued at the same time, the interrupt mask of Network Control > > queue will be reset when the mask of Best Effort queue is set. > > Nice catch! > > At first I was a bit puzzled why this would make a difference, but > the key is "will be reset in the next iteration of the for loop", which > falls outside of the visible context. > > > This patch fixes this problem. > > > > Signed-off-by: Masaru Nagai <masaru.nagai.vx@renesas.com> > > Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> > > Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Simon Horman <horms+renesas@verge.net.au> -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Yoshihiro Kaneko <ykaneko0929@gmail.com> Date: Fri, 13 Nov 2015 19:24:49 +0900 > From: Masaru Nagai <masaru.nagai.vx@renesas.com> > > When RX/TX interrupt for Network Control queue and Best Effort queue > is issued at the same time, the interrupt mask of Network Control > queue will be reset when the mask of Best Effort queue is set. > This patch fixes this problem. > > Signed-off-by: Masaru Nagai <masaru.nagai.vx@renesas.com> > Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Applied. -- To unsubscribe from this list: send the line "unsubscribe linux-sh" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c index aa7b208..7180e26 100644 --- a/drivers/net/ethernet/renesas/ravb_main.c +++ b/drivers/net/ethernet/renesas/ravb_main.c @@ -733,8 +733,10 @@ static irqreturn_t ravb_interrupt(int irq, void *dev_id) ((tis & tic) & BIT(q))) { if (napi_schedule_prep(&priv->napi[q])) { /* Mask RX and TX interrupts */ - ravb_write(ndev, ric0 & ~BIT(q), RIC0); - ravb_write(ndev, tic & ~BIT(q), TIC); + ric0 &= ~BIT(q); + tic &= ~BIT(q); + ravb_write(ndev, ric0, RIC0); + ravb_write(ndev, tic, TIC); __napi_schedule(&priv->napi[q]); } else { netdev_warn(ndev,