Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757198AbZANTdy (ORCPT ); Wed, 14 Jan 2009 14:33:54 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754012AbZANTdm (ORCPT ); Wed, 14 Jan 2009 14:33:42 -0500 Received: from mx2.mail.elte.hu ([157.181.151.9]:52698 "EHLO mx2.mail.elte.hu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753528AbZANTdk (ORCPT ); Wed, 14 Jan 2009 14:33:40 -0500 Date: Wed, 14 Jan 2009 20:33:17 +0100 From: Ingo Molnar To: Peter Zijlstra Cc: Andrew Morton , Linus Torvalds , "Paul E. McKenney" , Gregory Haskins , Matthew Wilcox , Andi Kleen , Chris Mason , Linux Kernel Mailing List , linux-fsdevel , linux-btrfs , Thomas Gleixner , Nick Piggin , Peter Morreale , Sven Dietrich , Dmitry Adamushko , Johannes Weiner Subject: Re: [GIT PULL] adaptive spinning mutexes Message-ID: <20090114193317.GA23227@elte.hu> References: <1231859742.442.128.camel@twins> <1231863710.7141.3.camel@twins> <1231864854.7141.8.camel@twins> <1231867314.7141.16.camel@twins> <1231952436.14825.28.camel@laptop> <20090114183319.GA18630@elte.hu> <20090114105300.66bd014d.akpm@linux-foundation.org> <1231960986.14825.45.camel@laptop> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1231960986.14825.45.camel@laptop> User-Agent: Mutt/1.5.18 (2008-05-17) X-ELTE-VirusStatus: clean X-ELTE-SpamScore: -1.5 X-ELTE-SpamLevel: X-ELTE-SpamCheck: no X-ELTE-SpamVersion: ELTE 2.0 X-ELTE-SpamCheck-Details: score=-1.5 required=5.9 tests=BAYES_00 autolearn=no SpamAssassin version=3.2.3 -1.5 BAYES_00 BODY: Bayesian spam probability is 0 to 1% [score: 0.0000] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2873 Lines: 65 * Peter Zijlstra wrote: > On Wed, 2009-01-14 at 10:53 -0800, Andrew Morton wrote: > > On Wed, 14 Jan 2009 19:33:19 +0100 Ingo Molnar wrote: > > > > > Please pull the adaptive-mutexes-for-linus git tree > > > > > > > > - It seems a major shortcoming that the feature is disabled if > > CONFIG_DEBUG_MUTEXES=y. It means that lots of people won't test it. > > Yes, that's a bit unfortunate, a simple patch to enable that is: > > I must admit I'm a bit stumped on why that debug check triggers, I > couldn't reproduce today, but Ingo ran into it quite quickly :/ Yes, the debug patch caused this false positive warning on one of my test-systems: Built 1 zonelists in Zone order, mobility grouping on. Total pages: 255762 ------------[ cut here ]------------ WARNING: at kernel/mutex-debug.c:77 debug_mutex_unlock+0x94/0xde() Hardware name: Modules linked in: Pid: 0, comm: swapper Not tainted 2.6.29-rc1-tip-00983-ge1af3bd-dirty #1 Call Trace: [] warn_slowpath+0xd8/0xf7 [] ? wake_up_klogd+0x9/0x2f [] ? graph_lock+0x27/0x66 [] ? validate_chain+0xd4d/0xd9f [] ? save_trace+0x3f/0xb2 [] ? __lock_acquire+0x7d4/0x832 [] ? lock_acquire+0xb2/0xc2 [] ? cpu_maps_update_begin+0x17/0x19 [] ? trace_hardirqs_off+0xd/0xf [] debug_mutex_unlock+0x94/0xde [] __mutex_unlock_slowpath+0xdd/0x152 [] mutex_unlock+0xe/0x10 [] cpu_maps_update_done+0x15/0x17 [] register_cpu_notifier+0x2c/0x32 [] page_alloc_init+0x10/0x12 [] start_kernel+0x1ba/0x422 [] ? early_idt_handler+0x0/0x73 [] x86_64_start_reservations+0xae/0xb2 [] x86_64_start_kernel+0x137/0x146 ---[ end trace a7919e7f17c0a725 ]--- Kernel command line: root=/dev/sda1 earlyprintk=serial,ttyS0,115200 console=ttyS0,115200 console=tty 5 profile=0 debug initcall_debug apic=debug apic=verbose ignore_loglevel sysrq_always_enabled pci=nomsi kernel profiling enabled (shift: 0) debug: sysrq always enabled. Initializing CPU#0 So we left that change out from this pull request. It's not a big deal i think - mutex debugging always had a different fast-path from no-debug mutexes anyway (or a lack of fast-path to begin with). So the performance characteristics were always subtly different. Now they might be more different - but we'll fix that too. Ingo -- 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/