Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756895AbZDNR4R (ORCPT ); Tue, 14 Apr 2009 13:56:17 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752223AbZDNRz7 (ORCPT ); Tue, 14 Apr 2009 13:55:59 -0400 Received: from mail.vyatta.com ([76.74.103.46]:56967 "EHLO mail.vyatta.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751268AbZDNRz6 (ORCPT ); Tue, 14 Apr 2009 13:55:58 -0400 Date: Tue, 14 Apr 2009 10:55:39 -0700 From: Stephen Hemminger To: Michal Schmidt Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] skge: fix occasional BUG during MTU change Message-ID: <20090414105539.6388f677@nehalam> In-Reply-To: <20090407183623.7545bb0b@leela> References: <20090407183623.7545bb0b@leela> Organization: Vyatta X-Mailer: Claws Mail 3.6.1 (GTK+ 2.16.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1133 Lines: 28 On Tue, 7 Apr 2009 18:36:23 +0200 Michal Schmidt wrote: > The BUG_ON(skge->tx_ring.to_use != skge->tx_ring.to_clean) in skge_up() > was sometimes observed when setting MTU. > > skge_down() disables the TX queue, but then reenables it by mistake via > skge_tx_clean(). > Fix it by moving the waking of the queue from skge_tx_clean() to the > other caller. And to make sure start_xmit is not in progress on another > CPU, skge_down() should call netif_tx_disable(). > > The bug was reported to me by Jiri Jilek whose Debian system sometimes > failed to boot. He tested the patch and the bug did not happen anymore. > > Signed-off-by: Michal Schmidt > --- > drivers/net/skge.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) Tested fine. This should go to stable as well. Acked-by: Stephen Hemminger -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/