From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751925AbeEDRwd (ORCPT ); Fri, 4 May 2018 13:52:33 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:42374 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751814AbeEDRwI (ORCPT ); Fri, 4 May 2018 13:52:08 -0400 From: Sebastian Andrzej Siewior To: linux-kernel@vger.kernel.org Cc: tglx@linutronix.de, Peter Zijlstra , Ingo Molnar , "David S. Miller" , Johannes Berg , Alexander Aring , Stefan Schmidt , netdev@vger.kernel.org, linux-wireless@vger.kernel.org, linux-wpan@vger.kernel.org, Anna-Maria Gleixner , Sebastian Andrzej Siewior Subject: [RFC PATCH 1/2] lockdep: Add a assert_in_softirq() Date: Fri, 4 May 2018 19:51:43 +0200 Message-Id: <20180504175144.12179-2-bigeasy@linutronix.de> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180504175144.12179-1-bigeasy@linutronix.de> References: <20180504175144.12179-1-bigeasy@linutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Anna-Maria Gleixner Instead of directly warn on wrong context, check if softirq context is set. This check could be a nop on RT. Signed-off-by: Anna-Maria Gleixner Signed-off-by: Sebastian Andrzej Siewior --- include/linux/lockdep.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h index 6fc77d4dbdcd..59363c3047c6 100644 --- a/include/linux/lockdep.h +++ b/include/linux/lockdep.h @@ -608,11 +608,17 @@ do { \ "IRQs not disabled as expected\n"); \ } while (0) =20 +#define lockdep_assert_in_softirq() do { \ + WARN_ONCE(debug_locks && !current->lockdep_recursion && \ + !current->softirq_context, \ + "Not in softirq context as expected\n"); \ + } while (0) #else # define might_lock(lock) do { } while (0) # define might_lock_read(lock) do { } while (0) # define lockdep_assert_irqs_enabled() do { } while (0) # define lockdep_assert_irqs_disabled() do { } while (0) +# define lockdep_assert_in_softirq() do { } while (0) #endif =20 #ifdef CONFIG_LOCKDEP --=20 2.17.0