Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761069AbYFWSUX (ORCPT ); Mon, 23 Jun 2008 14:20:23 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755594AbYFWSUM (ORCPT ); Mon, 23 Jun 2008 14:20:12 -0400 Received: from relay1.sgi.com ([192.48.171.29]:47620 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1755331AbYFWSUK (ORCPT ); Mon, 23 Jun 2008 14:20:10 -0400 Date: Mon, 23 Jun 2008 11:20:10 -0700 (PDT) From: Christoph Lameter X-X-Sender: clameter@schroedinger.engr.sgi.com To: Petr Tesarik cc: Ingo Molnar , linux-kernel@vger.kernel.org, Peter Zijlstra Subject: Re: Spinlocks: Factor our GENERIC_LOCKBREAK in order to avoid spin with irqs disable In-Reply-To: <1214241561.19392.21.camel@elijah.suse.cz> Message-ID: References: <20080507073017.GJ32195@elte.hu> <1214241561.19392.21.camel@elijah.suse.cz> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 873 Lines: 23 On Mon, 23 Jun 2008, Petr Tesarik wrote: > Maybe I'm just blind, but doesn't this change effectively disable any > arch-specific optimized code for _raw_*_lock? True. Only the __raw_xxx_trylock is still used. > If CONFIG_DEBUG_LOCK_ALLOC is set, then CONFIG_DEBUG_SPINLOCK must also > be set, so in that case the debugging versions of _raw_*_lock are used. > But if CONFIG_DEBUG_LOCK_ALLOC is _not_ set, then the locks are built > with _trylock and _can_lock primitives. > > What am I missing here? It is good that the locks are build with _trylock and _can_lock because then we can reenable interrupts while spinning. -- 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/