Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp6020266ybl; Tue, 10 Dec 2019 15:36:54 -0800 (PST) X-Google-Smtp-Source: APXvYqzdTNl9Y67ZyTszE4N8G7z3yzx42odrY69TWVg5olMIAm2ww+1G4r5wrl0twbXp+mNXhulV X-Received: by 2002:a9d:7447:: with SMTP id p7mr254576otk.189.1576021014418; Tue, 10 Dec 2019 15:36:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576021014; cv=none; d=google.com; s=arc-20160816; b=aYf7iGPjmYfQO64Wc+nO4gnkub3ZkNCSqr9AC+aW0u2FyZmuuDcy57U9HyKdw/q44M C8RmHpR6LHQguCA9BO6uFccoGXpe0RE6bt043nlTCc0LWGyO0zQpJMtFRZFQ9SXeTQYO LYC62dyYIXvi2C3S8DaVxmR8kmIXtG3f210uhC6aq2WWBE3e7DFS3ZvyqBlnR2HdHVUV ReJmr7IBxMarV2lc1EwdD0JbIYkaqqiGnK0lTdjjuFRcl5HzoHn4Al5ODFb7odRhPHzh CUCEK/sQzpulW+yUdIltWlKKa81+6GMoSYXW/uyAQHZY/2r52I3VHcQzTzJsMYbvlP1s eE8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :robot-unsubscribe:robot-id:message-id:mime-version:references :in-reply-to:cc:subject:to:reply-to:from:date; bh=DNuGGCBVmzEtiUx6wYM4lGQ4zRDqkNjK6HYHNwRBQ8E=; b=WHXQQVlAZ+6QNkGchXY+a8kruLVZ7PDUyRtHMM1H9oCQHHEu0PbMp1tNYFJhUAJy2K zoW2w3lj6a/QLnTQSRM8XUoYmWzqK5IpyeqCRYysAnBXv8iwx2a4ad3LK9GNx4rPOf9l 3mIUYH24R+ouw9Y/wGmqp6IEeisjUAF4ttwyQvTPUf+Mvg8BQ7CRvX+OM55o3kWimv6l B96WeRnM2q49qhaSfGYBeMBD74wiaHztoUdtgOeyZUxH0u0zTdytPIA3YFbAZpHFo7PK EH/lNuVo3IEy4r6JtPy4s09kSm3KxtqKFU/Oe86o9gJ4IbcfJHZVW4RuzJ1zEVE8fKTM 9QEQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c195si64227oib.266.2019.12.10.15.36.42; Tue, 10 Dec 2019 15:36:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727678AbfLJXfx (ORCPT + 99 others); Tue, 10 Dec 2019 18:35:53 -0500 Received: from Galois.linutronix.de ([193.142.43.55]:42155 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727352AbfLJXfw (ORCPT ); Tue, 10 Dec 2019 18:35:52 -0500 Received: from [5.158.153.53] (helo=tip-bot2.lab.linutronix.de) by Galois.linutronix.de with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1iep2S-0007Qa-6r; Wed, 11 Dec 2019 00:35:34 +0100 Received: from [127.0.1.1] (localhost [IPv6:::1]) by tip-bot2.lab.linutronix.de (Postfix) with ESMTP id 6BA721C047B; Wed, 11 Dec 2019 00:35:31 +0100 (CET) Date: Tue, 10 Dec 2019 23:35:30 -0000 From: "tip-bot2 for Davidlohr Bueso" Reply-to: linux-kernel@vger.kernel.org To: linux-tip-commits@vger.kernel.org Subject: [tip: locking/urgent] Revert "locking/mutex: Complain upon mutex API misuse in IRQ contexts" Cc: Davidlohr Bueso , David Howells , Linus Torvalds , Peter Zijlstra , Thomas Gleixner , linux-afs@lists.infradead.org, linux-fsdevel@vger.kernel.org, will@kernel.org, Ingo Molnar , x86 , LKML In-Reply-To: <20191210220523.28540-1-dave@stgolabs.net> References: <20191210220523.28540-1-dave@stgolabs.net> MIME-Version: 1.0 Message-ID: <157602093075.30329.6269791000248748517.tip-bot2@tip-bot2> X-Mailer: tip-git-log-daemon Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Linutronix-Spam-Score: -1.0 X-Linutronix-Spam-Level: - X-Linutronix-Spam-Status: No , -1.0 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The following commit has been merged into the locking/urgent branch of tip: Commit-ID: c571b72e2b845ca0519670cb7c4b5fe5f56498a5 Gitweb: https://git.kernel.org/tip/c571b72e2b845ca0519670cb7c4b5fe5f56498a5 Author: Davidlohr Bueso AuthorDate: Tue, 10 Dec 2019 14:05:23 -08:00 Committer: Ingo Molnar CommitterDate: Wed, 11 Dec 2019 00:27:43 +01:00 Revert "locking/mutex: Complain upon mutex API misuse in IRQ contexts" This ended up causing some noise in places such as rxrpc running in softirq. The warning is misleading in this case as the mutex trylock and unlock operations are done within the same context; and therefore we need not worry about the PI-boosting issues that comes along with no single-owner lock guarantees. While we don't want to support this in mutexes, there is no way out of this yet; so lets get rid of the WARNs for now, as it is only fair to code that has historically relied on non-preemptible softirq guarantees. In addition, changing the lock type is also unviable: exclusive rwsems have the same issue (just not the WARN_ON) and counting semaphores would introduce a performance hit as mutexes are a lot more optimized. This reverts: a0855d24fc22: ("locking/mutex: Complain upon mutex API misuse in IRQ contexts") Fixes: a0855d24fc22: ("locking/mutex: Complain upon mutex API misuse in IRQ contexts") Signed-off-by: Davidlohr Bueso Tested-by: David Howells Cc: Linus Torvalds Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: linux-afs@lists.infradead.org Cc: linux-fsdevel@vger.kernel.org Cc: will@kernel.org Link: https://lkml.kernel.org/r/20191210220523.28540-1-dave@stgolabs.net Signed-off-by: Ingo Molnar --- kernel/locking/mutex.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/kernel/locking/mutex.c b/kernel/locking/mutex.c index 54cc5f9..5352ce5 100644 --- a/kernel/locking/mutex.c +++ b/kernel/locking/mutex.c @@ -733,9 +733,6 @@ static noinline void __sched __mutex_unlock_slowpath(struct mutex *lock, unsigne */ void __sched mutex_unlock(struct mutex *lock) { -#ifdef CONFIG_DEBUG_MUTEXES - WARN_ON(in_interrupt()); -#endif #ifndef CONFIG_DEBUG_LOCK_ALLOC if (__mutex_unlock_fast(lock)) return; @@ -1416,7 +1413,6 @@ int __sched mutex_trylock(struct mutex *lock) #ifdef CONFIG_DEBUG_MUTEXES DEBUG_LOCKS_WARN_ON(lock->magic != lock); - WARN_ON(in_interrupt()); #endif locked = __mutex_trylock(lock);