[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20071015.135310.41635381.davem@davemloft.net>
Date: Mon, 15 Oct 2007 13:53:10 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: markus@...ppelsdorf.de
Cc: jgarzik@...ox.com, netdev@...r.kernel.org
Subject: Re: [PATCH] r8169 Fix hang in rtl8169_down (NAPI)
From: Markus Trippelsdorf <markus@...ppelsdorf.de>
Date: Mon, 15 Oct 2007 22:25:46 +0200
> commit bea3348eef27e6044b6161fd04c3152215f96411 :
> [NET]: Make NAPI polling independent of struct net_device objects.
> causes my machine to hang on shutdown. The following patch fixes the
> problem for me.
>
> Signed-off-by: Markus Trippelsdorf <markus@...ppelsdorf.de>
This change doesn't make any sense.
> diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
> index 419c00c..2cddbf8 100644
> --- a/drivers/net/r8169.c
> +++ b/drivers/net/r8169.c
> @@ -2888,10 +2888,12 @@ core_down:
>
> synchronize_irq(dev->irq);
>
> +#ifdef CONFIG_R8169_NAPI
> if (!poll_locked) {
> napi_disable(&tp->napi);
> poll_locked++;
> }
> +#endif
>
> /* Give a racing hard_start_xmit a few cycles to complete. */
> synchronize_sched(); /* FIXME: should this be synchronize_irq()? */
If anything the test should be the other way around, use of
napi interfaces should be used when R8169_NAPI is set.
You're just papering around some other bug in the NAPI support
of this driver, which someone will need to figure out and fix
correctly.
But thanks for the report, and the patch, whilst bogus, might
provide a clue.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists