Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760028AbXK1PXT (ORCPT ); Wed, 28 Nov 2007 10:23:19 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754167AbXK1PXE (ORCPT ); Wed, 28 Nov 2007 10:23:04 -0500 Received: from cantor2.suse.de ([195.135.220.15]:34172 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751010AbXK1PXB (ORCPT ); Wed, 28 Nov 2007 10:23:01 -0500 From: Andreas Schwab To: Larry Finger Cc: LKML Subject: Re: Question regarding mutex locking References: <474CF06C.8020208@lwfinger.net> X-Yow: It's the RINSE CYCLE!! They've ALL IGNORED the RINSE CYCLE!! Date: Wed, 28 Nov 2007 16:22:57 +0100 In-Reply-To: <474CF06C.8020208@lwfinger.net> (Larry Finger's message of "Tue\, 27 Nov 2007 22\:37\:00 -0600") Message-ID: User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 952 Lines: 28 Larry Finger writes: > If a particular routine needs to lock a mutex, but it may be entered with that mutex already locked, > would the following code be SMP safe? > > hold_lock = mutex_trylock() > > ... > > if (hold_lock) > mutex_unlock() When two CPUs may enter the critical region at the same time, what is the point of the mutex? Also, the first CPU may unlock the mutex while the second one is still inside the critical region. Andreas. -- Andreas Schwab, SuSE Labs, schwab@suse.de SuSE Linux Products GmbH, Maxfeldstra?e 5, 90409 N?rnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." - 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/