Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp481446pxb; Tue, 9 Feb 2021 05:28:28 -0800 (PST) X-Google-Smtp-Source: ABdhPJyN02ARyWlx7nYXBSf8I4iIf8kMniUI7gL6WjsiPjYSB+eq4/GtnHkf9mmerzRABdC25SS+ X-Received: by 2002:aa7:dd4b:: with SMTP id o11mr22929573edw.303.1612877308471; Tue, 09 Feb 2021 05:28:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612877308; cv=none; d=google.com; s=arc-20160816; b=nc7rvCP+TDEpbatt5R71va8X/N1PBRMHlQ7KyeU+RhLastVyXVyaafe8bGafV9DMz9 fD3m3IvZX2Is5g+5wo8cEdQc8/MznW950xV0ir1UhNfE8XAPR4fbc0GjCL91n06SA/WA 5POpYQDkHw2XO6EEjEUUPoaIE46hSzLEz4gH+qJZRuNaI6Ra2ZD08AxNVLQZYjOSbJhV vYHjQ3lVhpeoTuIbAxuvPcUY83XSokw2FzAOz8mf27jnhsHnKRmroYMCEav2U0J35lMF v/wSbtGBPJim3Z1z5tgbVGAtrLf6FZzaHs+X3JXsI2SQrbinalxl6YwkcazwIrbZxcGB xHxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=0NLun06SUJCshwBeGAMbEByfXCTg02R+l89xnjQXzeQ=; b=gyxdIdQsVX/b/4a3u46cXdyqjhZlcqnc9K+L7NvovGsmTkpbTMUFjGwd/QAJA5g6Jr nLhsJBWUFhrkwl93AsY0URkUIAY3WS2+A2z1aArwuQvNFiUxandfyng3q1nL9ZsrQlH6 PJPDWKEmVYvUL4GRFsK9lqgfyMd9SBq0YQxrPQ7u81JGMPGDRc84eY9OlfDfkfzyEhsE bdiOg4B0brJPg9RxGTpuEk0FmZx6LeE9w6V7ZaiK1ZpRD1TWMi8KrCA/6mcKXWBtPcfX uiM3m7ic03FhoLQPdZGeh8pliL/Hq20rYFqrqTz2RWqMVyhHOOAVCAwK0YWlAxmXvgUe UUhw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m9si16302115ejj.472.2021.02.09.05.28.03; Tue, 09 Feb 2021 05:28:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231197AbhBINZV (ORCPT + 99 others); Tue, 9 Feb 2021 08:25:21 -0500 Received: from foss.arm.com ([217.140.110.172]:51664 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230414AbhBINZU (ORCPT ); Tue, 9 Feb 2021 08:25:20 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 114E0ED1; Tue, 9 Feb 2021 05:24:34 -0800 (PST) Received: from C02TD0UTHF1T.local (unknown [10.57.42.209]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id EF71E3F719; Tue, 9 Feb 2021 05:24:32 -0800 (PST) Date: Tue, 9 Feb 2021 13:24:30 +0000 From: Mark Rutland To: Peter Zijlstra Cc: Randy Dunlap , Stephen Rothwell , Linux Next Mailing List , Linux Kernel Mailing List , Josh Poimboeuf Subject: Re: [PATCH] lockdep: Noinstr annotate warn_bogus_irq_restore() Message-ID: <20210209132430.GB71297@C02TD0UTHF1T.local> References: <20210208235246.01cb4daf@canb.auug.org.au> <2000eae0-89f4-a88f-a113-7fa47f16def7@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 09, 2021 at 09:34:10AM +0100, Peter Zijlstra wrote: > > Subject: lockdep: Noinstr annotate warn_bogus_irq_restore() > From: Peter Zijlstra > Date: Tue Feb 9 09:30:03 CET 2021 > > vmlinux.o: warning: objtool: lock_is_held_type()+0x107: call to warn_bogus_irq_restore() leaves .noinstr.text section > > As per the general rule that WARNs are allowed to violate noinstr to > get out, annotate it away. > > Fixes: 997acaf6b4b5 ("lockdep: report broken irq restoration") > Reported-by: Randy Dunlap > Signed-off-by: Peter Zijlstra (Intel) Whoops; sorry for missing that! Acked-by: Mark Rutland Mark. > --- > include/linux/irqflags.h | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > --- a/include/linux/irqflags.h > +++ b/include/linux/irqflags.h > @@ -153,8 +153,11 @@ do { \ > extern void warn_bogus_irq_restore(void); > #define raw_check_bogus_irq_restore() \ > do { \ > - if (unlikely(!arch_irqs_disabled())) \ > + if (unlikely(!arch_irqs_disabled())) { \ > + instrumentation_begin(); \ > warn_bogus_irq_restore(); \ > + instrumentation_end(); \ > + } \ > } while (0) > #else > #define raw_check_bogus_irq_restore() do { } while (0)