From patchwork Thu Dec 14 05:55:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492287 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 18DF6C4332F for ; Thu, 14 Dec 2023 05:57:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A3EAB6B05CD; Thu, 14 Dec 2023 00:57:04 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 9C7E56B05CE; Thu, 14 Dec 2023 00:57:04 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 841766B05CF; Thu, 14 Dec 2023 00:57:04 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 70E166B05CD for ; Thu, 14 Dec 2023 00:57:04 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 49BAF403F4 for ; Thu, 14 Dec 2023 05:57:04 +0000 (UTC) X-FDA: 81564365568.03.14A7ECD Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf17.hostedemail.com (Postfix) with ESMTP id 07AA24000B for ; Thu, 14 Dec 2023 05:57:00 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=pVMS5U4m; spf=pass (imf17.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533421; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=S5PvZzwihJCEtsOMzLDq/hhL3tFxZ+GRI8sP7cCU/cE=; b=nx2Zp85cGJQJdB4wA6Fr0rZi+5umiz3nxRRg+mK4J8kR8RgesyOZlWq6f488f/ACrWPG08 L+CUAE19/1/XB1uLHuoXXSetp2zJNX7ZpwnoeE8ak2XiyTg2G/EEw8sJZ+VBU+rqzdYNNK iD8lgYt8UQ7VdOQdaXkHozUp+dU4t6Y= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533421; a=rsa-sha256; cv=none; b=XVgWm49FoSW1XT7MuTgiwDX8Zdw3QvyuzRZlZeBBZkIv1vDK7Gt2MC3e1VK//2NN9j/s9w wUSJQy6c+HkdsPOMZlWdnuR7bSTzNjrJN1LVpD5gKq1FsOwRYsoNrZPj3zqS0l86MFGC9A GdmN/WFAKLJBlB5uWvEbmFOpOXJ8fXE= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=pVMS5U4m; spf=pass (imf17.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0353722.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE4Whb3031214; Thu, 14 Dec 2023 05:56:55 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=S5PvZzwihJCEtsOMzLDq/hhL3tFxZ+GRI8sP7cCU/cE=; b=pVMS5U4msmHXiFD9YiJYHALzYOZ1nTA9EEhPrWsxn9x4KpgoIHRTR+bsnthmbFSO17X6 nsBaDVxqot4Ejq0uKbEV/yHlwL2gWOmVmmQMfqqSNJU9aI+mPIebes1DinnXWUyBxvv6 MOO2pwLkzfduveOrmbccVhouEgaimeKDxSVd5vUmKdlpD2JUqZUUNB4p9+ropC6M4aaA WqgHeVgEtn1QvVZTCVFBeYVDMfaig2ts5deA0ej3r5wdIKxiScvllfh7YNFK57zs+tiH 9Ej/sAqOzUMCNcmY//1y6iyJ1A4oxFVYtHjupzZiQDpVnSEouEYg8W/sHDDXxD238lAz rw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyts2hk9p-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:54 +0000 Received: from m0353722.ppops.net (m0353722.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5SBmS029575; Thu, 14 Dec 2023 05:56:54 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyts2hk39-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:54 +0000 Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE3JYZ1028220; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw2xyxhmk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uOjJ22151732 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 04D7B2004D; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 864E920040; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id 77E0D605F3; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 05/13] powerpc: Unpoison buffers populated by hcalls Date: Thu, 14 Dec 2023 05:55:31 +0000 Message-Id: <20231214055539.9420-6-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: oohPGHWoNwWW22yXQxLqPk3YupwgWY9n X-Proofpoint-GUID: v3dSSLQcrbP9Wpukc5CGgwUiAQvQLOIY X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 lowpriorityscore=0 suspectscore=0 mlxlogscore=695 malwarescore=0 clxscore=1015 priorityscore=1501 impostorscore=0 spamscore=0 mlxscore=0 bulkscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Rspamd-Queue-Id: 07AA24000B X-Rspam-User: X-Stat-Signature: erqmaddq6r8kdr46yk3kqisscau3ktqz X-Rspamd-Server: rspam03 X-HE-Tag: 1702533420-466534 X-HE-Meta: U2FsdGVkX1+MOtCsXms4GVxBvIupX3Pnot++8uJQxcOvQRUSHC8iBEcD4r4Ir4lQwEjzJAXx3vQXzqMCG1QFXD6l8grqYYrA29i6nr0TsLCbcdBzeB/hTSyaJ9ANULk0nFp/fGAWYcbrKX52+MqMD7wHtrJoBrT1kZqeeTInxVOJh8qhUi4fNf5xqf3VfvB0j/aVZzp0OXJzxCjCDCBQ7x55BFnSfjlt+UwD1yym3rkPQGaqmFe9yKRI1quKjCN1bJGPPL3J61Pk4CFOWG21RiMzxre5yTwXG7S3MbAQSOLY2ojGkGiuN9nQ0DeXKq3awRNnUVZoeng4GEDZvCfwfSKggdMXxkr++62/R2BBMWKmHPNPoTXMs4lUmph6qiDFz3px3zttmzYzxTdY/rGuSFRUTj1Dw6Eu4kBUvCtFb85F3AcOA3uuh49x2TEWO6ho40MDODDQsLzLlpPQTT85qrONjB/BtI1Q77BAErmbjoaASsJdn+LyoLI6AqHG3sga0N+5dEqSYYeMfEBRs2CuP2gs5ZyiShr/UUQhOxapfIT555UVVA31OzuB6P40iQQ2DDdYBfrMkGCPteR2k6HWtnvw887YivUeleW7u9nPeoAlFbsfDVLJTaS/8OOsJ9lvPGwnWVt4zAYXwMvRmxEF7RQBH0519esE1SsaPnO+luLAv0oLcvDyFQ460TxBA9zRbf+QoLGjEVhbKz1Nhh4m2VLqLHaxRVLEUKOsWWvM4AxQ5JJHm0pMlrtyGIJLG8+JfcMptR0YsbANwYMog4o3zNAoMkODqx9q3B/H6lOIQo5m03BSHcuWt7AXk9y/P/PQlqA6ddouLWS5AdV9APmFUkf5RZ1VlElKaKoMiiOxl6DdwVnlkiSHBUyk0N2NuNpGkQmjcHFwOHO36AdZXzm2fgSv4yDFbaVE0TTFr/r09QSSmLbm17sS2PnUjdxbCUzxK2xbOT0K9dK6EPl4PyY BI2Wk0MI lJO0C9f+XPXYC/4Wg+BflnvyGUttDOBLhD6cRH6LjQ/7uGnoV8AzhWsbS/Lyo7TlWjKuD5WMpimfzQCVa52FkT6kyf62fNnruLqQjxaih1fEKBrTBaBPLwdawlHtmbrEmBBAJBwqbXTlxsDpZs45Gc0GYmcgtWBTYMJI4tBTMJpKpOJR6t7+rBJOL1w== 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: plpar_hcall provides to the hypervisor a buffer where return data should be placed. The hypervisor initializes the buffers which is not visible to KMSAN so unpoison them manually. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/platforms/pseries/hvconsole.c | 2 ++ arch/powerpc/sysdev/xive/spapr.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/arch/powerpc/platforms/pseries/hvconsole.c b/arch/powerpc/platforms/pseries/hvconsole.c index 1ac52963e08b..7ad66acd5db8 100644 --- a/arch/powerpc/platforms/pseries/hvconsole.c +++ b/arch/powerpc/platforms/pseries/hvconsole.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -32,6 +33,7 @@ int hvc_get_chars(uint32_t vtermno, char *buf, int count) unsigned long *lbuf = (unsigned long *)buf; ret = plpar_hcall(H_GET_TERM_CHAR, retbuf, vtermno); + kmsan_unpoison_memory(retbuf, sizeof(retbuf)); lbuf[0] = be64_to_cpu(retbuf[1]); lbuf[1] = be64_to_cpu(retbuf[2]); diff --git a/arch/powerpc/sysdev/xive/spapr.c b/arch/powerpc/sysdev/xive/spapr.c index e45419264391..a9f48a336e4d 100644 --- a/arch/powerpc/sysdev/xive/spapr.c +++ b/arch/powerpc/sysdev/xive/spapr.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include @@ -191,6 +192,8 @@ static long plpar_int_get_source_info(unsigned long flags, return rc; } + kmsan_unpoison_memory(retbuf, sizeof(retbuf)); + *src_flags = retbuf[0]; *eoi_page = retbuf[1]; *trig_page = retbuf[2]; From patchwork Thu Dec 14 05:55:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492286 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 34D38C4332F for ; Thu, 14 Dec 2023 05:56:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 118216B0551; Thu, 14 Dec 2023 00:56:54 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0A0DE6B0552; Thu, 14 Dec 2023 00:56:54 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DE6FA6B0553; Thu, 14 Dec 2023 00:56:53 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id C47906B0551 for ; Thu, 14 Dec 2023 00:56:53 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 9C8111C108D for ; Thu, 14 Dec 2023 05:56:53 +0000 (UTC) X-FDA: 81564365106.22.272726A Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf15.hostedemail.com (Postfix) with ESMTP id 5B8E2A0004 for ; Thu, 14 Dec 2023 05:56:51 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=NofoJehk; spf=pass (imf15.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533411; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=4DZJYxEc4SZaDH8SYYalzXsdURynFs6mETQ32ZgpxKM=; b=8SBWueYPDFTsgP0Zd3pwMnvB4n0LTW2uO06f7gGOXULvEiWNusEOJk75yUW06FKcKCf/1U NPbUrL4L+Q+ynB5Cl/mpnjNLR//7YdqL4GbN1SRDmFe6ORqlHMqWO6gywhi2dXRHIfbS0L 3u34lG2VEteeCD+7aSP/1OGEl1Az6xE= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533411; a=rsa-sha256; cv=none; b=BkqQv8He4tN8NeXH8N8lGEFs6W21YNXi1nK4b+CTRX69JX/k24UrX6yq51CB5mF4vc+Unn TGCfz/pdEa2iPPhc3/8tBwny38o4uY0FOJabIggupYZVOnqzS4L9uenYuAm5hAPPVsCoeo 33ZyFIZCAErPPdGqXSMvpkr6QqhgSmM= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=NofoJehk; spf=pass (imf15.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0353724.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE4nXMv016537; Thu, 14 Dec 2023 05:56:45 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=4DZJYxEc4SZaDH8SYYalzXsdURynFs6mETQ32ZgpxKM=; b=NofoJehkG1v/7XaD8ddU4a9rDfQnzy2vmJvYbu4KLssINrMmUNK+dBwynu4IIDfR7jxe Z6dgfJBLj4deEfuoUGLDvSmE/ytgfcAN+UV605pid6wBflOtIeFsNkQ2k9KogspsQBVT 1B8TczXry1rFjNEBlj0DAkGRpnVnB58yTfncgX3dy9ag/wtqUQKG6VC3YbMkTa4zWX1n 7IdO51h04/dgXxvW/CNpOIIBvWJkzHQyeOleH2LbHf73oVBtSphRnpRLNjz5HTT4UyAI ZaUlJWtmX9csugzao7RpVO04trbjfNkcI+HQpldS+IC3sVpH2VW75r64rS6avBfNnM6g ig== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyu0ys81t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:45 +0000 Received: from m0353724.ppops.net (m0353724.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5M76w005673; Thu, 14 Dec 2023 05:56:44 GMT Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyu0ys7xe-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:44 +0000 Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDNcC4M014824; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kggr4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uOeY55116242 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 020E52004E; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 87ABE20043; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id 8575F606E7; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 07/13] powerpc/kprobes: Unpoison instruction in kprobe struct Date: Thu, 14 Dec 2023 05:55:33 +0000 Message-Id: <20231214055539.9420-8-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 3Us5CtheJoZjlpslVofjgPDJzZ6Fl4Vu X-Proofpoint-ORIG-GUID: rBBFY_dP7t41UbfjaY26lzdS7EmDxzzd X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 malwarescore=0 bulkscore=0 suspectscore=0 mlxlogscore=711 priorityscore=1501 impostorscore=0 spamscore=0 phishscore=0 lowpriorityscore=0 mlxscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Stat-Signature: wp7odjb7k5q4sad67855d4bmsfzt6b63 X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 5B8E2A0004 X-Rspam-User: X-HE-Tag: 1702533411-100062 X-HE-Meta: U2FsdGVkX1+LaatO0Cw3/b2UW0m97Y/J7jKAmT+DkPp3fHPu15R8KVJHCNSqxsoXJdmOWDytVNPEVhxCtRfORtX6wYWiJ5OMuxI1WifY5af2YK0hAZpHW950qfYo1yUPN8LCTYBe/PsP4PbDZ7Vud55+hD2i1KAQ5DnAasJfUC8jmXVA9Euwf2S/FhelsB0XS1mSiQPFT/jWozhdpIXxhXWDdVxqjdYzzURhRXgc84NCXDwJlZaxzkea73qbo69XS4NNkgl2U5ev6pkpdads/R6ZtXuT/fYS4kRf2exuB2WBhWxMryZD3scCEcpS8EXIpG31ldKeiioQTAyzD6mWmjD9tkfRpHV9KSGP70uH5gdZqism0QoMbqk05ZbahdMYyqENqK7lYuXKpxJwq70MvaIvgSWdTVQuAbOGvjMPpEn05lQvC2qv+HXTvshrXDCuPNBxH+iZdfdrNQlKHVE18erTeV7PrPZG8whm1KI6dVzlt2ivJYfcIRnwAmbu6RZ5f6+QRKWXISFngp0eQK8hYTbr680UBI+jAloaq7XN+8MhC183zjg7YB+gR6iMoeLIqXS5Ex6oT2cF+yrW/4qc9xo3pMYaKPettSeWheA2U9bxwGMK6+2MtJV0ACWMu1X/j/pDU6yUPsQygbVV40so63BUh1erNCY1A2/jhphBVy3VXAC+lKL41idkOg/gwLCWWIJ5JfP7Z10TW/tN3bnpSAD37XkKi3K1oMKm7iZR1rISncT0wPAIxXhV93D5St29wgmI/HZJ71Wfywe/W2/bCad9ylRHc+LHyApctEv2+1P6zoVF8ZwndMIQaAnK8VnvOmRucEJtSYVEESnLA4W0Yvp+qe90Kb2ISZi6MlDB1QlsbGxUONG9mDvgmuA+v2YeCuziNaEPxs5oG2W+kjJHWtjYb950ze40DKER2e5r5ZZge/dnfk7OucM6ryDkZmBQ+qCg95E71m4PS9Pu0uK j1VjZ0y6 8VDeLmmJpcpMMV+CNXbrfh83h+omvFnZYg2CHxYq5x6MBZ4GvcxtqfmSKYQXgRrSg1csgqWjCzBtIQcJFtZuNl7u6BACRXPqNu70cQRG7PP1QGhD41iO6G1PAeE4GVxLXWYcmPxwvNFoj+jW7SKjeVHUIGO+o6LsTK4D156k454WDk8P0wp02z772gOYZaAeQMgbLtWQhQXC39zLP8fUFLt+Y+MLnSsuFEP1TxGVpm+FJS8dJMJ1OxFReMA== 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: KMSAN does not unpoison the ainsn field of a kprobe struct correctly. Manually unpoison it to prevent false positives. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/kernel/kprobes.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/powerpc/kernel/kprobes.c b/arch/powerpc/kernel/kprobes.c index b20ee72e873a..1cbec54f2b6a 100644 --- a/arch/powerpc/kernel/kprobes.c +++ b/arch/powerpc/kernel/kprobes.c @@ -27,6 +27,7 @@ #include #include #include +#include DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; DEFINE_PER_CPU(struct kprobe_ctlblk, kprobe_ctlblk); @@ -179,6 +180,7 @@ int arch_prepare_kprobe(struct kprobe *p) if (!ret) { patch_instruction(p->ainsn.insn, insn); + kmsan_unpoison_memory(p->ainsn.insn, sizeof(kprobe_opcode_t)); p->opcode = ppc_inst_val(insn); } From patchwork Thu Dec 14 05:55:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492281 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 E443AC4332F for ; Thu, 14 Dec 2023 05:56:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BEE2A8D0099; Thu, 14 Dec 2023 00:56:38 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B9C988D0083; Thu, 14 Dec 2023 00:56:38 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 81B9C8D0083; Thu, 14 Dec 2023 00:56:38 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 663AB8D0098 for ; Thu, 14 Dec 2023 00:56:38 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id EC64E80479 for ; Thu, 14 Dec 2023 05:56:37 +0000 (UTC) X-FDA: 81564364434.25.17962A9 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf12.hostedemail.com (Postfix) with ESMTP id 927E040007 for ; Thu, 14 Dec 2023 05:56:35 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=H6Vi0Q4u; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf12.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533395; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=JH7THuNQc9cqEmJHzHndMkqRs+bt6nd5xJ0k6Nbi28M=; b=uKV3HhA5hAKWOXmcbYA/Mtg+S45hN6CFgQ18OyxIJ8UqZ1IHojGNDoKKzvrUvvSzDD1V8p duVA+GIurLwbAVS8gmUv9afPatS8/tk56j5/U333serv+e6BmrCPD1vzzT/j5lQ4aL8nSU 9KE5KWbCl1rLmyIQpmw58xK98UvZCMI= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=H6Vi0Q4u; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf12.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533395; a=rsa-sha256; cv=none; b=z5YubDMrJ1q6IQUyDS1OJcHl3Is4eih0wdoTNFubXNGowWvYbIB0UcfGxo0tGPtlF7azn2 I2MbKZtMfTTUu231+rof23e03zK48Kj+7tbONkmsoOYwddxiyun56qfGGi0TWMEkyw34IR YNpfB8KHtSoYjcV4zS8t1gEEZUS+PpE= Received: from pps.filterd (m0353728.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE5a2AN017874; Thu, 14 Dec 2023 05:56:28 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=JH7THuNQc9cqEmJHzHndMkqRs+bt6nd5xJ0k6Nbi28M=; b=H6Vi0Q4usYMkIqkUo24VvSEVx1cldTN8bVLS7Fr9K9/CjsNqNAecFNEVRpCWuSYA1OGY YQuMrooCHAJ5aIBRdFr+jcPvy5anB1FNlx1OUOKKV4XnREzUnInmWJpge7eAbXOSMn2/ H+MQtSSYKXgBJRa6ilw6al0C5779QUq+LtLJcVVuvktZ8aWT+NLLKnEMSwTknfAp6vZO /WwTZpgwIbK/XoR87LxmawbMyEjZWa3vvHdYNnJ0t25MICVuZgdHZRzc/EOD/w5szyd4 wypwz2Ae903gB8Sjhs4jTNL9vwMg3t+uDggEu5iDOSXhPqsSxj1kffmjP7kF7Uj/auJW nA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypke6ev0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:28 +0000 Received: from m0353728.ppops.net (m0353728.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5tX92001374; Thu, 14 Dec 2023 05:56:27 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypke6eu4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:27 +0000 Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE3UgCH012585; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp6eg0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav05.fra02v.mail.ibm.com (smtpav05.fra02v.mail.ibm.com [10.20.54.104]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uOkC22151736 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav05.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3AD7C2004D; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav05.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B30AD20040; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav05.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id 8B77D606E8; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 08/13] powerpc: Unpoison pt_regs Date: Thu, 14 Dec 2023 05:55:34 +0000 Message-Id: <20231214055539.9420-9-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 2HFK1yGgvChNjyDg91ZhydhLex1GS7Qz X-Proofpoint-ORIG-GUID: lBPTZrRlZWZzO3fKbGz6ydwaSFhSPO_j X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 adultscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=484 priorityscore=1501 suspectscore=0 phishscore=0 lowpriorityscore=0 impostorscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Rspamd-Queue-Id: 927E040007 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: ox6go1ujgjics4jw5mikhed3gq146s31 X-HE-Tag: 1702533395-598173 X-HE-Meta: U2FsdGVkX1+raLYpOVnPzdOzYcn01pwwhitcfexFGRGjUxTnhcxB5ZZOUcKGNve85r3Muaw0Lqyy9OJTmB8WUx/freIjyTCtm+SRFWuBmcKWwRix7k5Rp3YvIaMwmjLxMi8E/yn098O7v5CFgAcdEfPk6Sh7M6txN8eYrI26OmECrMFQI2mgFlj7E7g3803/vRp/VTBfXPdlYh+L49EjLgalfXLLcntRhG7Mqm5PKek/V6pG0kKpbHIzoTcK997UOynQsXKtTltdppxwCU4GjNF99/SC1dQSuLuv3wpLgmz6h6ArZa16NhZTKw8rA5alyQB8glBGjp4Bo+zblGjP+TZ/BdojCfQ6oofF0b65Vwgi06mx+/1XjBmpfYaC7PqDz/gkZKC8qaoD9l3dVAyfkm+M+ew/S5kqwI4SLtMskZBGpXwXhmBTxC3ScXm1dQxBzZq8udeRPjqYcWUUoeLYpXeC0gmc6zBnfa1laxUi9Dkvx7+8jNJAMa9OM/36ag+ceG+q8fmAh39+qc8nju2+LcqdmakZOQfCkgeHTj15HEk+Gs2Gvp2M+Cq3BIYMitmhd8tcFLCe/oCo5lDbFU1J8TRL1A/KgqYzUBsyoUQqfT4bDRLzCzNM8ZvepScGVYyNCnj0tDtIo5RHLnYfnzbQDG5/jNg4ED2Q9e1j+8JH7L4kkDzNsDB1wzKX3YS3socooJ3X0CO0EwZ6Rc1kC/E+8QpbKwq2Tb65EmOEzOrAyBGwXXz1Z+3bjLBRbsVTt8u/BQT+X+WON3VZ6wHffOfahHHvrNJk0heoiil4gskPzE5PKmDo6F3ptv88K+Jjp509ebh0EtZtUCvWfggg25gDHp8FMoHcH23tCK0XafKnVlhYZvmuW+h5I89rUdDJaKAK0GzFm4YLOe2C88wkh+x8UIV8y8TFVO4C7VfBmAxDlwlq+cbgVB1vJBHIoaS5X98v1/PKQotxcMluTG5wB5y yE7vZbPQ q1WQie7uoQ40Z9hoe0nX4MEjgDEKE8uvod+S4b+hpWrMMbjHs3ljxt+C1VaD+RwgF2cY1CXXhbMCusfeKE2KLEPGPIXg+2GmLoAFSrMYJ+C1hVK01asEVgtCrU2c+eFMjzpeVF6lfiA3MExNbr+7BijtgFqZMCanR9O8qzglA01JfMgR2mXhwFPcGeSghQou7OWykjNgjNeQuFKH3G/ETiEzf1x2MIsasgEP3/ajQIg0U1PE= 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: pt_regs is initialized ppc_save_regs which is implemented in assembly and therefore does not mark the struct as initialized. Unpoison it so that it will not generate false positives. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/include/asm/interrupt.h | 2 ++ arch/powerpc/kernel/irq_64.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/arch/powerpc/include/asm/interrupt.h b/arch/powerpc/include/asm/interrupt.h index a4196ab1d016..a9bb09633689 100644 --- a/arch/powerpc/include/asm/interrupt.h +++ b/arch/powerpc/include/asm/interrupt.h @@ -68,6 +68,7 @@ #include #include +#include #include #include #include @@ -170,6 +171,7 @@ static inline void interrupt_enter_prepare(struct pt_regs *regs) __hard_RI_enable(); } /* Enable MSR[RI] early, to support kernel SLB and hash faults */ + kmsan_unpoison_entry_regs(regs); #endif if (!arch_irq_disabled_regs(regs)) diff --git a/arch/powerpc/kernel/irq_64.c b/arch/powerpc/kernel/irq_64.c index 938e66829eae..3d441f1b8c49 100644 --- a/arch/powerpc/kernel/irq_64.c +++ b/arch/powerpc/kernel/irq_64.c @@ -45,6 +45,7 @@ #include #include #include +#include #include #include @@ -117,6 +118,7 @@ static __no_kcsan void __replay_soft_interrupts(void) local_paca->irq_happened |= PACA_IRQ_REPLAYING; ppc_save_regs(®s); + kmsan_unpoison_entry_regs(®s); regs.softe = IRQS_ENABLED; regs.msr |= MSR_EE; From patchwork Thu Dec 14 05:55:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492280 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 B1F81C4167B for ; Thu, 14 Dec 2023 05:56:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3B0498D0097; Thu, 14 Dec 2023 00:56:38 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 33A1D8D0083; Thu, 14 Dec 2023 00:56:38 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1161D8D0097; Thu, 14 Dec 2023 00:56:38 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id E8D398D0083 for ; Thu, 14 Dec 2023 00:56:37 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id B6128120480 for ; Thu, 14 Dec 2023 05:56:37 +0000 (UTC) X-FDA: 81564364434.01.4A60F1F Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf06.hostedemail.com (Postfix) with ESMTP id 5507618000D for ; Thu, 14 Dec 2023 05:56:35 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=HviIdLMX; spf=pass (imf06.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533395; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=/mQKPh+Q/+oVqTYrm5JhFDCdjY5bZbTlHx3Tfk9a0cM=; b=TXRmtR2IRlIL/JZrVdaoKgNxYeVzwMZ38V5bnFJ9fUMqxS2qe+Hyir8H0Lpfn8XhqXLygn d0hxDZLY6SEGszQkLreyRaaG2qUJtcmipz9MwfY9u/lgqWstI/S2JX4Hw6YG6Pg9MtiWhq XGm8n7jTBIbEi1qFidQ674jjVd8KtNc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533395; a=rsa-sha256; cv=none; b=1jDhBsO/Piq5cmDubfYf/qY3Txo6vsBO7jadg1BW1BH8n5nb03Mwv8dQFXskRJAlA/YYI0 107/z0wiZechuYsk0EPQoRMhnj5+MjtJhFpMXxs0XZor1Y7hDU61clT7/KER7bU59N+cxT 3Ipu6v7TFsEH405b7Rv81932Q4LcGvg= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=HviIdLMX; spf=pass (imf06.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE2Uej9022139; Thu, 14 Dec 2023 05:56:28 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=/mQKPh+Q/+oVqTYrm5JhFDCdjY5bZbTlHx3Tfk9a0cM=; b=HviIdLMX+gGsWGnJUfcgJ1zEBu48XMwnVfecoXiEmf6Tv6qT4swY5ic30eZT4ZCJaK7F 2tVgJWOTwb1EQta+JtuvXkYe+n0LoOzO0x4ze5EeVexeEV/A7fH+4kL6KDkGSsOgKjCj n3tZsn8S9GAuTnCSmmgcNu1Cjo17RPYnwC/nKQ8EkuxfFKe8TLi/BQ2ZF1BYfO2gJBt2 kK3hoq2EcfsjQfS67rq0cjnQe2/6PR3IwJUEIKI3IFGLHTIqHrioiAHQmyNZO+BxFiWr NcMVBwL3zgCKwv09Az1XFXvrpqEHElxwIXHgRZHZXQQqOjeTyQYS5IB1vpQm9hJaNkfS LA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyjg3cj8s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:27 +0000 Received: from m0353729.ppops.net (m0353729.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5r8A1026718; Thu, 14 Dec 2023 05:56:27 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyjg3cj7a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:27 +0000 Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE5cXLZ013892; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw592dwf3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:25 +0000 Received: from smtpav03.fra02v.mail.ibm.com (smtpav03.fra02v.mail.ibm.com [10.20.54.102]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uOb944237272 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2C18920040; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav03.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B55CF20043; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav03.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id 92302606DB; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 09/13] powerpc: Disable KMSAN checks on functions which walk the stack Date: Thu, 14 Dec 2023 05:55:35 +0000 Message-Id: <20231214055539.9420-10-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: bbcuSHGLeoKEVuj7srCG-ZCZayTjEdOS X-Proofpoint-GUID: KH91wVFkQGDFAZOFPfyiwzBaXkKHaRsA X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 impostorscore=0 priorityscore=1501 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 lowpriorityscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Stat-Signature: r67wqnh713se8p7wqpxi6unjk6ehdr9k X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 5507618000D X-Rspam-User: X-HE-Tag: 1702533395-127619 X-HE-Meta: U2FsdGVkX193Ody7AHhENyJl5HCVr7o+gxAYZbY8yN7ClNIiMDQc0vxngUTJux8C6KQh89fWc/HhWJKxpWJMNz81Nr7qWLUg4Rcn45J2v4767/Jy84Rdp3l4n67xGgtspQn+mfjrBGx/Oxm6iSSuGXrcDVq3cHErRxmkCZXNIezmOj8AVaid65OYEwzOoaCoT+g5K85eikLarXpptwRrDs+YhUCH82GHbrAcGSK9pJYD8TBX9xatxKVUN6JmfdutWrkoTKT2fRmeXWiC/bG8P/6SCuIGnERWYMs68e8ZRo0UNV1Dbl/2fkyEtghWMFhEQ2OnOPccepYpqy9ThEZtiuFONa7FZOEIe1uL7/AKdUEXouV4ZfezFzEiZpwouDAGGR4P8k7W9LT5HLuP/HaK5AiSXMv6VYRSg4rajxqoOH5GgZuD0sABZ7s4j76LbWamRCXcOmkaybX4N3X1JB0qrKVVhz6DRylDvqr84aQXykPNeJPh5gML6a2eve2G/4N1KC8jq2l0SISKxl9Ri/8vB7oaS2X1TsbirQh5INNQQqJ0sKZOmXcUEhuteBfasVgvH9UIsf0n35lyJ1w0t6fUXWuFx/mQxHT7zOkgRVV5SDgaLbEQlrQLp77eN6Fuxr5hH1HllYlsliyqtn0dUjZFq8UeDHNqVaFRZSFfpBhjga+LdOAVjUnbuzM11yQzNU448fD/UEJAtoDR9l4KBRd5z0zlwgfRwX+0bq3deO2vHu8qnCMiIZbQBCfoVLgdCZm0R/0RM1Pn8/xO5wJduw1HkGYm+8Vse7KeIfXeIRGiTRjgoX0wp5h50w7L/OVeEZ9oju55CdqJShQWlLSjQAzvk+F29z/pXQomKPuSvzrf5CuLb5xBi2qkc2JmtcWQR+mj6YI+tduy3iUAPYDiVDNzxOWi4is1neavWGc2WKK4eh9K9uzep/z5puQd3tuZDKeJk2J2jjYrNDaKpYE4Z1b feEh44ye AwunEsSdbx5vfK3CfgXtc+kGFvzbyqUX+LMxRk7urNYt+Zec2x8eHKYYZQTi3WVHVvfSMGXFHoHo7f709s1KuTmyZ/EyeX6me/JSTLjERqrX5XztpOiZUi7Qaxvuw8NUubfOotyc6mL11ATMIhLn8HXb7fwgozGzVe/ElJ56S83N5F+szVkxdqOHsd7iwnBs8W0bggn3H/sdzTXXAIRm5Z33PMnl3ZX/iLzyQkobfRPgrpKmXuU7wyNAqtzeB8yAoORiwzxg15r57/T1NAjLtT26rhA== 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: Functions which walk the stack read parts of the stack which cannot be instrumented by KMSAN e.g. the backchain. Disable KMSAN sanitization of these functions to prevent false positives. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/kernel/process.c | 6 +++--- arch/powerpc/kernel/stacktrace.c | 10 ++++++---- arch/powerpc/perf/callchain.c | 2 +- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c index 392404688cec..3dc88143c3b2 100644 --- a/arch/powerpc/kernel/process.c +++ b/arch/powerpc/kernel/process.c @@ -2276,9 +2276,9 @@ static bool empty_user_regs(struct pt_regs *regs, struct task_struct *tsk) static int kstack_depth_to_print = CONFIG_PRINT_STACK_DEPTH; -void __no_sanitize_address show_stack(struct task_struct *tsk, - unsigned long *stack, - const char *loglvl) +void __no_sanitize_address __no_kmsan_checks show_stack(struct task_struct *tsk, + unsigned long *stack, + const char *loglvl) { unsigned long sp, ip, lr, newsp; int count = 0; diff --git a/arch/powerpc/kernel/stacktrace.c b/arch/powerpc/kernel/stacktrace.c index e6a958a5da27..369b8b2a1bcd 100644 --- a/arch/powerpc/kernel/stacktrace.c +++ b/arch/powerpc/kernel/stacktrace.c @@ -24,8 +24,9 @@ #include -void __no_sanitize_address arch_stack_walk(stack_trace_consume_fn consume_entry, void *cookie, - struct task_struct *task, struct pt_regs *regs) +void __no_sanitize_address __no_kmsan_checks + arch_stack_walk(stack_trace_consume_fn consume_entry, void *cookie, + struct task_struct *task, struct pt_regs *regs) { unsigned long sp; @@ -62,8 +63,9 @@ void __no_sanitize_address arch_stack_walk(stack_trace_consume_fn consume_entry, * * If the task is not 'current', the caller *must* ensure the task is inactive. */ -int __no_sanitize_address arch_stack_walk_reliable(stack_trace_consume_fn consume_entry, - void *cookie, struct task_struct *task) +int __no_sanitize_address __no_kmsan_checks + arch_stack_walk_reliable(stack_trace_consume_fn consume_entry, void *cookie, + struct task_struct *task) { unsigned long sp; unsigned long newsp; diff --git a/arch/powerpc/perf/callchain.c b/arch/powerpc/perf/callchain.c index 6b4434dd0ff3..c7610b38e9b8 100644 --- a/arch/powerpc/perf/callchain.c +++ b/arch/powerpc/perf/callchain.c @@ -40,7 +40,7 @@ static int valid_next_sp(unsigned long sp, unsigned long prev_sp) return 0; } -void __no_sanitize_address +void __no_sanitize_address __no_kmsan_checks perf_callchain_kernel(struct perf_callchain_entry_ctx *entry, struct pt_regs *regs) { unsigned long sp, next_sp; From patchwork Thu Dec 14 05:55:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492285 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 3ADBAC4167B for ; Thu, 14 Dec 2023 05:56:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8CFF86B0472; Thu, 14 Dec 2023 00:56:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7D1076B0551; Thu, 14 Dec 2023 00:56:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3DC646B0473; Thu, 14 Dec 2023 00:56:50 -0500 (EST) 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 077C66B0471 for ; Thu, 14 Dec 2023 00:56:50 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id C981F40492 for ; Thu, 14 Dec 2023 05:56:49 +0000 (UTC) X-FDA: 81564364938.07.871B433 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf08.hostedemail.com (Postfix) with ESMTP id 8D20D160006 for ; Thu, 14 Dec 2023 05:56:47 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=jPBCCJIq; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf08.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533407; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Or+ER3iSwLY+2GcnBysJHFAbWg54QnxrivHZZRWSUlo=; b=kehc7yH3N1AXUj0oZBJQ+zZBdVBt/+aVj6/halXFtSgG4w06EcFyipCRNuu3sggo1h+kHd ksUeDStle8voslk/80u7lQkKbKFmQNV8VcA0ztdufU5dMlyJusyYOz768STSFth7s5KRd/ TDnox5CntPs+Cj7IXDXLPmDdWGaVUhM= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=jPBCCJIq; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf08.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533407; a=rsa-sha256; cv=none; b=TmkxMMsxNq65K7mMHfGxFSg27KprLLCXJKAOYiUChth/NlNZbtRisi29TYW06kLJEnuvTO yUum51rmWbeRzWj08NVxeSg0HQwsBEpH5EHpV3mM7G7Cmnq200dSgwH0DMHAp2dfiu0uxg Kb5QVpoTqr7RnTQaaoNhnKvm8cooNnk= Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE5bkhT003442; Thu, 14 Dec 2023 05:56:41 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=Or+ER3iSwLY+2GcnBysJHFAbWg54QnxrivHZZRWSUlo=; b=jPBCCJIq3GKGrIuMP1yn436SePKJpby26k22ilj2Zem4QVli3eQCXD+/wL1bjAOD1iuJ /FZtdWsm7ipjuytRcepQOR1cQXIRTw3R6XshoDZQbbrMErpEkwAwJybCndj1K544Yg25 hq1zYmXU2FZ70rTaisY9r79SKKj32xliME3keJfd4RILx2JlFn6DWkOnvsx4oqAnlI3Z FLh87rcb7Y5C9OUm5eFP+TfQRbo+BTby94YosokRO49Hij6k/J8r461vUgCrpGWYxL/9 rIyYoy6VBsqO1l7ojZyS8F+AiRjyaA6xdhYF+9W+WdGUwSwls8UJ4ltppIgHzDPjmNV9 1A== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyuqp0av5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:40 +0000 Received: from m0353725.ppops.net (m0353725.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5rRSq022695; Thu, 14 Dec 2023 05:56:39 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyuqp0asc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:39 +0000 Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE3jVip008467; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw2jtpnfx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav06.fra02v.mail.ibm.com (smtpav06.fra02v.mail.ibm.com [10.20.54.105]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uO5O46727664 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:25 GMT Received: from smtpav06.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D30272004D; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav06.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E42AE20040; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav06.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id 98F37606F0; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 10/13] powerpc: Define KMSAN metadata address ranges for vmalloc and ioremap Date: Thu, 14 Dec 2023 05:55:36 +0000 Message-Id: <20231214055539.9420-11-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: BSRtrog9VNVw4H1y8EPLE2_PMzM43F4_ X-Proofpoint-GUID: z-dPmrvTGG-i94A2fIfwubmwfRHh6Qb7 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 adultscore=0 mlxlogscore=999 impostorscore=0 phishscore=0 priorityscore=1501 mlxscore=0 lowpriorityscore=0 spamscore=0 suspectscore=0 bulkscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Rspamd-Queue-Id: 8D20D160006 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: zdkhypuppy1ky4ooqn4mk3q5hqorzf5h X-HE-Tag: 1702533407-316136 X-HE-Meta: U2FsdGVkX1/4AGRgST8gKvpdqlB+KdOsHaFAYb91gpPB05Y7EsqoIN+PrhdqvnNUHFe3nQuXOibDIMOPfEJFI7UJzn/wHyOLFxwH71dULBvT/IC/kuMz4r3kFFZ1YBzh2V+BfJjSvb6FLMSoFIED2TZzDAn/BlkjmcqBzb0MnbPNDU1LAn5+xabV6uT4kvnd7TwVi1Xzd6pqG0h5BBJDLtvnUSRLkDK+gshl6OPj2hGdKNfK+9KPjspT+L0Bj0ofrD3+xKU3kT8DSJalD0u7VGngDdSiMLViSgywANDib5SCEsmrPbOOfjmns7jlIYFKhWjQuOoKur3YFFFrFltumF4DBH9n5uGl4aMuO/5P1AYgzN1F/8hM6f9XA0yTHVg9E0NoVSZ4s9LRa+7rXNQDH/dlV8UFhkOgxJG3RhfbRo9/sJ0m0sRs4fqlWxDnsRxb/YAPxYNI6Vov3oB/rj1iYH5ILPG3cmnJpOChxk/8Lut0n0P0vmrsEr+qf+TcKycdfWvEz+eNY1iu9pRRwJGXMbnJFN/x28CGq4aEYE4W7/G5b53spvieuTxyw2TLFrJVDEoLhoi7IFhrcO/ulcEAgSNYtA5lni1ndpU5Sz+jYfO622pzu3Oh8V7liMjWqDmgjOdQ2mxa9NxkJaAfkf5r9qDHTE6DJWJ8StQxVm0uchJp3Z66CuDxY2/gQi5XYRluy3Py1vmAdUzJUFUzXY1gZuz75ui3LZ2uWWd9hA2cn5EAnaTKuAYmURmRJWiUHZKy24IxEGvv7Fg/1YQZGxNi8d7PhXC9qHyLujCMTg3khEMtC5utMkH9AjuVdXrXDmV9wpPiOx4PcMBjGIrO1jnQ9QmZAb6OSlk53lsBDFUwObu1O0X2Mf3ny8K5l4HoPq23HhJT3jWQl+zKkLS9s/ACtF8s9Yp8QyR8SofoLPXIhOZo4uZSaPjC5yDR8hZV7tzeyOsZKekHqXOs5nFJgNG NadxURuw ElXeAMJdhMchGvoCERIJgPiFU9VTxuWGRc+qFCvyLrhBgVyqbFRnjF3G87DrEScXBsHYDGMVPHMqte7bOZ4tsvNfCQ96gHvGUQAzMOEEcrmLHi508o2l4KMs9Neetgd+MugiB81c1UvAUQBgiXYDkHHCxjadxQLI4rEBjxlEWKrI4YSQltBwcVXg0MidhtQYUZpMoPwG2s7lnoCo0Ai3y8LmED/il/t1f1T+BJ3E1A3RzvtuHCyHGwWFMGi8TzYHcZzKSxaR9DN+CvcixML21EftxOw== 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: Splits the vmalloc region into four. The first quarter is the new vmalloc region, the second is used to store shadow metadata and the third is used to store origin metadata. The fourth quarter is unused. Do the same for the ioremap region. Module data is stored in the vmalloc region so alias the modules metadata addresses to the respective vmalloc metadata addresses. Define MODULES_VADDR and MODULES_END to the start and end of the vmalloc region. Since MODULES_VADDR was previously only defined on ppc32 targets checks for if this macro is defined need to be updated to include defined(CONFIG_PPC32). Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/include/asm/book3s/64/pgtable.h | 42 ++++++++++++++++++++ arch/powerpc/kernel/module.c | 2 +- 2 files changed, 43 insertions(+), 1 deletion(-) diff --git a/arch/powerpc/include/asm/book3s/64/pgtable.h b/arch/powerpc/include/asm/book3s/64/pgtable.h index cb77eddca54b..b3a02b8d96e3 100644 --- a/arch/powerpc/include/asm/book3s/64/pgtable.h +++ b/arch/powerpc/include/asm/book3s/64/pgtable.h @@ -249,7 +249,38 @@ enum pgtable_index { extern unsigned long __vmalloc_start; extern unsigned long __vmalloc_end; #define VMALLOC_START __vmalloc_start + +#ifndef CONFIG_KMSAN #define VMALLOC_END __vmalloc_end +#else +/* + * In KMSAN builds vmalloc area is four times smaller, and the remaining 3/4 + * are used to keep the metadata for virtual pages. The memory formerly + * belonging to vmalloc area is now laid out as follows: + * + * 1st quarter: VMALLOC_START to VMALLOC_END - new vmalloc area + * 2nd quarter: KMSAN_VMALLOC_SHADOW_START to + * KMSAN_VMALLOC_SHADOW_START+VMALLOC_LEN - vmalloc area shadow + * 3rd quarter: KMSAN_VMALLOC_ORIGIN_START to + * KMSAN_VMALLOC_ORIGIN_START+VMALLOC_LEN - vmalloc area origins + * 4th quarter: unused + */ +#define VMALLOC_LEN ((__vmalloc_end - __vmalloc_start) >> 2) +#define VMALLOC_END (VMALLOC_START + VMALLOC_LEN) + +#define KMSAN_VMALLOC_SHADOW_START VMALLOC_END +#define KMSAN_VMALLOC_ORIGIN_START (VMALLOC_END + VMALLOC_LEN) + +/* + * Module metadata is stored in the corresponding vmalloc metadata regions + */ +#define KMSAN_MODULES_SHADOW_START KMSAN_VMALLOC_SHADOW_START +#define KMSAN_MODULES_ORIGIN_START KMSAN_VMALLOC_ORIGIN_START +#endif /* CONFIG_KMSAN */ + +#define MODULES_VADDR VMALLOC_START +#define MODULES_END VMALLOC_END +#define MODULES_LEN (MODULES_END - MODULES_VADDR) static inline unsigned int ioremap_max_order(void) { @@ -264,7 +295,18 @@ extern unsigned long __kernel_io_start; extern unsigned long __kernel_io_end; #define KERN_VIRT_START __kernel_virt_start #define KERN_IO_START __kernel_io_start +#ifndef CONFIG_KMSAN #define KERN_IO_END __kernel_io_end +#else +/* + * In KMSAN builds IO space is 4 times smaller, the remaining space is used to + * store metadata. See comment for vmalloc regions above. + */ +#define KERN_IO_LEN ((__kernel_io_end - __kernel_io_start) >> 2) +#define KERN_IO_END (KERN_IO_START + KERN_IO_LEN) +#define KERN_IO_SHADOW_START KERN_IO_END +#define KERN_IO_ORIGIN_START (KERN_IO_SHADOW_START + KERN_IO_LEN) +#endif /* !CONFIG_KMSAN */ extern struct page *vmemmap; extern unsigned long pci_io_base; diff --git a/arch/powerpc/kernel/module.c b/arch/powerpc/kernel/module.c index f6d6ae0a1692..5043b959ad4d 100644 --- a/arch/powerpc/kernel/module.c +++ b/arch/powerpc/kernel/module.c @@ -107,7 +107,7 @@ __module_alloc(unsigned long size, unsigned long start, unsigned long end, bool void *module_alloc(unsigned long size) { -#ifdef MODULES_VADDR +#if defined(MODULES_VADDR) && defined(CONFIG_PPC32) unsigned long limit = (unsigned long)_etext - SZ_32M; void *ptr = NULL; From patchwork Thu Dec 14 05:55:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492284 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 D43D0C4167B for ; Thu, 14 Dec 2023 05:56:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 64F046B0471; Thu, 14 Dec 2023 00:56:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 55C466B0472; Thu, 14 Dec 2023 00:56:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2EBC36B0474; Thu, 14 Dec 2023 00:56:50 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 104306B0472 for ; Thu, 14 Dec 2023 00:56:50 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id DAA96A0278 for ; Thu, 14 Dec 2023 05:56:49 +0000 (UTC) X-FDA: 81564364938.06.280CDCA Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf16.hostedemail.com (Postfix) with ESMTP id 960E718000B for ; Thu, 14 Dec 2023 05:56:47 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=UYZPDBuP; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf16.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533407; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=d9wxIuPcEttKuooqpbXdsw1bqv2JtLrtXjyZWOljfa8=; b=qkKmlY2jlUNh7jVULYj1qPes6Q8thqRQAhWeSTXmHEA5gCzH2jpbrDAm9ToJRA4MYxwnqF eejC5FUFY+WKEqcco5J45LMKtsm3u29VamIHqzJhdzlFjYBVs6nl6N5llPDtP43WdDRefm wwXSCDvSEaB2LELr/SkZ6pMO3Ix1oDE= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=UYZPDBuP; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf16.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533407; a=rsa-sha256; cv=none; b=zNB2K8PXXVqaUe9g6aiRa40JwwNluuayOJ5zgBXUHN5i9vuH+YmBqkjCbAth0dn1THa3ub URjOfRZMYqUyHt3W6Fl9Izre8U0YWbZceVMuCIOGFh/4l9340n6+frgXn7dFxFKRvJFw8R 2YFnmSnpBSsyvP/AvMejzuiY9O0hNrg= Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE5Pf2V006428; Thu, 14 Dec 2023 05:56:40 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=d9wxIuPcEttKuooqpbXdsw1bqv2JtLrtXjyZWOljfa8=; b=UYZPDBuPEsYnBXNn9bIcsLbwH9nOgpX0ngFzMXGcNxOmSNwml9oUQFPdlpZsWmRopKZZ G/HiC/7DbSwP8wNuU2eve9evV+t9dkJfA4VIbh+Lm/xmETSgRJZHB9sFis/DCvt8sTpN cAFK5uIz5SrkOkF/p+zh6fUc/QXCDsNehRsi7U9HRnocEyRNLXjFy2gtzaUs1rt8bjxT NCmjnrF3OUJBQC1rLP5GoVw0wDxTMpd5ir4G2PaBve72fkUln0TJ36eS83hRaUqqBh5P Q49xA+VkZv+hhUGLQ2sTqIh4ok1VL9WeeyZD2XArCo7WwrceaPZUBeVv6xltj9ijdBgd oQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyp5cq854-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:39 +0000 Received: from m0360072.ppops.net (m0360072.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5oHZS007026; Thu, 14 Dec 2023 05:56:39 GMT Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyp5cq82r-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:39 +0000 Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE0fBUg014872; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kggr5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uON922151734 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 1B8AC20040; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A9AF020043; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id A020D606F4; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 11/13] powerpc: Implement architecture specific KMSAN interface Date: Thu, 14 Dec 2023 05:55:37 +0000 Message-Id: <20231214055539.9420-12-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: jSCLRD5AL1ZRUh81WentUJPts7nYAd0_ X-Proofpoint-GUID: SH2cEt_NsXZHfXK7AkjEQ-6Tk95O45Ww X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 mlxscore=0 spamscore=0 malwarescore=0 mlxlogscore=751 bulkscore=0 suspectscore=0 phishscore=0 priorityscore=1501 adultscore=0 lowpriorityscore=0 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 960E718000B X-Stat-Signature: gzssnghn95cuycf7cnqqiuusprhi7mbs X-HE-Tag: 1702533407-488548 X-HE-Meta: U2FsdGVkX1/f7Nl7PU/faga5r79KwRFfuIt2aXflMYde8WFk3aMuDnn6HgtWubInVUgQq7AXeyWo/ilT2Hrn1e8FYi+5XC6lvWXtt9q4qou8Obx9Y/um1sHpobDkaE8YWGBDoy9JAPrq+iudeoMKuy9eJdGHnkWRggCaTMnOcwfnz/UepMN3hYJZDQYcM1+l5bJsWpAp9Dx55d/4Kyj5536Ez0bsX3SdAmkdNytpNODGVXRfqSCLT4N3CPvDrgvXqbNGAduw1m3UX+lHcHqFtzfYwld6u0JGtSWvIHEXFXpwo/czygkOBGvbO89hxAgNuplaMDwTrJkv8/y05pMzWkdsvf75tPrSNPddKUg52jmdEqNv3VQSkosZKAdXGzXIYlAzfRLR8t6f3EqPc6/V9TfdwfrXHJH9+FvtOJey1NJ+E4saxuLWJ9fg9C1W2TLHh99ewzJeO+MRFgpeir5SxSsBGkP4Eyc82uOeGQe0/W1WdNtjOWfZhXWh652YRFBFxb+9RgYMxRawvBBwmCOtfASiybi5cNauuD2uQhLH5rB+VDR698uG59s8mLEQUQgDt/eq+QkOXP2BTGdl4CJwa1yItUivl3q7wTLW4GI7QNwIjbO9KVySOnacilZNqVmQTuFa1C9uVzwVY/QPjLqgSmy/SlvKNRyqBYHFJg0JFPfX01hSXmxO5beN3OopxJ7+XfwT/whFBW8P6NJdQWbwB6QxfYVkIpXFareiVs1GP4tusSMpSTvv3RRaugJGID1oURCIQiIWmaajVKN7PCKapIr3kCnHQoljPlrzw+AsVhtFh7ibEqch+yYUe9KDgqHk1aLDHIgjwZoTXM8dldpK/d8JM7oAgTSx53TAgtRveXsfD0lCMBLd3fk/3GJpmNFtgJ8UrDjrxzdcX2/OsI71pfUjB9RnpQn3SO3rACNzsayvihOh0rENzzbXgwoA19UBNk5B85HCz74AMAVvZJD NXM00KKw jcGibKCPfqx3Uz5nwO82A0JQmD3tvmyw6sCmnG+oRLTlBmiAWvmx3TOHbKdBd84yEah8PbJQ61Gtr7v/rXcVx2UpZtfH2EtD2PMNUSW/wHWDlqq+a8CMVdk2wvSVBUWKOo+HxfdlnkaOX3p6gH029GWHvTwCLb1IcuYD1Fja1v/2MOYArDlDkjj9icw== 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: arch_kmsan_get_meta_or_null finds the metadata addresses for addresses in the ioremap region which is mapped separately on powerpc. kmsan_vir_addr_valid is the same as virt_addr_valid except excludes the check that addr is less than high_memory since this function can be called on addresses higher than this. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/include/asm/kmsan.h | 44 ++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 arch/powerpc/include/asm/kmsan.h diff --git a/arch/powerpc/include/asm/kmsan.h b/arch/powerpc/include/asm/kmsan.h new file mode 100644 index 000000000000..bc84f6ff2ee9 --- /dev/null +++ b/arch/powerpc/include/asm/kmsan.h @@ -0,0 +1,44 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * powerpc KMSAN support. + * + */ + +#ifndef _ASM_POWERPC_KMSAN_H +#define _ASM_POWERPC_KMSAN_H + +#ifndef __ASSEMBLY__ +#ifndef MODULE + +#include +#include +#include + +/* + * Functions below are declared in the header to make sure they are inlined. + * They all are called from kmsan_get_metadata() for every memory access in + * the kernel, so speed is important here. + */ + +/* + * No powerpc specific metadata locations + */ +static inline void *arch_kmsan_get_meta_or_null(void *addr, bool is_origin) +{ + unsigned long addr64 = (unsigned long)addr, off; + if (KERN_IO_START <= addr64 && addr64 < KERN_IO_END) { + off = addr64 - KERN_IO_START; + return (void *)off + (is_origin ? KERN_IO_ORIGIN_START : KERN_IO_SHADOW_START); + } else { + return 0; + } +} + +static inline bool kmsan_virt_addr_valid(void *addr) +{ + return (unsigned long)addr >= PAGE_OFFSET && pfn_valid(virt_to_pfn(addr)); +} + +#endif /* !MODULE */ +#endif /* !__ASSEMBLY__ */ +#endif /* _ASM_POWERPC_KMSAN_H */ From patchwork Thu Dec 14 05:55:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492283 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 F3C48C4332F for ; Thu, 14 Dec 2023 05:56:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4261B6B0252; Thu, 14 Dec 2023 00:56:43 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 27BA56B024A; Thu, 14 Dec 2023 00:56:43 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E62626B0202; Thu, 14 Dec 2023 00:56:42 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id C86B66B01A9 for ; Thu, 14 Dec 2023 00:56:42 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id A0144140417 for ; Thu, 14 Dec 2023 05:56:42 +0000 (UTC) X-FDA: 81564364644.05.DB9B8B2 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf06.hostedemail.com (Postfix) with ESMTP id 4B5DA180019 for ; Thu, 14 Dec 2023 05:56:40 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=r2biZhd7; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf06.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533400; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ovh2+Yrkn7RejFOEC//qHuFziQE6QAg7xqk0h8rVmGI=; b=fwkmS3OWjzNh28qSCVIFjl5zdWH4zJ/Y0/eSGJ3txzlx3G5NW8mlFj4H124IpcnPSJavSK gr5YifRb6wXnm+RHo9hmnnDarLhla/joci5nzVVnauH7G8ff5SzUAcpkMpbUQhftQmSHel e0qY81Mxj0OCiUsR77i0rnM8aVcrmN8= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=r2biZhd7; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf06.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533400; a=rsa-sha256; cv=none; b=1FYlrNe+NkdmFue2QQ43+USlUJHd5RYBQmryiqb6sL+Y/3jU0FpbZ9gQrMSkvVU+PQpGY7 qzaO7gcS+4IgDJ5rsLi391y2CTPr8nqQMmuDTPSb3GXNf+v/Ws1hT2FH0bPekdO4q8MBVt IdWteBbjlVJdWLull9mDczu7ZSl/GIo= Received: from pps.filterd (m0360083.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE3j4SP012290; Thu, 14 Dec 2023 05:56:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=ovh2+Yrkn7RejFOEC//qHuFziQE6QAg7xqk0h8rVmGI=; b=r2biZhd7TGcoAOibOg/73AqtBA+KKbfug6reSpANz3hXkY1iqH5o1gg6Z8GOXPIXVRQ6 U20TaBxWJntRbZXJ6lPjPPxbnGgIrcae8NvCjc7wxK12J0h1hWzpBneHofSex4iX6Uqh 3Zj05n6UIopnju1yvMKwU/dCPTHXCO57pWPM1hM2/fIO2J4akDzcIROvDGF29AG8aQ4N uyFcqBzfXrbYefCkz7kaUMPcrzMLTMa5gNpU8m4lWk3ck+aN2VGdE558dbtiKPIzR+wD 0yMC7ZFXVV+1MDlc+h64snO4u+ek7f4eOhV/+a9Q3zqYNS0MAEGp3SJuKT7xT7/SBOUK ew== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypr2xbm0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:31 +0000 Received: from m0360083.ppops.net (m0360083.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5Q8Xa019113; Thu, 14 Dec 2023 05:56:31 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypr2xbjx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:31 +0000 Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE3ZZKd012593; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp6eg1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav07.fra02v.mail.ibm.com (smtpav07.fra02v.mail.ibm.com [10.20.54.106]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uOHO22151740 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A9AF920043; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav07.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id CAA982004B; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav07.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id A6B3F6070D; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 12/13] powerpc/string: Add KMSAN support Date: Thu, 14 Dec 2023 05:55:38 +0000 Message-Id: <20231214055539.9420-13-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: 3BssezVAxDdviUPaDOyqZR4dSdHksbIi X-Proofpoint-GUID: 8uj1JSwoXAIg2-3RyoUW_4goY-hONVyB X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 spamscore=0 mlxlogscore=999 lowpriorityscore=0 suspectscore=0 priorityscore=1501 mlxscore=0 phishscore=0 clxscore=1015 bulkscore=0 adultscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Rspam-User: X-Stat-Signature: 4m6woypmq4ec4jutsrpjjs9htkqec41o X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 4B5DA180019 X-HE-Tag: 1702533400-550633 X-HE-Meta: U2FsdGVkX183C5IxuzJvlP3k0hXSvRQyx4GLUswjDB7tHFdep2+QSja7vNSIHMhefsouGTtXsTTUXyDy5dxGhqSAobMyTeLPFnswbuA6tqdz1w18oN47YLf+pkviE83Heg4oaDtF5qQ9Av9qp5wdLnkvdjAlHp1iY8rZ2T9+KSG9J2ALn/JfFpehAOc2YOZaFA0TAkTuorvOp4N1CPvKG+5zBN2fpB+H0UPAP3ZHXv8JBisP006eeP8CnVBCDoIAuHVLm0HO8eJ9M6wJhhoivAovBIDMRp09Xd9POlRQ2m7kGiwACQ7fVf7HARk1qwmzOqAL/lT2munwHuSIIaUwM6Lak7gwtkW/ANS9Y0FHHXZ6J3BJOCRgzk7AmvXJ0DItjmTcwTQr7EmpCH9b0Gga2rQYbYZ7RfOtY9NC97iNHgDQkCAI0COocJKFmhxBpoSotbVNP6gf/qsi58uj0OxBaN2SL0v4DEV+4mE8wa/DWrx4QGDjH1YtEFqVmWsRDqNScbpuBe65AxNe6V/vS+U0Qpkql1IWPJc4QFrUmK3fWq5qypjvH8B2hDZ8wNzHr3xK/y3qBMb4qC0aM9HDitGs0vmWdKUnusg3Wt4OIqjZNvANKpy9p1YrELN1OAtWmrQxVsa/9x0QGmb5GeJocEDwtZN+zP0PIJ33LEtY0ZCwiX/+VDra8+7YfAtCr6C4hiJWDnmWH/Fp+QrbTInPIEgcYe4HqGow61P6Va/yx1ZSwQa2eBYUiMK/FWzU4fzrY/bY1bLI8YPfTFZPTAsqitJJ4YtnYguRAW2SEgCn5C3OlawpUARKR9dv/R3EkWyCsiJix2/u50j9DfF2gqy+qmf8ZTcFZRRJjGrP1DwQpF6Bdb9B5QLyt/mI2xdsdT9pR/Ih2i8Fsb83sePnOXiECjp3Lgdiv5gBf4QWpDOIf6MmMAcmU3ba9kyAr7TOqHXgO8fOKs1wNe6JBk9zAdT40Sw M1l1JSqK rHNYNabSDayvSs2ZIvMdZk1GLdr+Lcwmtkh1QBIGsd+7BhBUWvUGDPP8nG+/bRO7UU1M6cf73iXgnZOO/wVnBFaqLvJFlwAvXEcr6lwyhA8wu1ZVwS4t91W6J4ZZtliHUln2nMk2XM7QfS9muV7O5UFgvuvH3x+J7E5Iz5I4sHHOAzIPhvO3oAgSbdlf5uKCq1zafWRr4Ed9EWTx1PUw19+AFsOM0pAEu/E7Y 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: KMSAN expects functions __mem{set,cpy,move} so add aliases pointing to the respective functions. Disable use of architecture specific memset{16,32,64} to ensure that metadata is correctly updated and strn{cpy,cmp} and mem{chr,cmp} which are implemented in assembly and therefore cannot be instrumented to propagate/check metadata. Alias calls to mem{set,cpy,move} to __msan_mem{set,cpy,move} in instrumented code to correctly propagate metadata. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/include/asm/kmsan.h | 7 +++++++ arch/powerpc/include/asm/string.h | 18 ++++++++++++++++-- arch/powerpc/lib/Makefile | 2 ++ arch/powerpc/lib/mem_64.S | 5 ++++- arch/powerpc/lib/memcpy_64.S | 2 ++ .../selftests/powerpc/copyloops/asm/kmsan.h | 0 .../selftests/powerpc/copyloops/linux/export.h | 1 + 7 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 tools/testing/selftests/powerpc/copyloops/asm/kmsan.h diff --git a/arch/powerpc/include/asm/kmsan.h b/arch/powerpc/include/asm/kmsan.h index bc84f6ff2ee9..fc59dc24e170 100644 --- a/arch/powerpc/include/asm/kmsan.h +++ b/arch/powerpc/include/asm/kmsan.h @@ -7,6 +7,13 @@ #ifndef _ASM_POWERPC_KMSAN_H #define _ASM_POWERPC_KMSAN_H +#ifdef CONFIG_KMSAN +#define EXPORT_SYMBOL_KMSAN(fn) SYM_FUNC_ALIAS(__##fn, fn) \ + EXPORT_SYMBOL(__##fn) +#else +#define EXPORT_SYMBOL_KMSAN(fn) +#endif + #ifndef __ASSEMBLY__ #ifndef MODULE diff --git a/arch/powerpc/include/asm/string.h b/arch/powerpc/include/asm/string.h index 60ba22770f51..412626ce619b 100644 --- a/arch/powerpc/include/asm/string.h +++ b/arch/powerpc/include/asm/string.h @@ -4,7 +4,7 @@ #ifdef __KERNEL__ -#ifndef CONFIG_KASAN +#if !defined(CONFIG_KASAN) && !defined(CONFIG_KMSAN) #define __HAVE_ARCH_STRNCPY #define __HAVE_ARCH_STRNCMP #define __HAVE_ARCH_MEMCHR @@ -56,8 +56,22 @@ void *__memmove(void *to, const void *from, __kernel_size_t n); #endif /* CONFIG_CC_HAS_KASAN_MEMINTRINSIC_PREFIX */ #endif /* CONFIG_KASAN */ +#ifdef CONFIG_KMSAN + +void *__memset(void *s, int c, __kernel_size_t count); +void *__memcpy(void *to, const void *from, __kernel_size_t n); +void *__memmove(void *to, const void *from, __kernel_size_t n); + +#ifdef __SANITIZE_MEMORY__ +#include +#define memset __msan_memset +#define memcpy __msan_memcpy +#define memmove __msan_memmove +#endif +#endif /* CONFIG_KMSAN */ + #ifdef CONFIG_PPC64 -#ifndef CONFIG_KASAN +#if !defined(CONFIG_KASAN) && !defined(CONFIG_KMSAN) #define __HAVE_ARCH_MEMSET32 #define __HAVE_ARCH_MEMSET64 diff --git a/arch/powerpc/lib/Makefile b/arch/powerpc/lib/Makefile index 51ad0397c17a..fc3ea3eebbd6 100644 --- a/arch/powerpc/lib/Makefile +++ b/arch/powerpc/lib/Makefile @@ -32,9 +32,11 @@ obj-y += code-patching.o feature-fixups.o pmem.o obj-$(CONFIG_CODE_PATCHING_SELFTEST) += test-code-patching.o ifndef CONFIG_KASAN +ifndef CONFIG_KMSAN obj-y += string.o memcmp_$(BITS).o obj-$(CONFIG_PPC32) += strlen_32.o endif +endif obj-$(CONFIG_PPC32) += div64.o copy_32.o crtsavres.o diff --git a/arch/powerpc/lib/mem_64.S b/arch/powerpc/lib/mem_64.S index 6fd06cd20faa..a55f2fac49b3 100644 --- a/arch/powerpc/lib/mem_64.S +++ b/arch/powerpc/lib/mem_64.S @@ -9,8 +9,9 @@ #include #include #include +#include -#ifndef CONFIG_KASAN +#if !defined(CONFIG_KASAN) && !defined(CONFIG_KMSAN) _GLOBAL(__memset16) rlwimi r4,r4,16,0,15 /* fall through */ @@ -96,6 +97,7 @@ _GLOBAL_KASAN(memset) blr EXPORT_SYMBOL(memset) EXPORT_SYMBOL_KASAN(memset) +EXPORT_SYMBOL_KMSAN(memset) _GLOBAL_TOC_KASAN(memmove) cmplw 0,r3,r4 @@ -140,3 +142,4 @@ _GLOBAL(backwards_memcpy) b 1b EXPORT_SYMBOL(memmove) EXPORT_SYMBOL_KASAN(memmove) +EXPORT_SYMBOL_KMSAN(memmove) diff --git a/arch/powerpc/lib/memcpy_64.S b/arch/powerpc/lib/memcpy_64.S index b5a67e20143f..1657861618cc 100644 --- a/arch/powerpc/lib/memcpy_64.S +++ b/arch/powerpc/lib/memcpy_64.S @@ -8,6 +8,7 @@ #include #include #include +#include #ifndef SELFTEST_CASE /* For big-endian, 0 == most CPUs, 1 == POWER6, 2 == Cell */ @@ -228,3 +229,4 @@ END_FTR_SECTION_IFCLR(CPU_FTR_UNALIGNED_LD_STD) #endif EXPORT_SYMBOL(memcpy) EXPORT_SYMBOL_KASAN(memcpy) +EXPORT_SYMBOL_KMSAN(memcpy) diff --git a/tools/testing/selftests/powerpc/copyloops/asm/kmsan.h b/tools/testing/selftests/powerpc/copyloops/asm/kmsan.h new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/tools/testing/selftests/powerpc/copyloops/linux/export.h b/tools/testing/selftests/powerpc/copyloops/linux/export.h index e6b80d5fbd14..6379624bbf9b 100644 --- a/tools/testing/selftests/powerpc/copyloops/linux/export.h +++ b/tools/testing/selftests/powerpc/copyloops/linux/export.h @@ -2,3 +2,4 @@ #define EXPORT_SYMBOL(x) #define EXPORT_SYMBOL_GPL(x) #define EXPORT_SYMBOL_KASAN(x) +#define EXPORT_SYMBOL_KMSAN(x) From patchwork Thu Dec 14 05:55:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicholas Miehlbradt X-Patchwork-Id: 13492282 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 87F4CC4332F for ; Thu, 14 Dec 2023 05:56:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EF2EE8D0083; Thu, 14 Dec 2023 00:56:38 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E13328D009A; Thu, 14 Dec 2023 00:56:38 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B27138D0098; Thu, 14 Dec 2023 00:56:38 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 8250D8D0099 for ; Thu, 14 Dec 2023 00:56:38 -0500 (EST) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 5004E14041A for ; Thu, 14 Dec 2023 05:56:38 +0000 (UTC) X-FDA: 81564364476.24.D493D2E Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf13.hostedemail.com (Postfix) with ESMTP id E34382000E for ; Thu, 14 Dec 2023 05:56:35 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=SwdBGUd0; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf13.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702533396; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=GF2Xu/3fsj+Ht4rCs+VhFbW/wtiFglmqBDtbXn8HHOc=; b=gLd1axVwxgfoYWc+slkvqeXibz9VQCU24P0Gecx1vnVtwSlhTVIuw2fAD7kIqI1CLyvPS+ tLnjaR/zZsatllhPqwETSYFXm4Rr93cqhRHVun8Z3xeZFhdHyWGnUbgR7W6A8WYx1j5hNN bOQRylSWgThFfILsRU9PW9VBI9F1Xtk= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=SwdBGUd0; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf13.hostedemail.com: domain of nicholas@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=nicholas@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702533396; a=rsa-sha256; cv=none; b=IQI2JEDBkfeeIfqd3u93Nso1RH1xM7djrKIbWlapLhXttbGHJasnQWdt6YWzs7d8WvOwY0 7tLJLFMeaQtlKQ0usx8hPREay44wXuWao9iyaBJxqzB9tCNA0ioVye4T2DdznAF6ocyft9 fIQxR11hFM5u/DauQ+b1lwSMNivRKZg= Received: from pps.filterd (m0353728.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE5a4kW018124; Thu, 14 Dec 2023 05:56:28 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=GF2Xu/3fsj+Ht4rCs+VhFbW/wtiFglmqBDtbXn8HHOc=; b=SwdBGUd0uvbJSKWGaksD3vnMSOetrQY7KtJ47ZjnXunn1HBASC5lkcM9YZQeJwH9a9FJ v2Q6/EUVp3x+rN/3WOZBgDXo7j0uhE5Mtnurg/vo2aYUN/k6M1AzxQOAV7LnHrawv62m eGzXVNjF7No7hfX2ZGaznU97ygozPSXYd4S82o4Hwzxjy/IzRPRgV4hbOHATvugvJGGP X7/Gz434Zs4i+cprh2GUYfTf/IHSQqK2W4Gy0iBWOOZyyz6l9VUMjBWyewA4xYRyItdx jV+OnsNsYGnSdm9EYJmfe0w9WROnta0FZxsX5X+Na5e1EUyJFDRE/0SyGyE0+yqCNEog UQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypke6eue-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:27 +0000 Received: from m0353728.ppops.net (m0353728.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BE5ociZ021637; Thu, 14 Dec 2023 05:56:27 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypke6eu0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:27 +0000 Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 3BE54w49004701; Thu, 14 Dec 2023 05:56:26 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw4skp2pg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 05:56:26 +0000 Received: from smtpav05.fra02v.mail.ibm.com (smtpav05.fra02v.mail.ibm.com [10.20.54.104]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BE5uOmJ22151738 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 14 Dec 2023 05:56:24 GMT Received: from smtpav05.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 573E52004E; Thu, 14 Dec 2023 05:56:24 +0000 (GMT) Received: from smtpav05.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DB8CB20043; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav05.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 14 Dec 2023 05:56:23 +0000 (GMT) Received: from nicholasmvm.. (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id AE47B606E9; Thu, 14 Dec 2023 16:56:19 +1100 (AEDT) From: Nicholas Miehlbradt To: glider@google.com, elver@google.com, dvyukov@google.com, akpm@linux-foundation.org, mpe@ellerman.id.au, npiggin@gmail.com, christophe.leroy@csgroup.eu Cc: linux-mm@kvack.org, kasan-dev@googlegroups.com, iii@linux.ibm.com, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Nicholas Miehlbradt Subject: [PATCH 13/13] powerpc: Enable KMSAN on powerpc Date: Thu, 14 Dec 2023 05:55:39 +0000 Message-Id: <20231214055539.9420-14-nicholas@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231214055539.9420-1-nicholas@linux.ibm.com> References: <20231214055539.9420-1-nicholas@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 23zToPJjHl0GSX_OkbvlWS2lZi0gZcXD X-Proofpoint-ORIG-GUID: P3Ndr46Urugrxan-s5l-A1IaBDocsq28 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-14_02,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 adultscore=0 clxscore=1015 malwarescore=0 bulkscore=0 mlxlogscore=704 priorityscore=1501 suspectscore=0 phishscore=0 lowpriorityscore=0 impostorscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312140035 X-Rspamd-Queue-Id: E34382000E X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: jbp4mbs3pyksjo7pri9mboyjh8iw31xn X-HE-Tag: 1702533395-333873 X-HE-Meta: U2FsdGVkX18hpee9OiHJuSqSCl5mJPB6OV4Rwb7EzD3k/VatalkovtA5iWYA7B/3T5Avx+d5pG5lDwXbysPBy//mjnKbEADQJxQBMG2PfzNuZsKZEutd5RqK4ZpndJ8jET5hAvcdWD+BeNTtciLZzNHs/60VsoDXzbU1nwWz1XbbmPARjBWVBxzUONGdYSmBZqTndCFphwAms/SaXnvy7qqtGirs2UOlGFNXzEVmM1mq36fvRDTVaGEiyQkszNZKYGaj7DzTTwEE6lwCqG1g6BPl3kbFlerC7KWoWmZhef51OB9cKVjloyqlvOLT6o4IrktyqB1tTx2V6YJ7Po9gcpplgcXbqtSYdYwWBX9Q5b7DdN1ES6Z5b4mcPJ6DbI7GBRdm6wYjD/Ui7wIT+GCeI71ymjXkE5dShPYmRFXSlRx2vYGN2m6TXJQukPy/Bc3XURyrEzbnu8bmSUFB/sVkMpFbrQme6eN8RXfXuRu6QJ//6S6T2RjK8l2wQduCDbg8VyTx7CTaAqvfckk3BOsjQrJedHKP4b5trkW9gSeRCh5pkfmGjU1lbh13oaoCDMBbozLgzPagwnZR/bshTBdpUQRNW6VG3z2h1btfIHl7/eZxKlwmzSd3lyFTgke1LvAnfQN+tIbOsRYI+mfnwwqgSryaH2u7+/H133mSfK9nimXgU+sJQJ67ExeVPUeq2BVf678oiKk2kvtuRaBTVlfGSb7NWUcs3DM08hmG0FecghQf8qiZYsGgbr7ElXRsfpM/JAhnf5areMr+QUdNNuqaaDloiQi0edg3GSvEYrJp9gCq+tWkMLpmIZsaa//VpiBXMl6MfVLH24tFG1RlyguK3890RoQURkKQnE/cR2IKsw3BDAYM8MDBMfEvMcbYAUnXKyH9onPMTVPTX0zqO++cnh3pOeWjgPeiDt+z8YR15nl8dERkD7jAPvO8Y2OQ4L1t6cOge51KFUgigxjajkJ ZEfZ/uqF PC4wLp67AgxxYVlg9WQfKuqXa3Q0f4sd6zKgCDLFD+iXUAu4rqmUDnrziSnPlvp/SJ6QTh63LXoQA4IDbWi+Ey0DYRlLtCjyyMPyb+9vQ5jxKxASJE/ilPmEXql0iEf9y2kco09si2HDEGRyuFn1/pC1mMw3tu0XkbsJq2AulhNrPnBrvVMBvsRj/IQ3Irpe7e1PHN5kOpj5NW8Jwh54pwmKjr86OmKPG9QmDCNFTgawoQ7nTBgH9GdNngaFC75pQdW6e7+605feGcC+KxK+WwVMzxg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000904, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Enable KMSAN in the Kconfig. Signed-off-by: Nicholas Miehlbradt --- arch/powerpc/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index e33e3250c478..71cc7d2a0a72 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -217,6 +217,7 @@ config PPC select HAVE_ARCH_KASAN_VMALLOC if HAVE_ARCH_KASAN select HAVE_ARCH_KCSAN select HAVE_ARCH_KFENCE if ARCH_SUPPORTS_DEBUG_PAGEALLOC + select HAVE_ARCH_KMSAN if PPC64 select HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET select HAVE_ARCH_WITHIN_STACK_FRAMES select HAVE_ARCH_KGDB