From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3BED7C54FB3 for ; Tue, 27 May 2025 03:31:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BC19A6B008C; Mon, 26 May 2025 23:30:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B72D36B0093; Mon, 26 May 2025 23:30:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A66E76B008C; Mon, 26 May 2025 23:30:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 8691F6B008C for ; Mon, 26 May 2025 23:30:59 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id EF487BF551 for ; Tue, 27 May 2025 03:30:58 +0000 (UTC) X-FDA: 83487261396.26.6CDB7EA Received: from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254]) by imf06.hostedemail.com (Postfix) with ESMTP id 4998718000A for ; Tue, 27 May 2025 03:30:57 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PDpCasoc; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf06.hostedemail.com: domain of kees@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=kees@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748316657; a=rsa-sha256; cv=none; b=s4ZE7LK9j4zJ93ZpVSpWr0Ncx7+s1qcNq+/vi9hRIXlHAGBxlldYCZlwBaMl+dMcQvGXY9 2vehPJO4Fprvt6ods4R6RoTsJxgU1iWpL2csNPu9F6svV9CUhPgNFIoZff5m0/V6cEcSBH rV92pVWTAni1UUaXdjM6VgrCucqjeYk= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PDpCasoc; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf06.hostedemail.com: domain of kees@kernel.org designates 172.105.4.254 as permitted sender) smtp.mailfrom=kees@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748316657; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=SDrfCgmMTs1VuKzAuYTBlXP2aVvXV8ECpqmQImLT4bc=; b=x0ksgtz2VadWdzKki4+mjYEJf+tJxnIJ75e25tI2tXhteOvR3TQP1cxb032ZF26N/WLECe vF60VCMdq8HfP2vs9u3DEZKjAm99Hx9n3EyxVAjFMdnWbcP39PgWOPEFSEfjv1BapohpNP 0T6Xgm8+8/V+CQAyX+gJoRUyn9dTIWE= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 3A5BE6113B; Tue, 27 May 2025 03:30:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D4DDFC4CEEB; Tue, 27 May 2025 03:30:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1748316655; bh=4+1dYOsA3kHiY8rIfLnjAgd8wOHuIeN0O4AklhVQ26M=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=PDpCasocKfbRpFVO+Gva5E2erDIv83oOIdsyR75Vq2GGa56oNa5MOdQa5qay1G54y S3D805nuKzNhvN1MGkOcNzDYg75XhUCqp/yL2uAtapUbK1S3n1G1UqKFxjn4ntxa2t CxK7rnXc/L95iZlTUmMOfPm+tWQHp0eHX8ylQn1MLkMLwWEVbEIqOGdVT8vlbCWjXx 1q7/F23sOsIArXHlRGvPt/BGFksZoRCqKz9JnzG/1PYvusJQ1vfQN1bIMcZcy537wE EtK8ERnZ0Vf1prle9VJ/upLUeNrvka0s29uYXbrEKAL1WDGe39ZbtoexMTV0Oi8rty ACZ9lz8fPa0vg== Date: Mon, 26 May 2025 20:30:52 -0700 From: Kees Cook To: Ilpo =?iso-8859-1?Q?J=E4rvinen?= Cc: Arnd Bergmann , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H. Peter Anvin" , Paolo Bonzini , Vitaly Kuznetsov , Henrique de Moraes Holschuh , Hans de Goede , "Rafael J. Wysocki" , Len Brown , Masami Hiramatsu , Ard Biesheuvel , Mike Rapoport , Michal Wilczynski , Juergen Gross , Andy Shevchenko , "Kirill A. Shutemov" , Roger Pau Monne , David Woodhouse , Usama Arif , "Guilherme G. Piccoli" , Thomas Huth , Brian Gerst , kvm@vger.kernel.org, ibm-acpi-devel@lists.sourceforge.net, platform-driver-x86@vger.kernel.org, linux-acpi@vger.kernel.org, linux-trace-kernel@vger.kernel.org, linux-efi@vger.kernel.org, linux-mm@kvack.org, "Gustavo A. R. Silva" , Christoph Hellwig , Marco Elver , Andrey Konovalov , Andrey Ryabinin , Masahiro Yamada , Nathan Chancellor , Nicolas Schier , Nick Desaulniers , Bill Wendling , Justin Stitt , LKML , kasan-dev@googlegroups.com, linux-doc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-hardening@vger.kernel.org, linux-kbuild@vger.kernel.org, linux-security-module@vger.kernel.org, linux-kselftest@vger.kernel.org, sparclinux@vger.kernel.org, llvm@lists.linux.dev Subject: Re: [PATCH v2 04/14] x86: Handle KCOV __init vs inline mismatches Message-ID: <202505262028.E5B7A7E8@keescook> References: <20250523043251.it.550-kees@kernel.org> <20250523043935.2009972-4-kees@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 4998718000A X-Stat-Signature: 9m1ibbn4rzhdqgjxhw8srkpenrqmeiyo X-Rspam-User: X-HE-Tag: 1748316657-178395 X-HE-Meta: U2FsdGVkX1+zyyD+VIWjIKcet+qWw1rKc6VrDveENxw/qZoxGja6Rlp8hZZf1d+o1KXfzaZ5CCxCiZeESs9cr88H3JlpS/iTHOiAU6Oi5yD7jHgyqiuNphPQPpTin5fm/QQau5gG5uauUBlKNFAd/jr+rNkJOq50Gs0TdIKj3SQCMvqPUas/7dswBcL7/7AP/HeekHsk4WpuPkEJSHIZGxYrxindwaJmatna4i/+VbIbsP6GWEwCxKhN1dGwm//CKejodskJHWBsEgqXeSE70ail4ihSUyUG8tvaNb+Y3SStpzkDkhniM7V3OG74sMKlZu+YVXAnK1GrOAQlG7b0Td6N1DDCyy4CEaxjDb+JIUpY/iDHM0DM6+nmhe0B1u53mYijucZU/KvYVnDxrebT39hziKlMaZrbNPKt6c5IdGlP6aJJrwC5IM7ihU4tAmYCXwgxCu4c2zpxqsa3c0yS8gERMNX0ejUPfT3LnDALVR3C9K9TSE52TtwhlXjHPWS4dBPAYZOtHxpItwlIStcuGPoOYo9QmaXZy13j4HGIE9yYTWqISzeqBv1qkgTCe32CFJc5ywz5KsZNlUl+ooZ7dZf7Cbl2QKxdaGSsAZTCLXIx3Rag/GEAf5vmymWbqDDBFHgjnWA+oOOu7gxBFifMvkLY1WOKqCkbNvT+k1fo3eaZkYrEOH+rMZdHXBfuQzJ4BlBVAbCs0O2FoEJ0pghtn5SLpi9FXsrI+WKOc0cJXIISXNtA+yoZQ4temu4yJ8cfv8w0DFNEyKOjvGTRPQPDYNiGv0FgQPfzjddry8FxYvVC8TnMcGbxuYpnYvsiXjmtDf/Tl6dvExcMrsqzmDoQOdKy6ytAxy388o4fknB5rrB5ugwAyyaFwPUK6p8yNxZ7hnm8xZkZEC8GPDh2JGGi1+jV7/7ZuogCb0xcuG7uxnTHAaiQpVzwvz8z+DSjGctUxZxr+GgMkzVMOdUk+ua IEJENX+E QtRAjFMaxg/8LcvSzqfCXNej2/m0h0cH/fRHirSRDJJAJ8kmwnvfnX38QB+jw6SJ7svvHwHWs7CWsu885xkKhgS+MdwkMqqilczRaEewJlOE4pFaWtZcQRiAIGXlWjRhDh4e1CrVMiu9IH47bxItdvPCC+/kcUZYmhYd9582rrIcHyd0MCpMZGjlhEcXkDTPo8BkTW6scqbyFUCQM2MkvlHXzUBpOGHtaBS34itdJed8nFQUqBupPG5x/VxtlcSj0SJ5n4ZrAUA66Uk9uempBFKd/3WgqSj0eN/FRhXH4jRGAFCkysSO07WBbgSQFssGHNi/T/pYi2rVz3oiX5pQlUs67rRKzqMEdh+AOVS0kkQUPyUr4IEvR0HCLJ6rOczxlrpa21F5khpyfVQqxJ+xWRG8inIWt5/eSeqA/MUnUniqbsdLSrQ/+N/TJMJW4rYmOH8kzffnjx7x1tKzqbSYvegiSjXFj3cdTV/KiWL6/yVvCmOlFtyfi/KOzdeOnJYLtFZr1dIEk+bgUXd/JUwYS0miN8shfOibLTmUFJrtCrGj2/z/zO2ENQldKie0mtydZ8NBK8XDCFmpRBuqFLz4x7gLEDR9nBn0KvFe7t+S/zt8vJjp5MaB783QJPIwALms0FO5DkbxHrhoicETRb2gO250EdmLFhh3Hk8Bc7np8g4CPO/Jyq37ybnHdYKz3df5jbHbj1qA71iAXGQDU0I5PJMry+aonVhSPcc7BgJ3fXESwPXc0GAn0AxCBFWL0txbrrJJT68WNLz/XmIQDG1ffNPePq82rl32FDOqjt2A09C0rA4jUsJFToFo4oLLiljFi3Idc X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Mon, May 26, 2025 at 12:53:13AM +0300, Ilpo Järvinen wrote: > On Thu, 22 May 2025, Kees Cook wrote: > > > When KCOV is enabled all functions get instrumented, unless the > > __no_sanitize_coverage attribute is used. To prepare for > > __no_sanitize_coverage being applied to __init functions, we have to > > handle differences in how GCC's inline optimizations get resolved. For > > x86 this means forcing several functions to be inline with > > __always_inline. > > > > Signed-off-by: Kees Cook > > --- > > Cc: Thomas Gleixner > > Cc: Ingo Molnar > > Cc: Borislav Petkov > > Cc: Dave Hansen > > Cc: > > Cc: "H. Peter Anvin" > > Cc: Paolo Bonzini > > Cc: Vitaly Kuznetsov > > Cc: Henrique de Moraes Holschuh > > Cc: Hans de Goede > > Cc: "Ilpo Järvinen" > > Cc: "Rafael J. Wysocki" > > Cc: Len Brown > > Cc: Masami Hiramatsu > > Cc: Ard Biesheuvel > > Cc: Mike Rapoport > > Cc: Michal Wilczynski > > Cc: Juergen Gross > > Cc: Andy Shevchenko > > Cc: "Kirill A. Shutemov" > > Cc: Roger Pau Monne > > Cc: David Woodhouse > > Cc: Usama Arif > > Cc: "Guilherme G. Piccoli" > > Cc: Thomas Huth > > Cc: Brian Gerst > > Cc: > > Cc: > > Cc: > > Cc: > > Cc: > > Cc: > > Cc: > > --- > > > diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c > > index e7350c9fa3aa..0518d5b1f4ec 100644 > > --- a/drivers/platform/x86/thinkpad_acpi.c > > +++ b/drivers/platform/x86/thinkpad_acpi.c > > @@ -559,12 +559,12 @@ static unsigned long __init tpacpi_check_quirks( > > return 0; > > } > > > > -static inline bool __pure __init tpacpi_is_lenovo(void) > > +static __always_inline bool __pure tpacpi_is_lenovo(void) > > { > > return thinkpad_id.vendor == PCI_VENDOR_ID_LENOVO; > > } > > > > -static inline bool __pure __init tpacpi_is_ibm(void) > > +static __always_inline bool __pure tpacpi_is_ibm(void) > > { > > return thinkpad_id.vendor == PCI_VENDOR_ID_IBM; > > } > > Hi Kees, > > What's your plan on upstreaming route/timeline for this? I'd prefer to > retain full control over this file as we were planning on some > reorganization of files into lenovo/ subdir. I'm not in a big rush. I'm hoping to have this all in place for v6.17, but the Clang feature won't be in a released compiler version until September. :) I can send this bit separately for your tree. Thanks for taking a look! -- Kees Cook