From patchwork Mon May 25 00:00:50 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin LaHaise X-Patchwork-Id: 27585 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@bilbo.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from ozlabs.org (ozlabs.org [203.10.76.45]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "mx.ozlabs.org", Issuer "CA Cert Signing Authority" (verified OK)) by bilbo.ozlabs.org (Postfix) with ESMTPS id 40015B6F35 for ; Mon, 25 May 2009 10:00:59 +1000 (EST) Received: by ozlabs.org (Postfix) id 2CF1FDE0E0; Mon, 25 May 2009 10:00:59 +1000 (EST) Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id B6F38DE0D1 for ; Mon, 25 May 2009 10:00:58 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753485AbZEYAAv (ORCPT ); Sun, 24 May 2009 20:00:51 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753381AbZEYAAu (ORCPT ); Sun, 24 May 2009 20:00:50 -0400 Received: from kanga.kvack.org ([205.233.56.17]:49452 "EHLO kanga.kvack.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751984AbZEYAAt (ORCPT ); Sun, 24 May 2009 20:00:49 -0400 Received: by kanga.kvack.org (Postfix, from userid 63042) id 3AE416B0055; Sun, 24 May 2009 20:00:50 -0400 (EDT) Date: Sun, 24 May 2009 20:00:50 -0400 From: Benjamin LaHaise To: Eric Dumazet Cc: Denys Fedoryschenko , netdev@vger.kernel.org Subject: Re: regression: unregister_netdev() unusably slow Message-ID: <20090525000050.GJ24757@kvack.org> References: <20090524192150.GE24757@kvack.org> <200905250023.31056.denys@visp.net.lb> <20090524213744.GG24757@kvack.org> <4A19BF39.4000305@cosmosbay.com> <20090524214433.GH24757@kvack.org> <4A19C50B.9040304@cosmosbay.com> <20090524221240.GI24757@kvack.org> <4A19CE8B.3070302@cosmosbay.com> Mime-Version: 1.0 Content-Disposition: inline In-Reply-To: <4A19CE8B.3070302@cosmosbay.com> User-Agent: Mutt/1.4.2.2i Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Mon, May 25, 2009 at 12:47:39AM +0200, Eric Dumazet wrote: > There is a strong dependancy against HZ > BTW, I am using TREE_RCU I'm using CLASSIC_RCU. The bisect just completed, and it points to RCU. It makes some degree of sense since I'm testing on an otherwise idle machine. That said, where is fixing it going to make sense? I'm not opposed to having device unregister take a few timer ticks, but there has to be some way of exposing parallelism to the system, and since the synchronize_net() calls are done under rntl_lock(), none is possible at present. Hrm. -ben bf51935f3e988e0ed6f34b55593e5912f990750a is first bad commit commit bf51935f3e988e0ed6f34b55593e5912f990750a Author: Paul E. McKenney Date: Tue Feb 17 06:01:30 2009 -0800 x86, rcu: fix strange load average and ksoftirqd behavior Damien Wyart reported high ksoftirqd CPU usage (20%) on an otherwise idle system. The function-graph trace Damien provided: ... --- To unsubscribe from this list: send the line "unsubscribe netdev" 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/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c index a546f55..bd4da2a 100644 --- a/arch/x86/kernel/process_32.c +++ b/arch/x86/kernel/process_32.c @@ -104,9 +104,6 @@ void cpu_idle(void) check_pgt_cache(); rmb(); - if (rcu_pending(cpu)) - rcu_check_callbacks(cpu, 0); - if (cpu_is_offline(cpu)) play_dead();