From patchwork Fri Dec 30 21:50:24 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Francois Romieu X-Patchwork-Id: 133696 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id A0277B6F9F for ; Sat, 31 Dec 2011 08:59:47 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752281Ab1L3V7O (ORCPT ); Fri, 30 Dec 2011 16:59:14 -0500 Received: from violet.fr.zoreil.com ([92.243.8.30]:55113 "EHLO violet.fr.zoreil.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752012Ab1L3V7N (ORCPT ); Fri, 30 Dec 2011 16:59:13 -0500 Received: from violet.fr.zoreil.com (localhost [127.0.0.1]) by violet.fr.zoreil.com (8.13.8/8.13.8) with ESMTP id pBULoPUL005520; Fri, 30 Dec 2011 22:50:25 +0100 Received: (from romieu@localhost) by violet.fr.zoreil.com (8.13.8/8.13.8/Submit) id pBULoOfX005519; Fri, 30 Dec 2011 22:50:24 +0100 Date: Fri, 30 Dec 2011 22:50:24 +0100 From: Francois Romieu To: Bjarke Istrup Pedersen Cc: David Miller , shemminger@vyatta.com, bhutchings@solarflare.com, linux-kernel@vger.kernel.org, netdev@vger.kernel.org, rl@hellgate.ch Subject: Re: [PATCH 1/1] via-rhine: Fix hanging with high CPU load on low-end broads. Message-ID: <20111230215024.GA5513@electric-eye.fr.zoreil.com> References: <20111229183902.GC21946@electric-eye.fr.zoreil.com> <20111229.170514.1766899380937848638.davem@davemloft.net> <20111229235312.GA27092@electric-eye.fr.zoreil.com> <20111230125655.GA32031@electric-eye.fr.zoreil.com> <20111230180347.GA3647@electric-eye.fr.zoreil.com> Mime-Version: 1.0 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.2i X-Organisation: Land of Sunshine Inc. Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Bjarke Istrup Pedersen : [...] > Just applied it to HEAD of net-next, and got the following compiler warning: > drivers/net/ethernet/via/via-rhine.c:2182:13: warning: > 'rhine_task_enable' defined but not used You are running with CONFIG_PM disabled and a down / up loop will not work. The patch below should hide the latter, at least as long as the relevant workqueue does not stall for too long... Extra cancel_work in task_enable could work too but it will look strange. > Just so you know that too :) Thanks for testing. diff --git a/drivers/net/ethernet/via/via-rhine.c b/drivers/net/ethernet/via/via-rhine.c index c57e1da..89ced1b 100644 --- a/drivers/net/ethernet/via/via-rhine.c +++ b/drivers/net/ethernet/via/via-rhine.c @@ -1536,6 +1536,7 @@ static int rhine_open(struct net_device *dev) alloc_rbufs(dev); alloc_tbufs(dev); rhine_chip_reset(dev); + rhine_task_enable(rp); init_registers(dev); if (debug > 2) netdev_dbg(dev, "%s() Done - status %04x MII status: %04x\n",