From patchwork Wed Dec 13 23:24:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492067 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 F2D6DC4332F for ; Wed, 13 Dec 2023 23:37:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 67DAD8D0076; Wed, 13 Dec 2023 18:37:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 606268D0074; Wed, 13 Dec 2023 18:37:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 395038D0076; Wed, 13 Dec 2023 18:37:00 -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 1BC508D0074 for ; Wed, 13 Dec 2023 18:37:00 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id E6392140356 for ; Wed, 13 Dec 2023 23:36:59 +0000 (UTC) X-FDA: 81563407758.21.FD8BECF Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf28.hostedemail.com (Postfix) with ESMTP id 94CC8C0005 for ; Wed, 13 Dec 2023 23:36:57 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=FfpgmgNX; spf=pass (imf28.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510617; a=rsa-sha256; cv=none; b=xlLHJDJGwd7OE3gNlRPuMGopBtXe+dMsJIrruUfiZmeCWJu1Zf9MBSfe03IEK7PIB3Ih4k F3XA7PEadCCNnkBJyzBeqMmwZlGMtOiknsdflKikrT2XS513QBac8Ibb6M8WUrO5T1auxY MIAcNuWHPFP5phXOLysBodjRWkhD2k0= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=FfpgmgNX; spf=pass (imf28.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510617; 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=UxznJChHj/qk4O/4D3mha/igyOisfZ8+E1sbSyzHNyg=; b=f3VovMfPET4IUdtCTAQlFHdLhjDhTTcNDUGsHTvg0UH9JJnC1phN6einmEXGbDnSfA0OF7 IoBnmWZ9TqH4ncq3rABURMQGVc3mLghyjT6jw6h1X1r1JKbB/JVyQLAOUsr+cn/rwcoEEd Q+eSpJo1cTp1F6wCtsan7gizEIw+Cp4= 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 3BDMN7xQ008801; Wed, 13 Dec 2023 23:36:51 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=UxznJChHj/qk4O/4D3mha/igyOisfZ8+E1sbSyzHNyg=; b=FfpgmgNXwAK82ip/EFZvgNsTJUk0qLvzsyPSPkQE4GZaoCqRp8geZ4Bj6K811h8SL++n KOGbxHsOzXkY+kj4y8DDAanwUAr+AjrvH/9IFHwI6jKct1G5UMonQF7GTquhKaGXH+pN Hn9qACYe1eVNN5tUusSUcBYDiberxC5eTv9T67r59JOn0ByPl+cdhP+GC99Pkc5wGP/M 1qIbE67hQuhswGRtkG83GeQ4+LlgZGEh7q/1MX3+TpPiUWBZldsnBgUlcd6FiuSNMtXv pTTxXcc7Mcm4ZmCAf62Rdqra+BwBE2ziLk3AjZGknAWGN1g295p7dDYeN6kv9a79e5g6 WQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uynbt1cxy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:51 +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 3BDMmcZx011171; Wed, 13 Dec 2023 23:36:50 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 3uynbt1crw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:49 +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 3BDMntFL014808; Wed, 13 Dec 2023 23:36:16 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1x3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:16 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaDQM8192580 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:13 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 273E120043; Wed, 13 Dec 2023 23:36:13 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B61F820040; Wed, 13 Dec 2023 23:36:11 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:11 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 02/34] kmsan: Make the tests compatible with kmsan.panic=1 Date: Thu, 14 Dec 2023 00:24:22 +0100 Message-ID: <20231213233605.661251-3-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: VCykK3Okb8hn_WnDc5FlYpZFRwxwi3I7 X-Proofpoint-ORIG-GUID: 7xvJa3gpgWWQD7mxJFyGQAeo7HxdwKpE 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 clxscore=1015 bulkscore=0 mlxscore=0 spamscore=0 suspectscore=0 impostorscore=0 mlxlogscore=999 phishscore=0 lowpriorityscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 94CC8C0005 X-Stat-Signature: uzne8p155zrtdnfnep5cpnswjzh8cjm1 X-Rspam-User: X-HE-Tag: 1702510617-630911 X-HE-Meta: U2FsdGVkX1/NFrpRs2KUIc/TzOabqXyyZJ6tBrsIKGxJCYiIbg8Y/1eqm/V/RI9PmRsS2dK9ZuGCO6RNd5WiNjhqo2Iel6qogb9+gI+S/C8YzQ9CzxYT8aRLaIllq+zkzjjIFf2EMYadPs4w7k91d9v5wuSCkMkAbiUbd0PycAAFpkQdKsFUxB2N+kpFTFlST1jQUPmunLw0rtsAbi0k1m5lPPGPKJ7XKxHiov17cgliC6XpBNKkt2fN3P36vCtRTapBgoD2Z95hdpFQsnbuZhI0+5abvoeAuYf6Y1ur8dOpYik7xQu/LktCMgcEH31mCx5Fe3wq6io6+w6MXDcn1lcdmQT8SKt4+G6LWnbigRk7yTZ0sGDu0nX/VZk/PqLh2OMyO+OjJxvS6HYdxOrmAEpa3rShBa2/9CjOIBoA5Y7eF4foEeCdKMqOe4OQvZzZNtmqsFFTAmtLtiExeNjgqBH1JiDwGBcrQTkZAkSvapdfEyhnNZ7C8zD2glLCjKHhvHoL9gUnvkn0omoK/Cu2LKbsY8JqxHq0/b+TPKiSBCLM+Aupw6TorhXu7oBJ80iVUNJg3xkmOHzxFHi6YfaFo61isspM5zcJuggqLJYZ5taySmGuBorWSq2Ypr/EOuC3xwWU3Rnd6SwXh63mwDdN9IssuxNQiS0acHu15zdgn5cn8dy49mnpii2Zb8Rcu4gPqoFqOD/YFU7KMu+qsjMdi/THFqCcxhDGGpoKAkyYxqoQEVMH9/I6e6yXFFBAVh28JR2tTsN8JNO69RaRSe3x3F+2/0/ruadsPXu0bBkrBjqsO8O1aZmQYyMF7LYW7LuvD0gLxvq7a+n4xbzkPONuAx8x350ZYQGelkpTnLW7OOu4gHUu8jon9em3Ggv+zXHZL7MEQcFHWnWs6BQweBEXARLDLDefKiyAmFp8JmT4Oa0eBY3DAoqpkOjvHbVldu24Bqgs7G0moHB/tIPUZIi low05olb Kq2vECQ9e+tbMKeVv0nXYkvxwUfsogxpE22HYfiThVsj4+ca+nx28kee/HBpij/DBdRCnZJbmJDN3Fgevzyh3XSmOFA38+5zzM0qwRBp6PJ3OW/Y3EzvHkUOPlX5VfaVv58dK+Mm5fkoQWOBJ8TEWeoAzjXQrfztjOeZO3H+EO3iKrPHk+OEaPgRvyUxuNLmRNtM70etpFaWLk5rxd0PdUYrnJ87ABJNu98/cBojJazOOMwWrfJlPypflng== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000010, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: It's useful to have both tests and kmsan.panic=1 during development, but right now the warnings, that the tests cause, lead to kernel panics. Temporarily set kmsan.panic=0 for the duration of the KMSAN testing. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/kmsan_test.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mm/kmsan/kmsan_test.c b/mm/kmsan/kmsan_test.c index 07d3a3a5a9c5..9bfd11674fe3 100644 --- a/mm/kmsan/kmsan_test.c +++ b/mm/kmsan/kmsan_test.c @@ -659,9 +659,13 @@ static void test_exit(struct kunit *test) { } +static int orig_panic_on_kmsan; + static int kmsan_suite_init(struct kunit_suite *suite) { register_trace_console(probe_console, NULL); + orig_panic_on_kmsan = panic_on_kmsan; + panic_on_kmsan = 0; return 0; } @@ -669,6 +673,7 @@ static void kmsan_suite_exit(struct kunit_suite *suite) { unregister_trace_console(probe_console, NULL); tracepoint_synchronize_unregister(); + panic_on_kmsan = orig_panic_on_kmsan; } static struct kunit_suite kmsan_test_suite = { From patchwork Wed Dec 13 23:24:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492057 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 3FBB8C4332F for ; Wed, 13 Dec 2023 23:36:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C207B6B0571; Wed, 13 Dec 2023 18:36:32 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BA9BA6B0572; Wed, 13 Dec 2023 18:36:32 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9D49A6B0573; Wed, 13 Dec 2023 18:36:32 -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 8609C6B0571 for ; Wed, 13 Dec 2023 18:36:32 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 5CDEB140336 for ; Wed, 13 Dec 2023 23:36:32 +0000 (UTC) X-FDA: 81563406624.01.A1F4884 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf13.hostedemail.com (Postfix) with ESMTP id 279E020013 for ; Wed, 13 Dec 2023 23:36:28 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=nk4LEosy; spf=pass (imf13.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510589; 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=9jHmYIifCA/Cv8voPtUGM+O+6hs7C/6AvtqFmBPgBfQ=; b=kLFgSezOID54lW9y/tFmMlZVdCjvBL4C6rTt6LObG/5COK85GB3C/quvAOZiafY2N2X8fz XEr1XTVoFuun6oHyF9TOGMsnLphq9x3Wcwtn80gTI6LCWytcgt4uH3oGRWBy7NfUWFFNZd EnET8BcpApni3CnVIAoSeDI+ndKKzSs= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=nk4LEosy; spf=pass (imf13.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510589; a=rsa-sha256; cv=none; b=yu2ohBiWthQGRaojZIGD6ipSdPKM8CJziZNSSNdk4Gsr3IMAY4+OWkDaWkC/ojmIia8J16 jOUO94LTW2GqTEOYduu4EaoV3aBE+FEbv9qji4j7pW1oYDGoaRK4Uc3ObMdf2jGKyPMxuS 0KHSOz8MMJLebIkg9tpHhnMv5AsWGn0= 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 3BDMe3s0026112; Wed, 13 Dec 2023 23:36:21 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=9jHmYIifCA/Cv8voPtUGM+O+6hs7C/6AvtqFmBPgBfQ=; b=nk4LEosyKDF8M0Rv4Used2uCQP8k1gW4DFKfGA2ilecGuwMSn1rioe7n5sB419QfL8U7 0DG0/DboiUJOEWfHb1WonGNmrXV/wOM6jGiThurcNAtirKLKmUDWnOtuTz+qBhIE/59F itcb/4DhzkJiGxCFzSnkUhchA8xXL9lRjJ6KQQ/VGOFMQ90BFIYVlFTUobg/iDxV25m9 3rgEG7usORAM18bcrvqMW26OI/Wmb4TdAKgAeH+zjHOGWt9SjGyUUEzWtrN/PkkfTFZs fzlWAxbOoilh5lGziXcOB7jyGbK1tF0Lhk/X0+tEZnDPraYCd12z361sYlUHvkMg23q6 NA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uymwuj57y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:21 +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 3BDNU3AN002417; Wed, 13 Dec 2023 23:36:20 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 3uymwuj57f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:20 +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 3BDL4sC8028206; Wed, 13 Dec 2023 23:36:19 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw2xyvrne-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:19 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaGLO18743980 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:16 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 39C452004B; Wed, 13 Dec 2023 23:36:16 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C831E20040; Wed, 13 Dec 2023 23:36:14 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:14 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 04/34] kmsan: Increase the maximum store size to 4096 Date: Thu, 14 Dec 2023 00:24:24 +0100 Message-ID: <20231213233605.661251-5-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: aeR8VIeI6zpfSNpYU8qb_ET1PqEGqPrH X-Proofpoint-ORIG-GUID: BZJZfRMG0A4xrbOt-5TYJWqmvO4PPHL4 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 spamscore=0 malwarescore=0 mlxlogscore=673 priorityscore=1501 impostorscore=0 adultscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130166 X-Rspamd-Queue-Id: 279E020013 X-Rspam-User: X-Stat-Signature: f6phex34f4mq39ftesft8gq77d35j6ym X-Rspamd-Server: rspam01 X-HE-Tag: 1702510588-969398 X-HE-Meta: U2FsdGVkX18cn2TIfL/rDRZmQSHWelBFLL+OsWbshM/xA510O5mLAufnAWmV9UqyGr2soNdKG3DrOgN3t8c4G5L0tx7m/LfRtn06i15UTnWBGvKSU5aCX0wFgNfZelk2U9p79g4q+//JTHEivYVNtmxt1CSoQPPS9aqvyQ+qoTAC2O71wMNL8JaLp/H0d0b0GHskbUmM5TjTbD4z4cLXHtUrGYS4vkCvEjowbvjgQ6Bsct2jIu9pSxk8JOUc6JLLt8h6b7hccqAPkfMKtl5lJI7QX4j6U7Dzs1y+zHvPdqPcFjHomExYa2qiCoOTkGYzJJD19yFIOIPO+Mo5E8KOIl0ZWSo8AOn11eVPH48JQ8HUPbcu6G1DEmd4xLhjZIryjH/ntFkn8LJbjWkLSaitJphGZGc5Sx91Eoym6kT6sJOGWNFKZdtCV4QXPhZP4LzDYL5QhZigubciCvvLJ82HlTTH2+CFOwWAz1Rzr+z7V0CALpVu09qXmQht/+YqvhR4Wb3UdUMeAD69c4nPBnqqhOC3cIgzC9FtmWfPaYyDr/BnRzRoTEzj8L3xI45VzpsWNnnyJbIFKH7QaOi0rbydvrbHuS0DGg7K24p3TGQaaIMLBjrP0ORQ4ezx/47H7V8i/2xjh2lt19CmRhl/YuK+PpV0voMMCHfitpsBwGnvWLyp2JhSgEaQN64/i3D7uxMlQSVzpd2eW/aGICAZCGS0Yi5XmWgphxke3DKriM5RL3+rNt3Yed3ai3WVgdMQsRBt+3FLWMytoX3w/IRyLYtOwxs1L3cLUhOnK8WkFBvQLbZSJkDDrOre7z50yhEcDWwjxDlu709ev6/wlTODJJrlXoMoQe7wUr8WHIRH/enAWoX+hSS0ll9xwFbTDfTJBrSDvhdfEgcA2RdZ7dhXoKWZhwS2Gmy58ykouFkZbhqOiyMGPsJD27MomcenOlzOXd2I9Ma6yUM4cZSqElY5fIc wOE5zxP5 YS4lR//v6LBdMiY/MkvOz5iF5nz51irL03d4VNvS7QODMMtZ2lnJaVgNiWsOotxAJXaipWYHFafJX8YoDS0rQVEf5lvzeqXZUfiQL8Wae8fUNdYz5Wu59d2QOVhgHh7Yp60A340+cAv/0gt/vc4TFYFIhqmOXA8Gc4T45/Nf9/oPJfTIL89HIfqF5TLGliCPwAUtxm6a8mj1SZjdK4aKzMssqls8XbVDNnBNirx8hZqwVbLk= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000006, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: The inline assembly block in s390's chsc() stores that much. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/instrumentation.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/mm/kmsan/instrumentation.c b/mm/kmsan/instrumentation.c index cc3907a9c33a..470b0b4afcc4 100644 --- a/mm/kmsan/instrumentation.c +++ b/mm/kmsan/instrumentation.c @@ -110,11 +110,10 @@ void __msan_instrument_asm_store(void *addr, uintptr_t size) ua_flags = user_access_save(); /* - * Most of the accesses are below 32 bytes. The two exceptions so far - * are clwb() (64 bytes) and FPU state (512 bytes). - * It's unlikely that the assembly will touch more than 512 bytes. + * Most of the accesses are below 32 bytes. The exceptions so far are + * clwb() (64 bytes), FPU state (512 bytes) and chsc() (4096 bytes). */ - if (size > 512) { + if (size > 4096) { WARN_ONCE(1, "assembly store size too big: %ld\n", size); size = 8; } From patchwork Wed Dec 13 23:24:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492117 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 9C5FFC4167D for ; Wed, 13 Dec 2023 23:39:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C25396B05AB; Wed, 13 Dec 2023 18:39:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B842B6B05A9; Wed, 13 Dec 2023 18:39:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A00906B05A6; Wed, 13 Dec 2023 18:39:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 83F486B05A3 for ; Wed, 13 Dec 2023 18:39:35 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5AAD4160AB3 for ; Wed, 13 Dec 2023 23:39:35 +0000 (UTC) X-FDA: 81563414310.22.C2C1FB1 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf05.hostedemail.com (Postfix) with ESMTP id 04DA3100023 for ; Wed, 13 Dec 2023 23:39:32 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=Rss4RCOr; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510773; 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=0tC4Q68qibnNxZ7EGQhqKNfW/oX4pAJGU/AeYW+RHN4=; b=UQ5s1irHb1UH9a5q8pARfRmKSs6w0lUD/zPnmfd8jzz1tqeggN4l4RK8SmkMeDBrgGhYCk QFfe/c5VMh9ol5ZtqCkXPQ3ItK3bos/Of4eQaZ3zwNdn0qP56PAkFlpnLzMispPPtblKoj kKBfgO6DzAG1ff1lInm11Y+qFzrEzfE= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=Rss4RCOr; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510773; a=rsa-sha256; cv=none; b=cH7imIPyLBXOtmxTIvpyZArnUhOCxXOciLABDO7hXBlqv+f9qsuZuyyIBuiiy8YT2TjAbi 7JtkJSqvrO8Nfk3jXQowoPA21IzFnWtKYTNTDpMYa5gOeGJp6VZcYHkRqAb8I/pVQpr8UY /tUhf19c0lt4F8Ngi+FAhtarehspuEA= 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 3BDKglgr015451; Wed, 13 Dec 2023 23:39:26 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=0tC4Q68qibnNxZ7EGQhqKNfW/oX4pAJGU/AeYW+RHN4=; b=Rss4RCOrgoAMSvzDDBKNQmOKsMQpX2JZRwsnRmSbpLlGDcGLiQeVxLfRsbiqgS9GwzYm XOiP840M3jtAvF4d08X8CfHGgWwVd002Z5mfNbmUbXgylUMlNGtf1cnGmkCrz96eHf1x YLtu1/qex5P6XL6kHHBZ8G4SCs9Qu5B6qniYV7axaRAq6Njpys/vPe4YQNw+buOoIdYy kjs5439plVXELppWOzBApGE3+QsJ0Uxv+eNquISmqyraK+aBZ446u9tpwM9z/9KaTFzc gX8Gmfvs3M4ETfqusc9ypmhRzst1jdpnLx43/sTDo1FptzCCQmYWFzfsqlFDnefbsP8P eQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uykvmuvrj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:39:25 +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 3BDMfmvh022983; Wed, 13 Dec 2023 23:39:24 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 3uykvmuvg3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:39:24 +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 3BDM0FVa012620; Wed, 13 Dec 2023 23:36:20 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp4n7t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:20 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaHKZ31916778 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:17 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B934120043; Wed, 13 Dec 2023 23:36:17 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 53B7F20040; Wed, 13 Dec 2023 23:36:16 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:16 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 05/34] kmsan: Fix is_bad_asm_addr() on arches with overlapping address spaces Date: Thu, 14 Dec 2023 00:24:25 +0100 Message-ID: <20231213233605.661251-6-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 8zwUI59DJyquKUco1wEpNP13PakX9rLY X-Proofpoint-ORIG-GUID: EAgeeP8DOV5nEsx3Wa0hsknLXVRnE7My 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 phishscore=0 mlxscore=0 adultscore=0 spamscore=0 mlxlogscore=891 clxscore=1015 priorityscore=1501 suspectscore=0 impostorscore=0 malwarescore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 04DA3100023 X-Stat-Signature: ots19sgs7txpc8dixo3d7ekjjumtpyxc X-Rspam-User: X-HE-Tag: 1702510772-830471 X-HE-Meta: U2FsdGVkX18Azkeip8v1r1tkWeZCHlRHcgN0ukm9hFzZcojYku40vKMWQv45e+dbnUBaht459w3Asf/XZ9bQ1PK/tjNWhkJLxFTm7WT9oz50EH/TXCZxpTWeNWd0KurBtjkcYyeHzyVACyXscWsWb9OPXEbW0jG0aSkc5VIPOdFdKZUVHC59iKvd4Qz3sD2xSItlFUQ05zyvD63dvybR5GL70sDW1VMtQzsg1M9J0RtedviIXFrl1OuiJrNIK9h5O9cmBv74UWl0T79NvTXko+9S0t/sna1iGhNfYa46KykKMXvwYHlI0P7SfPfAIyMkYU+Eo3BjXuKluo7wVnoG2VgoLj6eXirPabo/WbaPmjq1bnx8wKl06j9UBlvWyFPVbzF6FBeUeXPiUhqLOpH6Kj/GZc7eGlxqs9hh3YN0h0EDBIgLGogWtR2VvEThZzcFV4Xq0R4LVd2z5ApFfubg8Seq4HWxiPtKULr0k8BTC4Rybx6VMGkbQW2TktcdQq6w/px+hqT8e58LyUt33BaY/mdBRFQrHDMSbzCdR2y8wCS/ymZQzyPgNQG32Q7OCyQ7JgLK+bHXH0eRkx7AYpeUaGlyxuFybnDkngSi47A7Ktv8qBG636DpXSbv3qtVbDdfLduF+wzMw193xWjJKklrlrvOxRVLvzGmv2NyQzZaqEco4wNJrzFODofCBvqScaZaN4wZq/yZJwYD+acO1AGuK1e3x/WTxEqay5uPrcCxUmxM7ji4DdojE94bNCCOvBrMMZOxMazxWgPfbR12aWas+6pCFBpU7xQyD7FSWwccFqt4H6/+/IvV2jC0kFL5o89NN9Pt/wImkTuosqyfTgaIHrxaAybVdXMOJAfqCx03aaQpwyM7oJ1emPROGLbGc8hX+srb4ytsQ9Y4VFdYS7m3vlKbRp9/i62W2HF4lAgEq+20rZmmfsq8IyXJliRh1cQ8lQbG4z7F9NgNZIreyxC KRyKZPGE eQ4gk+hOUxqaT89P4uzLcxt6JQgu8cYL5fzRIccS2JYyKx+15/53slaA3L/MLMtbIdpyul/4hrubYxI7z6KR7/pEMu6wWIR8bA4/JmyJEmtD98cq3tU1048Phr4cVjnlSxtZCV9DOjoKDg7+7gpIHhJwG/mPVgZXl/Ns06ooeY/G6v0soYzEDu1GVtfe4AFjnE0+UWX0qFVYQpaYrr+nxcIaXyiiWN7w+eL+LgbqmbbnMZe+CONt4ZfEyXpv/3FeJ10stCjKLnTSQYPvXBtVI1sm074tO5QpbhvEw X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Comparing pointers with TASK_SIZE does not make sense when kernel and userspace overlap. Skip the comparison when this is the case. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/instrumentation.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mm/kmsan/instrumentation.c b/mm/kmsan/instrumentation.c index 470b0b4afcc4..8a1bbbc723ab 100644 --- a/mm/kmsan/instrumentation.c +++ b/mm/kmsan/instrumentation.c @@ -20,7 +20,8 @@ static inline bool is_bad_asm_addr(void *addr, uintptr_t size, bool is_store) { - if ((u64)addr < TASK_SIZE) + if (IS_ENABLED(CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE) && + (u64)addr < TASK_SIZE) return true; if (!kmsan_get_metadata(addr, KMSAN_META_SHADOW)) return true; From patchwork Wed Dec 13 23:24:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492058 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 C3210C4332F for ; Wed, 13 Dec 2023 23:36:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 51C7C6B0575; Wed, 13 Dec 2023 18:36:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4A46D6B0576; Wed, 13 Dec 2023 18:36:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2AAB16B0577; Wed, 13 Dec 2023 18:36:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 0F2566B0575 for ; Wed, 13 Dec 2023 18:36:35 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 8DF80A1F92 for ; Wed, 13 Dec 2023 23:36:34 +0000 (UTC) X-FDA: 81563406708.06.75C33CF Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf18.hostedemail.com (Postfix) with ESMTP id 44C9B1C001F for ; Wed, 13 Dec 2023 23:36:32 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="a/H46swg"; spf=pass (imf18.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@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=1702510592; 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=+JRbg3kPizc/tKO6MSNyeUjOi3r5ENUit3Ra9toPyEk=; b=peaoNbHbOkUbMR49kGMcx3SbHg0IuAzMg/kEDnXf25Ilw38mcJRnCThuTPC4LI1heTKfWd 3v+a7S028E0isO7IMeJnLCrvfEqgMSwJXseGyxhNvJcmhjZ8akayArOj+DiBiL2CxvFlgN IzdFQ7TEHlClRMbk+u5RQJJYUTLBTus= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510592; a=rsa-sha256; cv=none; b=4gONDcWrImOW6MY2IuD5vMBs8lrAE3F8s75sqhu8BhvCBLXFQCvZxhw572HywjeP1rCz+c qyZlyJoQWSvxAKi5cFUGenG5rqJwWAu8JSSqZOm7zjtUi1irkHxi7jpvXWLeVGmJy1MKTz 1IQwGklh13i/7lF2FQ5Vo2yEub+Kozg= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="a/H46swg"; spf=pass (imf18.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com 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 3BDKaLvr003754; Wed, 13 Dec 2023 23:36:25 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=+JRbg3kPizc/tKO6MSNyeUjOi3r5ENUit3Ra9toPyEk=; b=a/H46swgQVoQJZy7TsbXl7UvL7/fJ5cvph7WQ/+Iu0P3yxpByVz5l4lm2BST54peKoyF c/cLiYwJv7/wv4W4cVj5NQj3GeAs20M8LfFBLZ45kAUFnXWX3TMHXX2ZHvP71bNg/ndl dDVnTFouAA/9wvUHMfxjJwa4kxSH/mymbzr+51Qa0TVUad2O+XreWelrI50E8pOa4bE6 qry0r5zWMlD/5wM/UCwIRVaKg0W2ukAotdoW+XoQbs//O/YS2sBXkvorlMJqF49eD5FH I1Ow08Yu+bWcJ4BTwxA38ceI79HYt/bJyy/+TCS5pB93o9czuty8nBkT0bOJRR54Rclz RQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uykek48y7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:24 +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 3BDNQT09028957; Wed, 13 Dec 2023 23:36:24 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 3uykek48xm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:23 +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 3BDL4sCB028206; Wed, 13 Dec 2023 23:36:22 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw2xyvrnv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:22 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaJNT16188036 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:19 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 46D0F20043; Wed, 13 Dec 2023 23:36:19 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D4A3220040; Wed, 13 Dec 2023 23:36:17 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:17 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 06/34] kmsan: Fix kmsan_copy_to_user() on arches with overlapping address spaces Date: Thu, 14 Dec 2023 00:24:26 +0100 Message-ID: <20231213233605.661251-7-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: NvNFv9kzwaXyDaiNbiRkqnwnGpAGbYvC X-Proofpoint-ORIG-GUID: 36qScC5OQSchjdmhk5MojrGx989GqACk 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 phishscore=0 mlxscore=0 adultscore=0 bulkscore=0 mlxlogscore=748 suspectscore=0 clxscore=1015 spamscore=0 impostorscore=0 priorityscore=1501 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Stat-Signature: 53dub11uicf54tyao9x9h4gs14m4uy5s X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 44C9B1C001F X-Rspam-User: X-HE-Tag: 1702510592-603036 X-HE-Meta: U2FsdGVkX19b7o0RlAtjny39Bl7h1mtzOX2N1AjdJVWaqV0uoI+IrI9htfbRNgCWbdKAiy+3pBApSX13Yb4xUPNRQLwvG91UW1CkywXQ1EnSXBpDAW+sMHqDzT//2L385HkEtIo7cX5CDwtUcTM+bwszeibpB11KTOEiFeeLUmf4ygYs8R/aBMAteQY1+siFuO34DZ1jlE0I45s2uzs4KAbE6C1c+HAQp07zulAG8JuAQapwHXHf7hfJtC+p0+fGni8yual0I90dqY3Zt4T/JbWW/LvqyfZ3XcA+xXSPIWlTNywSsoz8l+HzeiE2vzPtgg2m5rvW6bL3QK4K563OeMQBnE1beQ9w5Z/y8/JYRhN7NFc+Lh8n3Zwjb1C2A+f4jXQuQLu6aU7ty51txzROuP+4wLEITGatogr+LJanE+x70OSBeYy1OoPKBdjpaKrBR4U8Co/tHiCt9QCFAWCvUEfzCSToxCQaPRgaUE1igR+s11HyFnTZlnhYf1Wzy/LQV2YCqitRrWLyHWyUjede8QzC8cZCvDSMTVJNTU0WJ6J3ljA0mKZVvwV8kqphDW6P5WUddqnkUhVWy5FRz8UqPmlxm2lKAE0vIWViOmZQZGu5NxmxNT5LMYr/FO/FMnjSAnXEVi5QDGR5vguqNUfl7mfV1ACyFf8bgWF7b7baGdvtd9/MkCbJl68IF2FuofNFgkUqX5Gb8t0doG3DuqibEGGEwiS7zmGtuWZPy/cx6m5U8qxTlVF9hHTtPb2xGd7JnwHo/lhn3j1+z09f2FURj4/bsek3arhrn+RnBKMDdSjkg7lhGFxTOIUN9b6srkEmtIsRWSHR8iIR57pvAbxNWI/842c8CqKI9zADiKntYFiarf/NFHt5aVtiQNECXvs594YqMqCJ1dGOlrAp3/70n+GFnj+ZDQQD1Svn4oH99Tl+CAo7L3iyt7yaZvFgCukWzkvwTRtTq8F0srLSWcL 4V2+uXsl YClIcdLB3PLueNbZBU4qwEJimiFN1mFNNiNeb10kB1QtPAdFahDo6CuST1a4tIIa/rtBCf9dZD0TZ4b68L/JVPDan50xPQJadgZyCHOl2LGOuvMxGo1AB1pfxoJn8SHwHBOtf7wSl34Nw6Yxq/QqWA4rrdHEwu9MfJSKBkIZVepdtH2o0TAL4ePdc7CY/LZD235HPbpw08ivRXYIRiwiiJuBKL8ztgPCf+FB249p4HjnKmKZcZSYMdLdgn1fWCL9yjs0c8OdLwpI9XM4+FWtOVcUzJuPZGPN+Du0MynuQVKRFxAFLLsOHLvrRFw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Comparing pointers with TASK_SIZE does not make sense when kernel and userspace overlap. Assume that we are handling user memory access in this case. Reported-by: Alexander Gordeev Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/hooks.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mm/kmsan/hooks.c b/mm/kmsan/hooks.c index 5d6e2dee5692..eafc45f937eb 100644 --- a/mm/kmsan/hooks.c +++ b/mm/kmsan/hooks.c @@ -267,7 +267,8 @@ void kmsan_copy_to_user(void __user *to, const void *from, size_t to_copy, return; ua_flags = user_access_save(); - if ((u64)to < TASK_SIZE) { + if (!IS_ENABLED(CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE) || + (u64)to < TASK_SIZE) { /* This is a user memory access, check it. */ kmsan_internal_check_memory((void *)from, to_copy - left, to, REASON_COPY_TO_USER); From patchwork Wed Dec 13 23:24:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492068 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 945EDC4167B for ; Wed, 13 Dec 2023 23:37:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 34E016B016C; Wed, 13 Dec 2023 18:37:01 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 1EED28D0078; Wed, 13 Dec 2023 18:37:01 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F09C58D0077; Wed, 13 Dec 2023 18:37:00 -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 D84878D0074 for ; Wed, 13 Dec 2023 18:37:00 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id B161112098A for ; Wed, 13 Dec 2023 23:37:00 +0000 (UTC) X-FDA: 81563407800.13.3A59473 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf11.hostedemail.com (Postfix) with ESMTP id 840C54001D for ; Wed, 13 Dec 2023 23:36:58 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=ASry9qRJ; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf11.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510618; 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=nPr4alGoOUJayRzkAPpg9VfkeGGPXaolpxO75YhNs1k=; b=utfirro/S0tM0DhWL6vPotBNgcGRU9qaBvk+DVc+rmZ7UE37LoSz+nnPIb1JzlOrFeQ11D c+EH9YvNG9AaUNgZBksgIovxyZEUL2ZqW7p6Ivle7MBB4CRfbuSyiF68tt1r68bGaid0Jf pQDX3VbdcbE5x6DUGic4wq7Jh0ZPkq8= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=ASry9qRJ; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf11.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510618; a=rsa-sha256; cv=none; b=N6iM6AcOob1omp7Lrb2XvyWULKNHbK7tO9Yo7UmLCKOBTKZxZ97qaqvdfo2viUlW9HEAPA 542RB/VCPyXJqAkXQ4GK79M1s0pkRGmArlqzm8klWs5XZ5NYNqrVUM7UCB1lRwTou7a2eU E11GjgJTkJsLr/7whWMJs872q6YeDqM= 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 3BDNHZbp002538; Wed, 13 Dec 2023 23:36:52 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=nPr4alGoOUJayRzkAPpg9VfkeGGPXaolpxO75YhNs1k=; b=ASry9qRJKNf724KKyvKjQf1O+CGLRDpnmz8aMwvLwYaBKxVmhoCxlPv5PS3aiOM3LdtR HxaDB4zc5uynWSnMuGnQ3FjJRgAD31HuIznYtaR2rn0eKptT4zBxZcRuT4aw/+UvHWmO CT0Ug6rhBm9/oSsb6OBYr+KkFzh49gpDinXM6tyTDMOMmWwCOf7/TOI7yO3h/6ZhlnHA 8GdPtDmg1A/69pDFKq/dM1J6KC2s5mRmJA3Pz1fxdI46rheilXImHbzcTQfmsv25cqGv 2LcE5/eAsP548KP0OV6KhKKoa+brf+h9q3PTafPntIIDxxu9x7z0iO8bdKB8UtwYynKJ 1A== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyp5cgb88-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:51 +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 3BDNK682008396; Wed, 13 Dec 2023 23:36:51 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 3uyp5cgb49-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:50 +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 3BDLqJBP012555; Wed, 13 Dec 2023 23:36:25 GMT Received: from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp4n8d-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:25 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaMQ58978946 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:22 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 507FC20043; Wed, 13 Dec 2023 23:36:22 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E01D720040; Wed, 13 Dec 2023 23:36:20 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:20 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 08/34] kmsan: Remove an x86-specific #include from kmsan.h Date: Thu, 14 Dec 2023 00:24:28 +0100 Message-ID: <20231213233605.661251-9-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: 8E582euZEm3s7d5GxDRwQqNuLDV7uvKY X-Proofpoint-GUID: V3HcuBJ_eVO8GlBaivggkJfr_vYv0Ls5 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-13_14,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=999 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-2312130167 X-Rspam-User: X-Stat-Signature: wbja1s7k5zbtonj1s5s3hq5wqremfxnu X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 840C54001D X-HE-Tag: 1702510618-25160 X-HE-Meta: U2FsdGVkX1+Vwp56Nnw86A8hcHuXkVywQtnaP/abBGmea0S7/2zyzX6iGzBsfuUJLrPxqleW090Q76ZZe0x2YBoBmil75S8JxrgbC9982I0f+3+X276mAIngqkcCuyvUjAfLDdc512L8qu9Lkfc8qKFAKdOF4YLYxvy/cLEP/UH29JlHzJkunUhaY39vR6T52xu2QcUvcoK216SaJZ+RPjg9yP0XKP42GJHqLrypane3vXDqdadhFXqwQ+syuuna/xwT0aCGvkeVGzaWzC/pbMEP9Anc+zYx9sJM5tvkGqcKsuwoRPXVb+ozFoTL3982iIRhUNW06BIaTTDaFulFLlWzufIOMGij67WiI9GJG+PMeHudWLPLCUMWSKtM3fBMMANfgcErJG+O0uf0z8SU/twSlsHD+qqOh5PjPb9MzDCz/mcEXjtrKYUFpqY4WyJfcdKRGMxQ7waN1NL+8F3ubSltR4Ta1pVr/vb7U+joz6zKlDUrcXkJyoKfllJwtApFvT3TLe+r81yYVY2SugAgRzghTVDFEC9sJoTu0pnm2ab1uxDjVegGk1a8BG07zhYiuhCci9rJoh3C1OMd4sP/hcwFm4C7vRghAiPkU5PJQE/QQAdHBt+qy8pbMnPJGdAQ3pI9qYTmPzcVrXYQ0rqUk1jzwXxzIgfSjH1EdlUyoKftAdkfPUn2UgqX8RRlAdRCnyW9GKMBVFy2aK9cZQQ+RE1545LkLsqLJnOBUncWAYzJjg6fZrpNVyKsqQscxT0pNnMnhDKNM+1nv5GDMBjADrnS385Vj3XHgK5WQuLQfaoZQUBUKnCRTH8Rh9bPr6qyhR0rzyh2CS9Lr/TpcMBGdmhkv56196N872kpYPdQBWXjWipaGchdG0fUP2pvVCudfQpsFtXGY/rnNYGQL/hrNAVivYPWdBVE6Y3A376pvpcT4Ahm/hMnX9gYkKlb6vc/4R3sgumxEilKC8xC/fS 4jAyThGj oAanj0JCV5r4SfY419DSFjQC/JIrQT4ZEJpu0qcZpMWPtm4n8JFQiQHgI0JLYSD+RKPMSZ5ywRb0xp7J+3y/wcq4NltAObJSO3vAf9HSP81Vtt5IAVKDYYsj38uE9/2GdxaHkXJTEGo9NNkKbC4t8LJh5PsVL6eWgTfYGvBp8xCV4QsYP4rOX4bqheP+t2eFOM/XK0SD6OiooVsi7GohcoLm65W5jxq8Q9EvRVxyqK0i4NDA= 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: Replace the x86-specific asm/pgtable_64_types.h #include with the linux/pgtable.h one, which all architectures have. While at it, sort the headers alphabetically for the sake of consistency with other KMSAN code. Fixes: f80be4571b19 ("kmsan: add KMSAN runtime core") Suggested-by: Heiko Carstens Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/kmsan.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mm/kmsan/kmsan.h b/mm/kmsan/kmsan.h index a14744205435..adf443bcffe8 100644 --- a/mm/kmsan/kmsan.h +++ b/mm/kmsan/kmsan.h @@ -10,14 +10,14 @@ #ifndef __MM_KMSAN_KMSAN_H #define __MM_KMSAN_KMSAN_H -#include #include +#include +#include +#include +#include #include #include #include -#include -#include -#include #define KMSAN_ALLOCA_MAGIC_ORIGIN 0xabcd0100 #define KMSAN_CHAIN_MAGIC_ORIGIN 0xabcd0200 From patchwork Wed Dec 13 23:24:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492072 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 9B9EFC4332F for ; Wed, 13 Dec 2023 23:37:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 40E3F8D0078; Wed, 13 Dec 2023 18:37:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3B9AA6B05A0; Wed, 13 Dec 2023 18:37:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 20E538D0078; Wed, 13 Dec 2023 18:37:07 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 0E7076B059F for ; Wed, 13 Dec 2023 18:37:07 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id D31F212098A for ; Wed, 13 Dec 2023 23:37:06 +0000 (UTC) X-FDA: 81563408052.20.17E894C Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf22.hostedemail.com (Postfix) with ESMTP id 817E8C000F for ; Wed, 13 Dec 2023 23:37:04 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=ORxq1rDQ; spf=pass (imf22.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510624; 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=I5ENfpcuS8SJJyzq1oQ81hBdZSUgSzt986R8mOGLRSU=; b=4cquGbIJKM8VywJ6Uq0+akP5UT3+0mrjNiyO0fLcv2hxgM0U86E69DEZqdyeOpvLvNJ6wH 0wIyF07TNQdNzhOYgFXavjkNtxkcZ/ypHlsr985ycxrp/DUtYH7IzLaodHFiKZP42GKPbx 47F9kM+d6fdgUhji2B7H6/zxKkYt4MM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510624; a=rsa-sha256; cv=none; b=VNPykfwFvdpDutxU7M+MfPJt7klsQy//NcZQe1Nj1lJWvcX96lVyqD7miyJKb4txR9Nqir khq+ijQ8WCI4fIwFTWEXFfu+2qw9LNWcXOaO0jqbRr02wEx2ISNi1OrFMUGs3/0T2pw/M6 jHjg7P1iCL084lpbs3Ni1g4BLx44+eE= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=ORxq1rDQ; spf=pass (imf22.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0353723.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDN5vPK008487; Wed, 13 Dec 2023 23:36:59 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=I5ENfpcuS8SJJyzq1oQ81hBdZSUgSzt986R8mOGLRSU=; b=ORxq1rDQ1+Qv578s5a7o+rwl80jhA+aJ8wMQoGwv0DRfts3dspmgA8hU7SL18bAVO9/t /UlKXc/ndHnJDWtD1V++0cklOeY/g4+hAU1WcKGoqu0mQiw0BUbTlPxAaX/hf8RCuU8F v2hNrUqQiRPNtIYUPu1xxK2AiQ1BhrB22VomwI666jUVV7Z3yDMOyPZL+Ck5bN1p6bba kNuACZ0iaJ3t3uf9jfHarQXScCGARKcA06rX4U1Y0atXdxqJ0qJrgqwHH+IcIPBxuXqM ZT33RfKcGi2TMxsNv9/6nSZq4yhbyo1kmnvSDecST8LgwgLj2KrkbRUmT3U1usdcrBZL YQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyne61654-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:58 +0000 Received: from m0353723.ppops.net (m0353723.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDN8eel015721; Wed, 13 Dec 2023 23:36:57 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 3uyne615yp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:57 +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 3BDNVQIw014813; Wed, 13 Dec 2023 23:36:28 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1xh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:28 +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 3BDNaPsN13042400 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:25 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 60DDD20043; Wed, 13 Dec 2023 23:36:25 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id EF7D320040; Wed, 13 Dec 2023 23:36:23 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:23 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 10/34] kmsan: Export panic_on_kmsan Date: Thu, 14 Dec 2023 00:24:30 +0100 Message-ID: <20231213233605.661251-11-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: EwR19qvGJvvQNtGfAc5QYrovTRDCMqim X-Proofpoint-ORIG-GUID: Anx1E9rKy2HSndM7YPLropkZzAYNqtaW 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0 clxscore=1015 malwarescore=0 mlxscore=0 spamscore=0 bulkscore=0 mlxlogscore=999 lowpriorityscore=0 suspectscore=0 priorityscore=1501 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 817E8C000F X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: 198oq5c3ztsmpxuab1afze3tdrzjtemu X-HE-Tag: 1702510624-974424 X-HE-Meta: U2FsdGVkX1+RI/1QykL9Tc6x/fwt2gBqiN1P3Bzed70u5u2PiybnIX56r2bbiFaOHQsKLK1BzgLl/JGxCoPFQOBHU84LUkBzrtXc2hZNyGzWlyLohi7wdljzXdVqrVzPz59qxpeUsg3qQrizjnfcWv4LDTSswiWF7QUvJK34Lg/ftcs0U5NcJ40yCQwUBeThtTHlqhw9nodH7dR94UvDYS/z69q0GULtDEsBfYZajZeCSJCkZIe141LCVUlB/PjFRvBMjP+YKUU80rG1yX69JOQ/ZqYTWImxJcZe5QcMocUlUHHC179UYPLsiUsraa5OPq+3W3K8HngMpHjLOY8biU30n8+Dco7NNffisHKVAHGxZf0XyNesTcxQWIyxKbgNN+Aa/nWg5a+g6RjO+toDZyEaMfDQU22FfSEncRoG6PyH63ww0tx1vhK6E2u8OEx6uJkOC2EDLJXAxEXUdJCnk5thHb7JxXFnAFZLf/RTZN0s5YgoZOzf8NcS5fH3eyNiiNYjmN76M2udI4QVXzaXsN9YaRKEu/V0Q+Nmvev8UhHo8kwP34Sp4kPJWmp5NVUQRxMJ02xwj/t6GvsxAvxKWO4ELx5K81t4/ujkB8bCQUdv/RUHoR1sfu2KmLvPldwQp5s8QaKTTouxkUfg3axUOxu03VTafK9mjTE73cdI4cFQ6X7hxIBbUUzPZEN2s+Smgx0Plvx/oVScXOQmT2SjknPpzXlhjInRdehPZxbLXqlymrM9INTHUQtg7TFV2EzYesQGTaRl6UL7vXBX50t1aGFPSEXo7L7uV2ZmXQevf5HqFu1gz/Nht+WI96Uwfj4cLD/44/CMl2E0LvDOh00lrSmQT7ySMfjLifiVyVLPJryO6wwwKZJTutzPj6JvfvjRjHAm+HmXRoBP58dB0xizxq05vYx4WEbJPedM3dpy/udFixCMJEdabtrxtU8RVRBnx8qAr4FFlShLsmXRXs3 Ts7BVox/ UJPw2/8PjIfJyG1CKnRthyt7O1pZvAbyotbJES42RA2nCZIf4Ff9TWuyL0kFuQ1U40h/zUqaJeXNFr5cDirKDbqn402cqexezGrLZI7nZwVdJHA8O2XInHk+X8uJYN8GsWdqWrD86XMJUjXfewoGSTujEFbISef1AaPkpa0v5RJNdD4u0ItwuBkCWfInHMa6m4kfz89iZg1rjq8p7Fo1fhrfNqZKAfwkpwQeUt2mZoZXyeWVokwy/VVJHS1bZTaNA1VX4oH4nCdNj9rBb8jKHDh9yQ9PQ8USJqU4k X-Bogosity: Ham, tests=bogofilter, spamicity=0.000506, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: When building the kmsan test as a module, modpost fails with the following error message: ERROR: modpost: "panic_on_kmsan" [mm/kmsan/kmsan_test.ko] undefined! Export panic_on_kmsan in order to improve the KMSAN usability for modules. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/report.c | 1 + 1 file changed, 1 insertion(+) diff --git a/mm/kmsan/report.c b/mm/kmsan/report.c index 02736ec757f2..c79d3b0d2d0d 100644 --- a/mm/kmsan/report.c +++ b/mm/kmsan/report.c @@ -20,6 +20,7 @@ static DEFINE_RAW_SPINLOCK(kmsan_report_lock); /* Protected by kmsan_report_lock */ static char report_local_descr[DESCR_SIZE]; int panic_on_kmsan __read_mostly; +EXPORT_SYMBOL_GPL(panic_on_kmsan); #ifdef MODULE_PARAM_PREFIX #undef MODULE_PARAM_PREFIX From patchwork Wed Dec 13 23:24:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492060 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 D4C26C19774 for ; Wed, 13 Dec 2023 23:36:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3BE4F8D0070; Wed, 13 Dec 2023 18:36:48 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 35E076B059E; Wed, 13 Dec 2023 18:36:48 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0BEE18D0070; Wed, 13 Dec 2023 18:36:47 -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 D85A06B00F2 for ; Wed, 13 Dec 2023 18:36:47 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id A331A140371 for ; Wed, 13 Dec 2023 23:36:47 +0000 (UTC) X-FDA: 81563407254.15.601DB79 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf05.hostedemail.com (Postfix) with ESMTP id 5C47C10001F for ; Wed, 13 Dec 2023 23:36:45 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=rti6Izmv; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510605; 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=kALH6Y40PszMAinDNJqUOT92xkYCLa2PA86QJ0JSv5E=; b=sTN9VKvzKOkbw7tofqGsefNkDPvEO0rMoZUhHok7kMnzd0S8gTIhzBIJyDtN7PT8MZN0yH 8wYta3ooeXqIrj9V5AhVY6LHQi6TPqwp/yT2eiWSIsljohVtUU2hAPt0x7JoUeWaIjuhN6 shx+FAjZe/G0ReYDeX3cRI3WWKyB5OQ= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=rti6Izmv; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510605; a=rsa-sha256; cv=none; b=LsBXI1PqXUP1L0/lqROK6Fo5yl4SECOqHtQJXWOIpoZxr7gxjql5uo0X/HQyplvojwKdsn 3smtQq4F/BXhmh4xfhPOXJMSTSWr6IB3Pv+JXtbnytu497fTuIBgMhgPVLMDFNCzarLVVX xthVaLOuW9/mS2g6ItT2S4BHsY7yj6E= 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 3BDNWpG0008639; Wed, 13 Dec 2023 23:36:37 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=kALH6Y40PszMAinDNJqUOT92xkYCLa2PA86QJ0JSv5E=; b=rti6IzmvgbsZRjEVeEO1xXvE5pE073L2SYCZ3ZV01QYSF42RcR7ebu8vD2jRYzkQtXw5 +O6U2ydu4p1TuIwsNLP+vZyVYfYFfgQWDJo7R6dJpYlC7lircnWjz0CfJO5mjBKVkWjK BPxWsgF37h1WKIzZzVZxQAUv8LCOqN5aD3SIpA4NtXXEIXPfJTFrVdb0jXXvRjjx66aa EtPawQFf1/kgV1dsNJJNtOotYqGFxBf7IhPnzxzLnxgYq5RSP0qaZNtfpVRJIzoxa/CT wNP/icCT57ZYwxne1b6oPTUEHe35U6bvvZdKEn16MZ+ZA4bHiztVwAuLRyC6nm3sgCmW KA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypce81tm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:37 +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 3BDNaaPI017559; Wed, 13 Dec 2023 23:36:36 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 3uypce81sp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:36 +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 3BDKwk1X008585; Wed, 13 Dec 2023 23:36:29 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw2jtmvkk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:29 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaR9V20906592 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:27 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E149B2004B; Wed, 13 Dec 2023 23:36:26 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7B4F320040; Wed, 13 Dec 2023 23:36:25 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:25 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 11/34] kmsan: Allow disabling KMSAN checks for the current task Date: Thu, 14 Dec 2023 00:24:31 +0100 Message-ID: <20231213233605.661251-12-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: jBznlbH2FEtEOu-Pu04xnJahDcCOZLZZ X-Proofpoint-ORIG-GUID: is7ZIVg49ekM5OZcy2r9v7nHMXQ7PWe1 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxlogscore=999 lowpriorityscore=0 adultscore=0 phishscore=0 mlxscore=0 suspectscore=0 priorityscore=1501 clxscore=1015 spamscore=0 impostorscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 5C47C10001F X-Rspam-User: X-Stat-Signature: mxz4gzgceifbuptp36ibtosozareo6o8 X-Rspamd-Server: rspam01 X-HE-Tag: 1702510605-953619 X-HE-Meta: U2FsdGVkX1+xXNtRN89ECtLlgttNuFCMTHmWSFWa8Z13NA9715vgzt0nBIEwEoilFdkYAplsNv1N9XHp0VkENz3ZW9TmKr7om8RXxybwN1l5p52O7wFVAYg1CONdimTaj1LeplauZ0C57gsdrKKIYGT1dt6OsopLfOfLHyJZw3rUom0BZEA5AchQ3jJvYh9e5p6QC9eMr6RjG3A2FGo3j09APAEek2jt6vOrPHtsFmVA9E1o3jCjqINNhdyfPgWSsFRUYMrkG+duYUJ/gmx/U7xvTyIa3vWemMxBa0qvSFopLsCAPoz8hAeGBmxvTqgyGmFibjDHbO0rpvMoXjW4BD4/zumbDVP3Ky+Ey/F3loPo1KHtlW7MlQxWNmLTaExvvzDyz4MPpgdzYZaRGmEbPyEeMDNclu9bjX//Jl0GAuy8/YuLOjEogW+ivcxvKc+TT+x+3ZNtsS1vr9uXIk6++2xHufTU1p8OL7yofpcmSg+MEGzlaYJ5dHfxzxrE13BJ1qDIVidA9pS2iFdYDkQYIGVcAKkoZKZC9Qa5eT/MkKUTQ/ILgzGLlNah98AWWEIkZh+xloVb//mhTl4cwUkGJwTqKnSEe3f27EjS0KiRzAoxccGDBSdIUKD7TA57VbFcTMiXasZm9wdeL+p8MSg2pzrwG/EO1WgmlNmq01pAUcY9tCiOj568V5IJrSHGW7rPBdiKy9RlGqxN2j02I6xojqNCUlHE8kUipiZknjkPy9XmjFglKaEG57ExIy3aubHzq1SGuAicAcdGBcm1TwSirTUjZmLQvx5mVPX8WcqznrsNd+x8Ufcll7H2eEAosGWqmLW3k69twl18PvRG9shCJJHREFrw7oJIraGCw3Wkiu0j/SFs5NZx3koWcrZR6QAQn/STAVLj+0x+2Y6FPR2qFHSW98hqwmAcKGvqsN5s2dYMwAgDSezrSUaXd9NJnasfR3xYS4DFh+gAZJGspCr /4OHNrWH TpUSY0X+zbd8ytM9wx4AyMbeFXzjQ91fnVfQw3d2F0oGN4eLDUHOGa11/C0h8nK89HBANRK6W3BeftUdnz4RlGxGOWR83XU/ygsrYGHXX5j46Z83poQB9DYOgMjXcsw6fllBlNI4z8hLc+0Dj9WO0NN2GrOJmP5sFlvWgc0h45VwzT4UD7ygS8992WI76EMAMII0ALKBFQ5UTmHQyPGibz7ySmy6k8g0cRicx6nPj9mojDn2UGGoBfQi+BnyTsAJjb6TJSzPT5iVC45T7xKh5kvTK3/kTh5M+kzYX8HAZ7CmKpduIQW9wiq+lBA== 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: Like for KASAN, it's useful to temporarily disable KMSAN checks around, e.g., redzone accesses. Introduce kmsan_disable_current() and kmsan_enable_current(), which are similar to their KASAN counterparts. Make them reentrant in order to handle memory allocations in interrupt context. Repurpose the allow_reporting field for this. Signed-off-by: Ilya Leoshkevich --- Documentation/dev-tools/kmsan.rst | 4 ++-- include/linux/kmsan.h | 24 ++++++++++++++++++++++++ include/linux/kmsan_types.h | 2 +- mm/kmsan/core.c | 1 - mm/kmsan/hooks.c | 18 +++++++++++++++--- mm/kmsan/report.c | 7 ++++--- 6 files changed, 46 insertions(+), 10 deletions(-) diff --git a/Documentation/dev-tools/kmsan.rst b/Documentation/dev-tools/kmsan.rst index 323eedad53cd..022a823f5f1b 100644 --- a/Documentation/dev-tools/kmsan.rst +++ b/Documentation/dev-tools/kmsan.rst @@ -338,11 +338,11 @@ Per-task KMSAN state ~~~~~~~~~~~~~~~~~~~~ Every task_struct has an associated KMSAN task state that holds the KMSAN -context (see above) and a per-task flag disallowing KMSAN reports:: +context (see above) and a per-task counter disallowing KMSAN reports:: struct kmsan_context { ... - bool allow_reporting; + unsigned int depth; struct kmsan_context_state cstate; ... } diff --git a/include/linux/kmsan.h b/include/linux/kmsan.h index fe6c2212bdb1..23de1b3d6aee 100644 --- a/include/linux/kmsan.h +++ b/include/linux/kmsan.h @@ -239,6 +239,22 @@ void kmsan_unpoison_entry_regs(const struct pt_regs *regs); */ void *kmsan_get_metadata(void *addr, bool is_origin); +/* + * kmsan_enable_current(): Enable KMSAN for the current task. + * + * Each kmsan_enable_current() current call must be preceded by a + * kmsan_disable_current() call. These call pairs may be nested. + */ +void kmsan_enable_current(void); + +/* + * kmsan_disable_current(): Disable KMSAN for the current task. + * + * Each kmsan_disable_current() current call must be followed by a + * kmsan_enable_current() call. These call pairs may be nested. + */ +void kmsan_disable_current(void); + #else static inline void kmsan_init_shadow(void) @@ -338,6 +354,14 @@ static inline void kmsan_unpoison_entry_regs(const struct pt_regs *regs) { } +static inline void kmsan_enable_current(void) +{ +} + +static inline void kmsan_disable_current(void) +{ +} + #endif #endif /* _LINUX_KMSAN_H */ diff --git a/include/linux/kmsan_types.h b/include/linux/kmsan_types.h index 8bfa6c98176d..27bb146ece95 100644 --- a/include/linux/kmsan_types.h +++ b/include/linux/kmsan_types.h @@ -29,7 +29,7 @@ struct kmsan_context_state { struct kmsan_ctx { struct kmsan_context_state cstate; int kmsan_in_runtime; - bool allow_reporting; + unsigned int depth; }; #endif /* _LINUX_KMSAN_TYPES_H */ diff --git a/mm/kmsan/core.c b/mm/kmsan/core.c index c19f47af0424..68c68b30441d 100644 --- a/mm/kmsan/core.c +++ b/mm/kmsan/core.c @@ -43,7 +43,6 @@ void kmsan_internal_task_create(struct task_struct *task) struct thread_info *info = current_thread_info(); __memset(ctx, 0, sizeof(*ctx)); - ctx->allow_reporting = true; kmsan_internal_unpoison_memory(info, sizeof(*info), false); } diff --git a/mm/kmsan/hooks.c b/mm/kmsan/hooks.c index eafc45f937eb..3acf010c9814 100644 --- a/mm/kmsan/hooks.c +++ b/mm/kmsan/hooks.c @@ -39,12 +39,10 @@ void kmsan_task_create(struct task_struct *task) void kmsan_task_exit(struct task_struct *task) { - struct kmsan_ctx *ctx = &task->kmsan_ctx; - if (!kmsan_enabled || kmsan_in_runtime()) return; - ctx->allow_reporting = false; + kmsan_disable_current(); } void kmsan_slab_alloc(struct kmem_cache *s, void *object, gfp_t flags) @@ -423,3 +421,17 @@ void kmsan_check_memory(const void *addr, size_t size) REASON_ANY); } EXPORT_SYMBOL(kmsan_check_memory); + +void kmsan_enable_current(void) +{ + KMSAN_WARN_ON(current->kmsan_ctx.depth == 0); + current->kmsan_ctx.depth--; +} +EXPORT_SYMBOL(kmsan_enable_current); + +void kmsan_disable_current(void) +{ + current->kmsan_ctx.depth++; + KMSAN_WARN_ON(current->kmsan_ctx.depth == 0); +} +EXPORT_SYMBOL(kmsan_disable_current); diff --git a/mm/kmsan/report.c b/mm/kmsan/report.c index c79d3b0d2d0d..92e73ec61435 100644 --- a/mm/kmsan/report.c +++ b/mm/kmsan/report.c @@ -8,6 +8,7 @@ */ #include +#include #include #include #include @@ -158,12 +159,12 @@ void kmsan_report(depot_stack_handle_t origin, void *address, int size, if (!kmsan_enabled) return; - if (!current->kmsan_ctx.allow_reporting) + if (current->kmsan_ctx.depth) return; if (!origin) return; - current->kmsan_ctx.allow_reporting = false; + kmsan_disable_current(); ua_flags = user_access_save(); raw_spin_lock(&kmsan_report_lock); pr_err("=====================================================\n"); @@ -216,5 +217,5 @@ void kmsan_report(depot_stack_handle_t origin, void *address, int size, if (panic_on_kmsan) panic("kmsan.panic set ...\n"); user_access_restore(ua_flags); - current->kmsan_ctx.allow_reporting = true; + kmsan_enable_current(); } From patchwork Wed Dec 13 23:24:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492059 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 78657C4167D for ; Wed, 13 Dec 2023 23:36:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F2E538D006F; Wed, 13 Dec 2023 18:36:46 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id EB5C08D006B; Wed, 13 Dec 2023 18:36:46 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CE1738D006F; Wed, 13 Dec 2023 18:36:46 -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 B58D98D006B for ; Wed, 13 Dec 2023 18:36:46 -0500 (EST) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 89A961C0E5C for ; Wed, 13 Dec 2023 23:36:46 +0000 (UTC) X-FDA: 81563407212.24.056F3C4 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf05.hostedemail.com (Postfix) with ESMTP id 3F50110000A for ; Wed, 13 Dec 2023 23:36:44 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=DjrNa9T5; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510604; a=rsa-sha256; cv=none; b=OBP5ISu3H/gLCnExbuKSisJDvoh+1S++94356TteDOhiJB383QNpTIQ/IqJeROuikrXZUC iwJhpSh3gQks7/K5G0tXZ+AeHfvksGMb+xudQnFXZV2iN+3G6EXLmwd/lyLcTyIBJ+r/P5 d2ei09RXsFYHRbFyYa7BjKDMxSjlYd8= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=DjrNa9T5; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@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=1702510604; 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=xivDROMC2MSJ5oqx3z383eaVzZ8qGYoAxlkMDaT1E7o=; b=p07tFXK86l2DeSjer+XDirndz26UrFZ61BkL4ehWpzGTZySvFvJNH2V3UWcx84KQFxONje wra8FyZ36EGga2FLT3rcF7IqRMiEN88JFzhSMvN4hzcCH5FL/zWSZiWJKghSMALulMOKtu fzHd4tXKftSJ0/lif8OCbxAuEkA3ziI= 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 3BDKaLdq003691; Wed, 13 Dec 2023 23:36:37 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=xivDROMC2MSJ5oqx3z383eaVzZ8qGYoAxlkMDaT1E7o=; b=DjrNa9T57m/8zcm8L1QFOYnrBJRn3t3T+GbPlvg9ESozC376QAomx1V4JAieuR3xXXFA H+cFRBpy6BeMgCeIRwd6oU9DkgjVz4NC9ln0dHcoqf3ffdclMBKs+I9VTqS1q0Vfz7Yu MuK/WCSOq8vcBKTq9SZYwte+/N5ziupyRYAK/qcQO0z/ZowXdk0v2iPuRteOxW9+2bqW z+mcCar7cNzFvJWT8Hvcc/agFevm/4/LqFi2LGg9M2FruV0/sEvQ92HxJa6J5P/VUKJQ 0NSJyFJtEACZ7qyW6u+i0mqh08bXJfh653ydJtHVFVLbnl5QWz6V8O8vUHLyCPD/yDHK pA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uykek4929-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:37 +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 3BDNQiae029277; Wed, 13 Dec 2023 23:36:36 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 3uykek491u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:36 +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 3BDL4sCD028206; Wed, 13 Dec 2023 23:36:35 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw2xyvrpf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:34 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaVgv31130210 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:31 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C203A20043; Wed, 13 Dec 2023 23:36:31 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5C3B320040; Wed, 13 Dec 2023 23:36:30 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:30 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 14/34] mm: slub: Let KMSAN access metadata Date: Thu, 14 Dec 2023 00:24:34 +0100 Message-ID: <20231213233605.661251-15-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: pVuzK0gQdTIFnChN-MT9dtMNaW8q7lGC X-Proofpoint-ORIG-GUID: NkNYkei8hiVoPWsPSF-7lXxeLJhRULql 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 phishscore=0 mlxscore=0 adultscore=0 bulkscore=0 mlxlogscore=966 suspectscore=0 clxscore=1015 spamscore=0 impostorscore=0 priorityscore=1501 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 3F50110000A X-Stat-Signature: ukpwp9bx3695weneb68jusmxudm5jen7 X-Rspam-User: X-HE-Tag: 1702510604-462980 X-HE-Meta: U2FsdGVkX1+GyGncmjH71KsClwNSh5RDPCdEbeyFEeBI81NHs4Po4jhOmZAt63hsGWr67E5G+cLPfBPhXkJEfWJpHd/Ci369j5LW9DEVLLjPBeI4UWveXJMRfOg/SBFN08p6RoI4D7F1jT24EATUrxh5ssz6kBKk809mNPABm6jEMPLKSuMqgqO/E6kkoMKNrOG+HAgZ6xT+MmzcskL8VLE7cKe42iupUYEl2fwod2FxYQ2sHMkuDA36VsFGuU6wQmwrOW9NxqPIOlgM/Jy4D+P5O+6dDBFzEq2wNOtDhlhXw2ekUVHzq7VcFv4oVwFUFvR34xoG8SPAZ4AKO2kGP6RsNS+X6/8d6rja8frgrYwNTrxlTqP5btnVE4ZRSODCTZEiy1H6TKPgcDA9rl3EMPzToJfBupZnnbEhsVnFgbRfqFE48gr/U8bblosIySySXvCNqSHvzNsV2XtfUHxF7DaISn3rsmc0fTqAfn9RAnESmwvcjKPsr88pTNh9BuEJvICV7ZtVHuluM8YDsyMCOtlqyOvbA1WoOEXnJt8F71Y4JrIdpMRQ7sMHVIDeWH3dA32di3OHN2tXeTYauB8b0qKKfH3oZm7qCoIieWituvPwCWtRIwVVphtF4wWOxv7heeWD4+knmYHBdAoZxuI3cfHkINTv15HQCYwog817gF/Xdv2hhae0D4X+yyC6hZIvTKqr30iySNm0XgS//b+t3p4NclOyRRVMvLq+RGXbMJWVIUw017G/z8pyF35Q6VnRFniQ/PYAZ/Qyp+ODhG1Nay+p2aj5DSl8r1ESATweEC1teDaCVQpHv5fTW8hWRhbkn3hEYqQG6sXTotfZF6sxp+kZugFB7PWMAKMzyVKKLhpW7KZ/7Dx9oUmHE/Ne/jLPqZVQ2gJi2FbpfLdLVd9+BM7NEcmaW9PU3bt+OrXvWjmwyL1tYl/VaCY0I43Avn9KIdvt+stBNt7oHha/WuG GkCUQFy8 aOd09IZv53FNPFih+DWTnLcxFIzpgBdvnF0svK2nnMjenjNpXtJqV49rS6Ehl6xQNlrE/USuqPCqkoFxd/dYOYCxg5j8tfofKVdU2jInwnqrm87BtDnjPf7HP6sBrn3wdUDCZUNo1C/pfHdtEsXqCXbL9UHTPwqttVHo1VGk3ieJ9/hvPvohSmFD3RFy53kp2yHhxzApgH3cfhbUR7fLFxNyEHg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000023, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Building the kernel with CONFIG_SLUB_DEBUG and CONFIG_KMSAN causes KMSAN to complain about touching redzones in kfree(). Fix by extending the existing KASAN-related metadata_access_enable() and metadata_access_disable() functions to KMSAN. Acked-by: Vlastimil Babka Signed-off-by: Ilya Leoshkevich --- mm/slub.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mm/slub.c b/mm/slub.c index b111bc315e3f..2d29d368894c 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -700,10 +700,12 @@ static int disable_higher_order_debug; static inline void metadata_access_enable(void) { kasan_disable_current(); + kmsan_disable_current(); } static inline void metadata_access_disable(void) { + kmsan_enable_current(); kasan_enable_current(); } From patchwork Wed Dec 13 23:24:35 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492061 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 3E8D6C4167D for ; Wed, 13 Dec 2023 23:36:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 73CF76B00F2; Wed, 13 Dec 2023 18:36:48 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 652EE8D0071; Wed, 13 Dec 2023 18:36:48 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3BB6A8D006B; Wed, 13 Dec 2023 18:36:48 -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 0AEA88D006B for ; Wed, 13 Dec 2023 18:36:48 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id DC893A1D2F for ; Wed, 13 Dec 2023 23:36:47 +0000 (UTC) X-FDA: 81563407254.13.3148A5B Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf28.hostedemail.com (Postfix) with ESMTP id 87BBCC0002 for ; Wed, 13 Dec 2023 23:36:45 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=UI9uSlKl; spf=pass (imf28.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@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=1702510605; 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=/+H88J6LmzDuOxLHJftJTV19pkCYIO+glC/rLzGPGs8=; b=ldXhUxs77+/3rdB3G+ckSSogmm4IUTKg1ursnqFkbjeO18dIXXL6sM1ViJLkFoQyYM0L6s syKas7eaDFQIpOZfq1f40obgJCcCwGg1r3RdFlqScMXnoUkBef/wKBX9+K/7wlG1Sjtdtx lQhgksaBPnvUKaXob4QiOHl3g+gBPSU= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=UI9uSlKl; spf=pass (imf28.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510605; a=rsa-sha256; cv=none; b=Q8PoEVEt55S/wh58jtuNBpATy/Br0ui2UuMICiApm8X1bPnScprW+gLxmrYtRliXMFzBsm IdRYyMKolhQsLx9aY/w6ARWDbVfjaQ7SbfHf2hsQD63AC4zOM64qKqhlCOlbZOPXKA2Zp+ DQUTtctZqn9aIvpvYumtjZzwzQFQqYQ= Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDKbG6K023678; Wed, 13 Dec 2023 23:36:39 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=/+H88J6LmzDuOxLHJftJTV19pkCYIO+glC/rLzGPGs8=; b=UI9uSlKlNddsJj1tCJnNBZJDnRjsMrinNpqtmQWnZUSd4it6tU+K5xw+EAtN3MFqI/zX HU8Tn1ERHyiG6sLflTO1HzzbaWBvtKu2VRvG8tYweqyPVkFbI2SZkWMcJ6392GrFeNI4 jfVqMkYqet5tqNMN0XTeOgs7uoJ2x1HzQBUr4hYVFfvZ2yABdooPQA0qRH4e6mUYOSro 9CkJ3I88ja987Sh763ERHrwEkOgTR1SybfMoFUM5kqHQmiWXq7LMw4xHEnCE/Nrxhvsd jyjw0TQcACHKbGiZt3zpXc3EvNNjgGMxbOCFOTujyOIgG72Wh5wEU4jjBfnLW0sBZL3P Uw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyktbv0vc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:38 +0000 Received: from m0356517.ppops.net (m0356517.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDNLHVw018587; Wed, 13 Dec 2023 23:36:38 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 3uyktbv0uu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:37 +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 3BDGpBKh014833; Wed, 13 Dec 2023 23:36:36 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1xm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:36 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaX8n4653612 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:33 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4F08920043; Wed, 13 Dec 2023 23:36:33 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DCEF820040; Wed, 13 Dec 2023 23:36:31 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:31 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 15/34] mm: slub: Unpoison the memchr_inv() return value Date: Thu, 14 Dec 2023 00:24:35 +0100 Message-ID: <20231213233605.661251-16-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: kPY9E1UvYdSAN4yA0WGECmQaAwtxBTWd X-Proofpoint-ORIG-GUID: zPDn9MZkVLtny7zKhboJlYnQt5V5Co18 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 impostorscore=0 clxscore=1015 adultscore=0 phishscore=0 mlxscore=0 bulkscore=0 suspectscore=0 spamscore=0 mlxlogscore=999 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 87BBCC0002 X-Rspam-User: X-Stat-Signature: 64h1ju4h466ok5mwbenz7wsz7ka16okn X-Rspamd-Server: rspam01 X-HE-Tag: 1702510605-837787 X-HE-Meta: U2FsdGVkX18l0rx175343kn28N6uAB50q4Eu2OnpE9swiTeKo0mwH9lICu1UQUr3t9l3PT2w79mSy2xQ2XiVN+hiUmHBcrwZ1PlDE8bA674hl5m/apZlSWp5rQYte4XtJd2E8O9Jx/90hNpuK25mteH+Yp+jeSfnelBA8PpRxj0TizQDkYaQ8eGnzT7z2OGrXajQGyySA7Kf14WTenkqpu7txW2nXptxH8NCjX5bRefjWE8qQedn831w7aFcenB6+zk01ntpnGI7DMpLbVdNHpw65MlQWBeqRKgZJt0zT6v5Hh//v6X5Ef/P0MpBNGcT+eOQXORWKu2XVtczqfXVBQXoCR6HjT908DSZrnsoJgJ56O3l2eMfjTJLxhN2yyrYDHIJ77t0UsqFp8aIdvst9zLCo19Kbn0dtPVN0H06RtP5+V0YBrGNQSPJUSkKGHw0BP0SURS0xBXXSMxh5O4GAq24C84sC3ENjgEyHmVU6uDLvMFxaeNsXwUzGfyy9ZY6Ccd0uXrF6v0eFh2kRlmWL89/2vEToTlb3E5SjaYdNvPQ3K7Rjq1A/oLPdWdqIfsRuOjz9PlKN8Z9Bd4OmaYwvsbeXsvdhy8950I0aRlM8646xHS1kKL9eRI6MUiePcjB18gxQK3+vPto+9ohpoACTCQEaTtX9uoAeooM6jPoWRyr0RZ7orSRkU771S+JUEfT1a53xAnh/iiw7YyC8r8jTNHUVjOCHiKQ8NfEo9NMoLGX/753YSdKs6o2/np30y8KXz8DY2/rJZseF1FbzjtuTHwaORYQNvrCvf59LCQqSG65upcGqvzExztL07JwLuf+cke1iRz9Bvk0Bysvvf5Mu3CZRKmtiLKUUg37Fv2lEXMJu37YwQ9cDLuBTJxCF1NmzFNct1WrB5W+VOnNm8TYkXMc1Pl2lASwfm83bHlsw7bmuhtsI/oAHZXAS0wpcD/sRoisO9Xsf5scZ5dGpnr ludKOZ4f wi/Cmy2CgmbFbq0pociGk/IgeFdw4Tii2/ur5iE5bcldN9JW6M/IeVz0xllUTIsqtpU4jC00V4wtcZZ7wiRoN8GukkRRW3hIY2GHxAaQBp4M7vexOMINBCns6P/WaAvhsGeCNMotnAgy3OiWbKrKIjAPOUHH6WUV6tW2mQCm//auh7fVjtXOH65kegaZ96mKD9DwEujmsIpmbB6/oYpEKseIlvlsTyN3P4QYvNJFAL/elWt+klr5loLjV/Ga4ycJ4c6w+JprEaip9/Yc= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000012, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Even though the KMSAN warnings generated by memchr_inv() are suppressed by metadata_access_enable(), its return value may still be poisoned. The reason is that the last iteration of memchr_inv() returns `*start != value ? start : NULL`, where *start is poisoned. Because of this, somewhat counterintuitively, the shadow value computed by visitSelectInst() is equal to `(uintptr_t)start`. The intention behind guarding memchr_inv() behind metadata_access_enable() is to touch poisoned metadata without triggering KMSAN, so unpoison its return value. Signed-off-by: Ilya Leoshkevich Acked-by: Vlastimil Babka --- mm/slub.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mm/slub.c b/mm/slub.c index 2d29d368894c..802702748925 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -1076,6 +1076,7 @@ static int check_bytes_and_report(struct kmem_cache *s, struct slab *slab, metadata_access_enable(); fault = memchr_inv(kasan_reset_tag(start), value, bytes); metadata_access_disable(); + kmsan_unpoison_memory(&fault, sizeof(fault)); if (!fault) return 1; @@ -1182,6 +1183,7 @@ static void slab_pad_check(struct kmem_cache *s, struct slab *slab) metadata_access_enable(); fault = memchr_inv(kasan_reset_tag(pad), POISON_INUSE, remainder); metadata_access_disable(); + kmsan_unpoison_memory(&fault, sizeof(fault)); if (!fault) return; while (end > fault && end[-1] == POISON_INUSE) From patchwork Wed Dec 13 23:24:36 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492062 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 9AFEDC4332F for ; Wed, 13 Dec 2023 23:36:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C22356B059D; Wed, 13 Dec 2023 18:36:48 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BAA198D006B; Wed, 13 Dec 2023 18:36:48 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 95FE16B059E; Wed, 13 Dec 2023 18:36:48 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 663168D0072 for ; Wed, 13 Dec 2023 18:36:48 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 40AFD16035A for ; Wed, 13 Dec 2023 23:36:48 +0000 (UTC) X-FDA: 81563407296.10.7F8E5AA Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf18.hostedemail.com (Postfix) with ESMTP id F3BAB1C0013 for ; Wed, 13 Dec 2023 23:36:45 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=rQjQFy0w; spf=pass (imf18.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510606; a=rsa-sha256; cv=none; b=gM2jRRmGyrrwtxLqgfS+5VE1yyDmFu7zAUkN/7pEs55P25YgG7dhvNs4orUxLw8IgteHIo zY3f7aUQHPPD0djaOcPdWfTAuhXeNbeXCv1q1xZZGj3oxYv80wEvmLrafIrtjUI47REyIA NQ84x+vjB+/KMgpwz6PNAzFQSk51aKo= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=rQjQFy0w; spf=pass (imf18.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510606; 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=VOrBlHsfakvcZe1XK7OFH4H3N77vpLrrwB2MGspTrGw=; b=i9HYY/aTy/68CbiSmvzCDB+Pp7qE2vDFXsZNdy1p8fCjcPO6eNl3FJocGNGodqW8i0MXri AiTLvysDPy1YaDGROC/9hS0bOINvfWtwbgExDpoX7cSYQqTp1WHA2+fmCxGDBA6coQ7lw/ BnuIMFO5lDvkoCoAC1ydF3lgzcYlV14= Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDKrAPv021496; Wed, 13 Dec 2023 23:36:39 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=VOrBlHsfakvcZe1XK7OFH4H3N77vpLrrwB2MGspTrGw=; b=rQjQFy0wPuUwau2ppdq++EV6noT4UNw7RODVhrwnRKuOTNNPcaYXY8qDYRLsiPxvzvwr YADUDpoNYoPEn1KoAjxGiJ1L/mjeBJACAh20x9PXS4BfwEgpxhX1HTl/Sf+jv40NvuBk PQ540BjKBkBgIdxYHuDztQYjf/H1avsFfP+RnpSResmI+H4q3oXKic9uXpYq8QXheP/+ 6mVD+S+SCOUU+viTuR/NcNKmuw6ZnD4PDyfdwaBhN/2NwYUiKup05BnlhfD362I8yz/M cu8ZGCW/OnXVRbQdvqI2X9/bflvGaWIfI1zDp0UsCsvekt3R7tKUXpM+qvsQgVQB8WqH qw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uym1sbn7n-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:39 +0000 Received: from m0356516.ppops.net (m0356516.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDNQea8021795; Wed, 13 Dec 2023 23:36:38 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 3uym1sbn7b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:38 +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 3BDMk9JC005049; Wed, 13 Dec 2023 23:36:37 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw4skm9wh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:37 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaYD814156344 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:35 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D0AF520043; Wed, 13 Dec 2023 23:36:34 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 693A220040; Wed, 13 Dec 2023 23:36:33 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:33 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 16/34] mm: kfence: Disable KMSAN when checking the canary Date: Thu, 14 Dec 2023 00:24:36 +0100 Message-ID: <20231213233605.661251-17-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: doTRKEg5slH34q2wsmPW_bB7RNQCjFCQ X-Proofpoint-GUID: qah957R2REyygwz3vVTu7gxw-sNw3M3- 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 spamscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 mlxlogscore=999 suspectscore=0 adultscore=0 malwarescore=0 impostorscore=0 phishscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: F3BAB1C0013 X-Stat-Signature: missm8wjczu7djiww7dbytwxk51hryb7 X-Rspam-User: X-HE-Tag: 1702510605-349544 X-HE-Meta: U2FsdGVkX1/HkelrxNOYeOf9RN6ZKlL+qahFozZfV3kd+BE2T+8Akjt37EZIdbkLbNCAAF8+JUAODRoe+Xop2CqgetoHRhg8mPV73UjaNyHTwkkbAy/J7WxBX3Qh5WFBNgxQoHLrJ4PSXcBEq+WyhlBrDwJ6zNoYgFckK9ltUQpx7WyxDcDhCOzU7u8/5oJnwCqTQ2e6EBQ35LDQntJCmi7lpIRZhWqhD0k7VYkrCjPU/Tm8D/is37BsXg6bcbBbdwCsuWsIXnkHgIWyDLdzbt/gcibOYhtb86RbSHdDDF0ZE5uZLnTC72RFFI7zRLSXnk9F+eLdA9T9qH4GGexi3aYUuSwG2UqMVHTq0XzznVJ76q2g/JNiSNGDkS/MfALdfQq8gjqq5M01pfHQJdm2Z554gx4xx0SI/Ua8fcAXS7V9su4s6cwuxYG1pk3MrrzPDlGSmBgGDQOrz6nXy3vR5R6dMkPIyMJxJeXDy+isEFEr/YofxSCPxRVQJ4JsGlizCn74AJIPeT4MRayIAyF0K+3vRWgcJNVXBolYRXjVVnmpGhMUPF3aqGaPNV6O6mSyQOP890xR08EcpAQ5yiKSyGzHqERGm2/P/SrE9t4ghNtGULFygq4NA8zr/gtbEvGaBxJ0s7yTBk/6qNHpPTd0UwqTZAIkKAyh/CtEejE2GzDQwV6lYrjgMY6GO1L2+OgK95L67VXIrFZVjKguxzIMeff6u+c/aRtTYwHozOt9tflYhGzQkgK3YbodoUDaOIyL1omzQrePGLxrQYDUC7z1x7ZLQwHGs+Ybi1I7JsGsexINyKVDKNZptalqBgLneRSGsggw0i/ORrNUWFjq/a/d9uwnSbI9oGscQ9tjBTP6nYCBRxJFLRhYg2pnX7roopbgO3PYm1/GqqKM7sqedVIA+s7rJ2Xen049BBbP8weiHCKP2/szibDx3AbZoizNkuuUDEavRUdCq6bfeR9VnoK MDQwUfeg VgaH4cnyI3a4tkLkJBxVfncBPc8keD/fOnkF6t40k2kvbEwXuby3l6Gmf3UPCXgtjfA+ijlZO9aoKZOO6v0pXValPTzbO46b2tjgN7Alen2pe1XtNyPUMybJOrQLITWNKeiKB/sv1LWm2jQrpfJfyQfvEJotnyEcW8tgBGp/UmmDIqk+TG3sYQunrtuBojyfSY+ciVrGelfpz03zUdEykqruOmV4CNiGzhqfNMCrYvsSDzkbYwttf8ZogBSzE5SkV6tugd/fxybAogQgXjHppg5AbRB4pqSSXIDGOnF628m/QY81GUyM3nGM8RRUjwf9jzldJ5V0mNuRUBAQ= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, 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 warns about check_canary() accessing the canary. The reason is that, even though set_canary() is properly instrumented and sets shadow, slub explicitly poisons the canary's address range afterwards. Unpoisoning the canary is not the right thing to do: only check_canary() is supposed to ever touch it. Instead, disable KMSAN checks around canary read accesses. Reviewed-by: Alexander Potapenko Tested-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kfence/core.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/mm/kfence/core.c b/mm/kfence/core.c index 3872528d0963..96138e704c5a 100644 --- a/mm/kfence/core.c +++ b/mm/kfence/core.c @@ -305,8 +305,14 @@ metadata_update_state(struct kfence_metadata *meta, enum kfence_object_state nex WRITE_ONCE(meta->state, next); } +#ifdef CONFIG_KMSAN +#define CHECK_CANARY_ATTRIBUTES noinline __no_kmsan_checks +#else +#define CHECK_CANARY_ATTRIBUTES inline +#endif + /* Check canary byte at @addr. */ -static inline bool check_canary_byte(u8 *addr) +static CHECK_CANARY_ATTRIBUTES bool check_canary_byte(u8 *addr) { struct kfence_metadata *meta; unsigned long flags; @@ -341,7 +347,8 @@ static inline void set_canary(const struct kfence_metadata *meta) *((u64 *)addr) = KFENCE_CANARY_PATTERN_U64; } -static inline void check_canary(const struct kfence_metadata *meta) +static CHECK_CANARY_ATTRIBUTES void +check_canary(const struct kfence_metadata *meta) { const unsigned long pageaddr = ALIGN_DOWN(meta->addr, PAGE_SIZE); unsigned long addr = pageaddr; From patchwork Wed Dec 13 23:24:37 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492063 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 33DDFC4332F for ; Wed, 13 Dec 2023 23:36:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D0CFD8D0071; Wed, 13 Dec 2023 18:36:52 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id C9FC88D006B; Wed, 13 Dec 2023 18:36:52 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9D5B78D0071; Wed, 13 Dec 2023 18:36:52 -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 8725A8D006B for ; Wed, 13 Dec 2023 18:36:52 -0500 (EST) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 63ED8A1D2F for ; Wed, 13 Dec 2023 23:36:52 +0000 (UTC) X-FDA: 81563407464.04.50AE866 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf09.hostedemail.com (Postfix) with ESMTP id F3B4014002B for ; Wed, 13 Dec 2023 23:36:49 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=sgnQGgAp; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf09.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510610; 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=MKNXtq5ajkWvcQiOoGs4LcPUtQ+3TCO4ZqWbvkFUWVs=; b=ynBL1gsXfllJcExzqMyCkXb06RR0XjmGUn/LcF10ajBmiw9MfFV8bIajCfwgmgC4uUXjZL jhQM4/YJCWOx4nard3JWC/uTfxKrndGEnEBwlRvmvcj4ff2ogajdy/xeG7DKnQvnGHLT5k +afedxgYYUwhycmol0PJ3jGoRcOxhCE= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=sgnQGgAp; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf09.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510610; a=rsa-sha256; cv=none; b=GghXkQDV46rOi7B1vCwHUolqcIj6qF+IsDXUnSPYNvB8g7iFeXIedYIciW4QN9C4PuXHB/ I3dT6pFTvihdJeUSwS49mbfDC3JUWhJWfxhuGcThQ95fzPLNQv5+XaEFNgptEBU96XfBvQ rEgtu0dNCGiGnZk3qlfoxZOh/fkPbf8= Received: from pps.filterd (m0353727.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDMlp9u024703; Wed, 13 Dec 2023 23:36:42 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 : content-transfer-encoding : mime-version; s=pp1; bh=MKNXtq5ajkWvcQiOoGs4LcPUtQ+3TCO4ZqWbvkFUWVs=; b=sgnQGgApwtpuxroTLwvxXQZCGez45er18f69eK67E6zjzOgsH5Fag99SunGpcf/5lwEi UZM19s6GsKdADKM9JtOLgo3JStz97isn7/2MJclSec3mxdJIOydW2AqcfcGWgfLOHzpp /2rAq5oLUQt/1NepZJdXkhEm1+eT9QZEsKYqRB3L92iPuFjJUm/0pvMw4EwlVVEwq2Gn R3yNVusaek+/RLSvNIiy6z/EdZUBm0z7ypJ1ifoxd6FJKYEm6EyHRVjaLdgRb3prF7+w fjDaYkn7cOxrY3T2Vt4i3As+hydwiM7KOyM6j9cHNOVNLNNs4JzQSEK9K5zOAx1Vwv+2 3g== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uybw52s1h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:41 +0000 Received: from m0353727.ppops.net (m0353727.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDNQLK4030990; Wed, 13 Dec 2023 23:36:40 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 3uybw52s19-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:40 +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 3BDNQTB3013878; Wed, 13 Dec 2023 23:36:39 GMT Received: from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw592c4gf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:39 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaaJH11797080 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:36 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5FA3720040; Wed, 13 Dec 2023 23:36:36 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id EF0802004E; Wed, 13 Dec 2023 23:36:34 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:34 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 17/34] lib/zlib: Unpoison DFLTCC output buffers Date: Thu, 14 Dec 2023 00:24:37 +0100 Message-ID: <20231213233605.661251-18-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> X-TM-AS-GCONF: 00 X-Proofpoint-GUID: Um-xt4YHootM37dHUG8hwEcF0DUJln-L X-Proofpoint-ORIG-GUID: -b8YHe7U_CbwRAQmSuApxveyqawrdKVk X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 bulkscore=0 phishscore=0 spamscore=0 suspectscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 priorityscore=1501 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: F3B4014002B X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: fdm3qzm9k5oj3e14p1e6hwmirbq8ssdt X-HE-Tag: 1702510609-350875 X-HE-Meta: U2FsdGVkX1+XCoHvRfWp5hrfR0U654Mw8plUK0Fso4h8qKIB21BnamMBBq/lqykJAC6G/oT7CCWtFlMusoVMlYIPv4DpTgD8fvX+AiDdIhLgYhsMK1+HewBRGTnBJk9QbpurykxGJau863DTAoNbVflkxhq8GGG3Zdw/FQX8UlPXUcPnXNzk9FYdmO3ZDFTFJ2umNwHZFdblXYzv6//BXTT4E7Hd9n0lUDirDqJ7MPB5jqi5HEruMsXSx/QaIx6t1pXvFQ7ZC24NM7G9mdeoei+0ppAR0ZY5d4KSYlkQ5CSDrYULpy+Gd/lLSTBlU8vVROCR69OWtUqZJbnLCRHu08LQNCC7geahPwBL3+p6sTTCbqXj2uePMuCyE20B5FmaSHUrhMjeLrmpcBGzHJoECOvzt0pb53Tq7Iqm8ki8VT0RFq2H18PUqRM88ZKbKb3GPKfdftD1bRSOSwscbfy5lltXEtKGOuG6dpkgE41WM7j+JJXvWeVmvA82Ctw9d070UT0iJh6y76yd7nDUgSOZ+6/UTx3FitNhwsc1I7j+7jTrJHqnOsUjuz1pU8P0oe5ExiwMen5AyITThHKCrmheKSkoAvxG/bIt4UWYO9cpgNfsPPJ+l3x6cevfzKccDpL6eHHOKmPwa4HggKfWYrYjhPTgVUR2qBhRTsCLiD1NSPn4/kxmw5zP+FYnP2RSIy++hL6ClTd39AnhclM/6qT7dSoNhTMITyehv3q68RzP8jnmuFUcm3xqfQoyuOchgzgsxLcrG0UxxiWh6X3iM1/OE2BrHcC0MBLvw1PxSNIkFq2iBAvIkDewECJINYmKvivjmO1mNzB78MKn/eMdgM5w5K62L3zZKdBkljtEsAkZF23jqsiY4ndd4vEfTcCMeboNil39m5t4yYZ+mDyYMuy15uFS+PT8W1FTIApOziyQviFAtGbFmz4V5fO7Rib4iPtD7Wl+L+09pVV1WEskFqT R5BvoNpl mBX6AqA7+vrlT+Vi+Rii53FfTDmEH13Hrjj96N4EI0UHWLdN3dkQiD05jJremgRpU143WQ6ouWCr1xjss0GZ51rHgs6TYmdxSXE8FXju/xzjT1SA0x4mx/keTV7n9mIhIEP+NypxzaBJ7ViwovgaeEQIKDP7LZJOtaKRcdnUEHeKA3Z/SxhO4yh2SZqXEY+KUJ//MRfn9g4x/pp0GMD1M0/sb4o7sG1rd/Hvig0H/iTlUBGnCycDznx4c3AF9IqjQDTxy0UuWxt9CBWUA6GqMWOr2EV4mkpyZCoenLw+vZN4xj45TDHlGhLPYwMLceO38cPsris2X/ccKB5s= 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: The constraints of the DFLTCC inline assembly are not precise: they do not communicate the size of the output buffers to the compiler, so it cannot automatically instrument it. Add the manual kmsan_unpoison_memory() calls for the output buffers. The logic is the same as in [1]. [1] https://github.com/zlib-ng/zlib-ng/commit/1f5ddcc009ac3511e99fc88736a9e1a6381168c5 Reported-by: Alexander Gordeev Signed-off-by: Ilya Leoshkevich Reviewed-by: Alexander Potapenko --- lib/zlib_dfltcc/dfltcc.h | 1 + lib/zlib_dfltcc/dfltcc_util.h | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/lib/zlib_dfltcc/dfltcc.h b/lib/zlib_dfltcc/dfltcc.h index b96232bdd44d..0f2a16d7a48a 100644 --- a/lib/zlib_dfltcc/dfltcc.h +++ b/lib/zlib_dfltcc/dfltcc.h @@ -80,6 +80,7 @@ struct dfltcc_param_v0 { uint8_t csb[1152]; }; +static_assert(offsetof(struct dfltcc_param_v0, csb) == 384); static_assert(sizeof(struct dfltcc_param_v0) == 1536); #define CVT_CRC32 0 diff --git a/lib/zlib_dfltcc/dfltcc_util.h b/lib/zlib_dfltcc/dfltcc_util.h index 4a46b5009f0d..e481c6ea09b5 100644 --- a/lib/zlib_dfltcc/dfltcc_util.h +++ b/lib/zlib_dfltcc/dfltcc_util.h @@ -2,6 +2,8 @@ #ifndef DFLTCC_UTIL_H #define DFLTCC_UTIL_H +#include "dfltcc.h" +#include #include /* @@ -20,6 +22,7 @@ typedef enum { #define DFLTCC_CMPR 2 #define DFLTCC_XPND 4 #define HBT_CIRCULAR (1 << 7) +#define DFLTCC_FN_MASK ((1 << 7) - 1) #define HB_BITS 15 #define HB_SIZE (1 << HB_BITS) @@ -34,6 +37,7 @@ static inline dfltcc_cc dfltcc( ) { Byte *t2 = op1 ? *op1 : NULL; + unsigned char *orig_t2 = t2; size_t t3 = len1 ? *len1 : 0; const Byte *t4 = op2 ? *op2 : NULL; size_t t5 = len2 ? *len2 : 0; @@ -59,6 +63,26 @@ static inline dfltcc_cc dfltcc( : "cc", "memory"); t2 = r2; t3 = r3; t4 = r4; t5 = r5; + switch (fn & DFLTCC_FN_MASK) { + case DFLTCC_QAF: + kmsan_unpoison_memory(param, sizeof(struct dfltcc_qaf_param)); + break; + case DFLTCC_GDHT: + kmsan_unpoison_memory(param, offsetof(struct dfltcc_param_v0, csb)); + break; + case DFLTCC_CMPR: + kmsan_unpoison_memory(param, sizeof(struct dfltcc_param_v0)); + kmsan_unpoison_memory( + orig_t2, + t2 - orig_t2 + + (((struct dfltcc_param_v0 *)param)->sbb == 0 ? 0 : 1)); + break; + case DFLTCC_XPND: + kmsan_unpoison_memory(param, sizeof(struct dfltcc_param_v0)); + kmsan_unpoison_memory(orig_t2, t2 - orig_t2); + break; + } + if (op1) *op1 = t2; if (len1) From patchwork Wed Dec 13 23:24:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492065 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 25BB7C4332F for ; Wed, 13 Dec 2023 23:37:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 766418D0073; Wed, 13 Dec 2023 18:36:55 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 6EDC38D006B; Wed, 13 Dec 2023 18:36:55 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4F2E98D0073; Wed, 13 Dec 2023 18:36:55 -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 385438D006B for ; Wed, 13 Dec 2023 18:36:55 -0500 (EST) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 18F9C80BEB for ; Wed, 13 Dec 2023 23:36:55 +0000 (UTC) X-FDA: 81563407590.12.35C638E Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf10.hostedemail.com (Postfix) with ESMTP id B5512C0020 for ; Wed, 13 Dec 2023 23:36:52 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=iR+7Or7Y; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf10.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510612; 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=N2VaTm6j283+4VwN//hURwYHK/YhopDpRgkaZ9Xc+7w=; b=hpkf3O89nORY/VJf3oWkS8ePoSe0V0PWkA/t/U8l00vPQ7S4X+Ob6hTYeeagRmpaoxIkxn tswZBDZ7w3XAOqOyv3O/QgpSQPJ8pIvWYvsL7xLAXetGs1ZWKAZWo261KKjULu0HzygDdX InPRAfA1wG8zPcqfF0s6OKTnG22e0/E= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=iR+7Or7Y; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf10.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510612; a=rsa-sha256; cv=none; b=72j34PErx6c0BluQkQZOJQEJoGHKL++SQkkSScYilLd3YJsX/uvzG4rD88PP+F7QFR4Djy b8bkES5610sK+YGMvUkJLw+0pWDTbkGrp/CPl+j0YzS70I2cxmp2rkqGj5Wb+QtP9ljIRl QpxTFl5FvCUrUfNgt5MJgqg8pMF6XHU= 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 3BDKfjZw013021; Wed, 13 Dec 2023 23:36:43 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=N2VaTm6j283+4VwN//hURwYHK/YhopDpRgkaZ9Xc+7w=; b=iR+7Or7YdXWiP0cRh8mmEvW20/46so1iauaAzWrGF5pWT3F6B8ispajfo+rM+A/i4GXi NARmXniCxGDHFis6+XTxhrSeVZJHAm1KX5HKlPY+uzoitBksMKMAwwb8Mts387I7wo0+ SFFBLvtZ1hqCpnfAkgf9mmHzBFuoIGfJdFUJpXD0VYMZQw9XEf6JBOnOvU/zVtJdrqzv +gpXbNuGTFCPXgeyHkAwEiWkfsZJ932iiYINyPZiOpxHGoA5bvqSxE7TrbxFlZxsP76A sDKnlKBYRlPtm3zmqx4J44uQpzwnU8smaSDyvU1g8B9+10kbhDb7BUMSo+4AIkKwSUZr gg== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyjg35xnc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:43 +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 3BDNSl2V015630; Wed, 13 Dec 2023 23:36:42 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 3uyjg35xmw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:42 +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 3BDN0HV2014803; Wed, 13 Dec 2023 23:36:41 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1xp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:41 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNacXs44237494 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:38 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E859120040; Wed, 13 Dec 2023 23:36:37 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7C47620043; Wed, 13 Dec 2023 23:36:36 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:36 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 18/34] kmsan: Accept ranges starting with 0 on s390 Date: Thu, 14 Dec 2023 00:24:38 +0100 Message-ID: <20231213233605.661251-19-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: cPCpBguRX25yk0cY5HbnO3wP8bPYoaUi X-Proofpoint-GUID: tWEK5BHWwLFqmCkK5VSnrvyWkz9szQAT 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-13_14,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=993 adultscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: B5512C0020 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: bzsuqbnxcq5w6egm3i5gnuqjoc6sxwzg X-HE-Tag: 1702510612-479620 X-HE-Meta: U2FsdGVkX1+bqBRooKkvXugXKtOmVRyw7hcNGrzs5sOuuSs6tPTiIkGTD2GwkXmrNOlOXnYtyyQ+XtFoe4fVQWl9trQIX41t2fqIC+RfjR+P0vUeN3F6iV/ab2P4tM9unv9+BSu5nN+vdEaJVDsxa7aSPHd0rrmTMeZmPNtQxMDXn1KKv4epn9MBwEmHwOJ4ITU/tIwGLFB3fr5E8C6QrEw78YASUBe723yS8aYq+MtDah+0cxuZoqI8W65mRXBot3pLbjj2Jj0qvbvazADbkzTWWsd8yz0yol/tn1TD34PcYj6N4jYLz4GH+hhTuLP3nHGMZ1dztJpPd2LBv8ld/I1moMrHoQVsyP/DzGyOyZO+rluy+RfYjipEj9hKnG+uPlD99/jjPr6pwT1oOyzQUFo9Jy9UdGpASAHWLftGfP7w7upQNf3jpAA3lAQVb67mduWunI4OkfIK0IoXIseyWWzouIyWzlkUjFi6+Dp7dCysELWEtRbB6Z4CPDLSR5TzjUaPUm2kIXCOy/GHaPSzVzUElQ/zCW4MedEqD+Us9kf+MnIBfbPjN+AoryX/TinBxu85DQr63IZOEdXypzdxALBU5aWydkl3lQ0MwbrJyRgWoyE+0Fu5AooYO58JyCcun9PPsEOegAQol/h1O44N+uWo1d7Yk1Akrp8VKIggLZy7OTswmYDxiimbeNlsGeXBRHrCkDfLyi1l6IP23i3BUHMwto8b31PMSp5yVmonDBVvlqpQwomzs/PknREf9/5/upDdB14urdi62UwjCKSdazn25/TlAnPnzzPGMO+/St5Lr5YWNq0sZC/PGi88sPz7x0SYDkwW/xYqtpRcXtCMIkgDNVK7ywwprtdyF02u3j6eGdGSjmRDQdtMnZOSt7zXMGPgX3n9ZYPYkgT0UF60ZH8NEJF2nqyN8e6HP01kMTfxsPWGflA5oFz2iLX6qDr6gB0wBeBezTkICk9q0Ll oFuPUFrW t5CuK40ZSLv+cN8CIPCOi3rXzfUgcjUKIzvb6QUjHqYfZ9XtKgB84aKTpSKxwjj+vHIOR+A0yoJvLgsXH0FpEIbv0KtevXpnsO0KcuaqEW5GU2ULnmxcqn8eeSeHjQ7ugD+arSanZM3P9lZYdssyNyndZe+3b0M+1iwwOCSdYtn/CkCT9h0NCm4v88UnR83tkBkTzayk8ytYsRF+EGcV/2S0Bvb6OtCckDddJGtCwYd6TlkY= 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 s390 the virtual address 0 is valid (current CPU's lowcore is mapped there), therefore KMSAN should not complain about it. Disable the respective check on s390. There doesn't seem to be a Kconfig option to describe this situation, so explicitly check for s390. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- mm/kmsan/init.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mm/kmsan/init.c b/mm/kmsan/init.c index ffedf4dbc49d..7a3df4d359f8 100644 --- a/mm/kmsan/init.c +++ b/mm/kmsan/init.c @@ -33,7 +33,10 @@ static void __init kmsan_record_future_shadow_range(void *start, void *end) bool merged = false; KMSAN_WARN_ON(future_index == NUM_FUTURE_RANGES); - KMSAN_WARN_ON((nstart >= nend) || !nstart || !nend); + KMSAN_WARN_ON((nstart >= nend) || + /* Virtual address 0 is valid on s390. */ + (!IS_ENABLED(CONFIG_S390) && !nstart) || + !nend); nstart = ALIGN_DOWN(nstart, PAGE_SIZE); nend = ALIGN(nend, PAGE_SIZE); From patchwork Wed Dec 13 23:24:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492064 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 C6D8CC4332F for ; Wed, 13 Dec 2023 23:36:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C70538D0072; Wed, 13 Dec 2023 18:36:54 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BF82C8D006B; Wed, 13 Dec 2023 18:36:54 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A4C038D0072; Wed, 13 Dec 2023 18:36:54 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 8A5558D006B for ; Wed, 13 Dec 2023 18:36:54 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 5E3B780B3F for ; Wed, 13 Dec 2023 23:36:54 +0000 (UTC) X-FDA: 81563407548.16.32CBC0F Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf06.hostedemail.com (Postfix) with ESMTP id 0696D18000B for ; Wed, 13 Dec 2023 23:36:51 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=Py1mP98b; spf=pass (imf06.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@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=1702510612; 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=rlCQsZ3FaFOShLden0tv6ATBRD4EWRplBBAXRzxDZSY=; b=ySo7SZXNiHJrb3lckkNA++h0LrkxzEej37r61/+3euBG8ilI/naomgMZqmalG6snneNRyN R8RBBBRsj+DzEBwIe7NiR729hMwcGwM8hbK0QoidM9R+dO6ZtSK4zljHEUHG27NdhEaK9k vyiULHN5tuC0Cwa6hdyqTxA9F3SwbL0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510612; a=rsa-sha256; cv=none; b=7mBxn7B93/nEVjL2gJjwKdNDrU9bjdGZXd75p5xfnQAYt22zitUxeBnhB24rXDSvcbQP3K 4Ta/IKfBRzfl2+SpUlkkMq3dZKjEr4/4Qt847QA7qIAdA7HPCsTwHKYm/kcfyB+tGRV8is 6QtajowqZJSz2r0BKsrRBONZvGocoUw= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=Py1mP98b; spf=pass (imf06.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDKbIKV023765; Wed, 13 Dec 2023 23:36:44 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=rlCQsZ3FaFOShLden0tv6ATBRD4EWRplBBAXRzxDZSY=; b=Py1mP98bNE+rkK4FeO0lOzFOxIoYCYnBNv9tyFj2n8PkchrQeCbBrIK4XSZghTrbb4zD cHXIEZzcm/THTRDgGYj1etk5EIn57OE0V2C9jm9bmePIXJctS/Q211Zb9APT8S7fAGJu Tu+6iarnxt1Xf/POlag9jTyDQpUcs8JMpbL7uWmHpzR9NGvJUQeLkmkOnaO3odVSD7jK sTFRu7uS63MnYa4JOMbxUpRoJS3EnXxs7sozLocGF3Ng5JId3VvOlO9i0KoO5QevHRaU fa/vXJWV6hteSWrOd1LZcWXaCinjunicxrYxatDVShm+UUzRzPmcj9lELfx8cVM8gRIO 6g== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyktbv0wj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:44 +0000 Received: from m0356517.ppops.net (m0356517.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDN1IcT028789; Wed, 13 Dec 2023 23:36:43 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 3uyktbv0w9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:43 +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 3BDKnidh008455; Wed, 13 Dec 2023 23:36:42 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw2jtmvm9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:42 +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 3BDNadSt45220118 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:39 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8151520040; Wed, 13 Dec 2023 23:36:39 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 111A120043; Wed, 13 Dec 2023 23:36:38 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:37 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 19/34] s390: Turn off KMSAN for boot, vdso and purgatory Date: Thu, 14 Dec 2023 00:24:39 +0100 Message-ID: <20231213233605.661251-20-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: PLExDOrLrxMWM3bk6s7GZrTHSzR8vYyL X-Proofpoint-ORIG-GUID: Fk9-MI15mlYrzZBW50f87CcP6jmktpZ6 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 impostorscore=0 clxscore=1015 adultscore=0 phishscore=0 mlxscore=0 bulkscore=0 suspectscore=0 spamscore=0 mlxlogscore=736 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 0696D18000B X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: oujkgh5yajbh1g5awsfaq6b937smyhgj X-HE-Tag: 1702510611-487741 X-HE-Meta: U2FsdGVkX1/u9kyNhUZNCLG/JK9Kj+JNOlaDkLTbumv8cJYEs0HXloEf8ObRrb+jAj1q2V5vPuu9P0UB4G8dbUN0yjFwAfsQuHxvQywF6Zx7ImrhOQfn0ypuDHSffVdIngtiPEy0xy9rXErUE8s2CyyHD4HZnykqShyVnZoIsTFuuqqxFck40QJDH+XQ0oCusl0whA40nbkw/OnYqs8RgpLuRF82LbDKkYwBjmfjZM2oskd2KSNceuP763AqIZ3hPiUfCR9oDxLyTAaVukiulegbBePJVB3BKi1kGeTiVfGZwgBbiq7i1uWDM5Y0dheflAN9l6/G/Vg4B7JN2RFaSKs6QYYG/0h9oEjK7jlbPnPapF6Zul+0oWMB2PQs/mOgWT78M1Jblwwj7y9Ii++mwEYxGDLJDc1oJpdPvoDwEwrx3sG5F7cNE8XhPq93bxnnFhXUR/8qCr4uYNvUb/E1Ac0ZZwmUXmesqwTPellSI+xtIDU6P4ypSQcQ5qN20e3LzqEODshwTdUH8Eheh8REQ83E3Ws67xPI37RZERaa4aqIPly47Ai2N7SYvFUdlA2qhvxcEokPAar6wX8a+lGdA0SQconj4pFOsBgRcAO6XktSv76fH/033NcUB7gTUfal2JlFyh4OVog14FbMlFIyaYKVWofTtDFoXUDBcLSZxCZrZoMIIeNkT+rCc/myQcdjOCDjD27Eg+cwjqz5VUrSU47x1JjogaaNDyGV6IoDSZhj+KIvONWRRYsy8ux0d0OQdzvfx8xFska05dGFkm+0NkpSvg5mXy50KuT5e71fb1ksux/Yi5nqZ21fvSeBB29N66uesDsBVp2HO+f67PJKcnWal2E0tkrnqNY/1Jr9YvT37e5FIuHHs4lOOgXbxnRTJVY4rqYwU7NDCz8UNucgVL0QvsbRJBheX2TRUnhDYpLUQe9XkcJ6qrzjm7ahnav6rD6VgRzUeTkYExoPkA4 l72DFakr O3aL2O67hm4c8IeTUcp962ifZu6PrgsrYFJ9n8L5kUCdyuAnCppDON3DWjbPvb0hqVUIHIqAEdi7xOrYjXS6rDewa7hWcc7jiTkGVzRWkaPGmEpfSAltYtGmKPRR/gS3EnhXLky3Uh680kyZVln7ZjhFhJCyHn8Wk0A+igkB2HVSU4feZH81IYvEnON2tNYI7I+WhpHoxbnesWjr3U60D6tr3vrz8WUvh3bDsx3qDtjlGBDOgSsKMSsHWHj8mG+SFJiZI8N5BeY9U+vmI8C7cQ+VekcnPSNT/16uJ1Dw863QvRa8qvTt7GGPfv0PM3acuPnIgd9RUexf4lBI= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000161, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: All other sanitizers are disabled for these components as well. While at it, add a comment to boot and purgatory. Reviewed-by: Alexander Gordeev Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- arch/s390/boot/Makefile | 2 ++ arch/s390/kernel/vdso32/Makefile | 3 ++- arch/s390/kernel/vdso64/Makefile | 3 ++- arch/s390/purgatory/Makefile | 2 ++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/arch/s390/boot/Makefile b/arch/s390/boot/Makefile index c7c81e5f9218..fb10fcd21221 100644 --- a/arch/s390/boot/Makefile +++ b/arch/s390/boot/Makefile @@ -3,11 +3,13 @@ # Makefile for the linux s390-specific parts of the memory manager. # +# Tooling runtimes are unavailable and cannot be linked for early boot code KCOV_INSTRUMENT := n GCOV_PROFILE := n UBSAN_SANITIZE := n KASAN_SANITIZE := n KCSAN_SANITIZE := n +KMSAN_SANITIZE := n KBUILD_AFLAGS := $(KBUILD_AFLAGS_DECOMPRESSOR) KBUILD_CFLAGS := $(KBUILD_CFLAGS_DECOMPRESSOR) diff --git a/arch/s390/kernel/vdso32/Makefile b/arch/s390/kernel/vdso32/Makefile index caec7db6f966..7cbec6b0b11f 100644 --- a/arch/s390/kernel/vdso32/Makefile +++ b/arch/s390/kernel/vdso32/Makefile @@ -32,11 +32,12 @@ obj-y += vdso32_wrapper.o targets += vdso32.lds CPPFLAGS_vdso32.lds += -P -C -U$(ARCH) -# Disable gcov profiling, ubsan and kasan for VDSO code +# Disable gcov profiling, ubsan, kasan and kmsan for VDSO code GCOV_PROFILE := n UBSAN_SANITIZE := n KASAN_SANITIZE := n KCSAN_SANITIZE := n +KMSAN_SANITIZE := n # Force dependency (incbin is bad) $(obj)/vdso32_wrapper.o : $(obj)/vdso32.so diff --git a/arch/s390/kernel/vdso64/Makefile b/arch/s390/kernel/vdso64/Makefile index e3c9085f8fa7..6f3252712f64 100644 --- a/arch/s390/kernel/vdso64/Makefile +++ b/arch/s390/kernel/vdso64/Makefile @@ -36,11 +36,12 @@ obj-y += vdso64_wrapper.o targets += vdso64.lds CPPFLAGS_vdso64.lds += -P -C -U$(ARCH) -# Disable gcov profiling, ubsan and kasan for VDSO code +# Disable gcov profiling, ubsan, kasan and kmsan for VDSO code GCOV_PROFILE := n UBSAN_SANITIZE := n KASAN_SANITIZE := n KCSAN_SANITIZE := n +KMSAN_SANITIZE := n # Force dependency (incbin is bad) $(obj)/vdso64_wrapper.o : $(obj)/vdso64.so diff --git a/arch/s390/purgatory/Makefile b/arch/s390/purgatory/Makefile index 4e930f566878..4e421914e50f 100644 --- a/arch/s390/purgatory/Makefile +++ b/arch/s390/purgatory/Makefile @@ -15,11 +15,13 @@ CFLAGS_sha256.o := -D__DISABLE_EXPORTS -D__NO_FORTIFY $(obj)/mem.o: $(srctree)/arch/s390/lib/mem.S FORCE $(call if_changed_rule,as_o_S) +# Tooling runtimes are unavailable and cannot be linked for purgatory code KCOV_INSTRUMENT := n GCOV_PROFILE := n UBSAN_SANITIZE := n KASAN_SANITIZE := n KCSAN_SANITIZE := n +KMSAN_SANITIZE := n KBUILD_CFLAGS := -fno-strict-aliasing -Wall -Wstrict-prototypes KBUILD_CFLAGS += -Wno-pointer-sign -Wno-sign-compare From patchwork Wed Dec 13 23:24:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492121 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 F041CC4332F for ; Wed, 13 Dec 2023 23:40:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D39638D007F; Wed, 13 Dec 2023 18:40:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BFC686B049A; Wed, 13 Dec 2023 18:40:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 961F18D007F; Wed, 13 Dec 2023 18:40:34 -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 82B0A6B048F for ; Wed, 13 Dec 2023 18:40:34 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 35D3A140336 for ; Wed, 13 Dec 2023 23:40:34 +0000 (UTC) X-FDA: 81563416788.08.E06AB01 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf22.hostedemail.com (Postfix) with ESMTP id 0514BC000F for ; Wed, 13 Dec 2023 23:40:31 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=WP8t72Oh; spf=pass (imf22.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510832; 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=uWvuPPN5yMGUzijlzwdfjnYn6oWAG+E9+mRhNLF0PzU=; b=gHA7iYNO20HeL8vhhvyk7+Wttz2gqNeR/MdvpgJGGmYEBX+W0XtdqdeciIWPndq9eN0zii FAajzD9oAux1DyUuxtoaOFdiYEeUIhgP0onhrRI2SpPzDnYtkrRI0l9BbTT3o+xy5PKRyU r3fUzMTLIlYBt72ZM4Q9KOsW7vuDwHk= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=WP8t72Oh; spf=pass (imf22.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510832; a=rsa-sha256; cv=none; b=5dd2ZgpqP9w1S2p+vcDkH9aOBKSBmB14I8cSd76YydO4aEuzSSM+0j76bMJlk+FP/M+CI2 0UUTmjcmzSwQ50z6sQBRYYhZ4TvNS41Ta42JrHqEGA3yOD+AYQN2Csui/RjBsZLdDPUJiL Ij90LLABWQE7bOPnt7RvFcqs6zqiEOQ= 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 3BDLr4a2019480; Wed, 13 Dec 2023 23:40:23 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=uWvuPPN5yMGUzijlzwdfjnYn6oWAG+E9+mRhNLF0PzU=; b=WP8t72OhNaIzSvacn7nXU5/AjpTzQseze+jc9c5xggCQfG9sI18/LSi/A5e1V8Px1Y6m M1ZNgzho0bX70AP0C08TU6ffwHcSfuGmtQyUOwcgF5ltpI7lRzcMs680vti9B6yZXtet ZAwIImDghvvwUt8Pzihgck5Ml2k3Pr54R8jQmv21Q1JA5rLuLV7Y3FK3tJbvLomA7jlj pWYsZdWHFDiVWpW80UJcP8aypB1SFLcuVjQkFQVcG7Nivq/PxFN9h10pczfhtKL3hNeU 9bTdjvzRkSombKbAIa21+G0zFIzliyncnnkW6RvbAG0J9acVz2VtvAAhqpSdsa05TZrQ Rg== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uymwuj5vp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:40:23 +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 3BDNTnBs001737; Wed, 13 Dec 2023 23:40:22 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 3uymwuj5d8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:40:22 +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 3BDNMPKY013892; Wed, 13 Dec 2023 23:36:44 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw592c4gm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:43 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNafIt17695278 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:41 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 14B9C2004E; Wed, 13 Dec 2023 23:36:41 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9F2BE20043; Wed, 13 Dec 2023 23:36:39 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:39 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 20/34] s390: Use a larger stack for KMSAN Date: Thu, 14 Dec 2023 00:24:40 +0100 Message-ID: <20231213233605.661251-21-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: _KTup_EWxPhkC5n29RfmF3CCmvf4rKJK X-Proofpoint-ORIG-GUID: riNn7eVXpvOl0DpCewBLQEHSMh_RwdVH 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 spamscore=0 malwarescore=0 mlxlogscore=874 priorityscore=1501 impostorscore=0 adultscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 0514BC000F X-Rspam-User: X-Stat-Signature: rf9hfrdy85hk6oqj6bu1jdasafmdsw14 X-Rspamd-Server: rspam01 X-HE-Tag: 1702510831-387203 X-HE-Meta: U2FsdGVkX1/3LIXGJN/aAR9+42t6Q4+svRzsIHCtrq7ETJ6vkFdmJpw7/nHA20WBLQelvnN33JS2w1xJTYAybJ/2oiQk9ttKbv4j26SU7DXZdZULKwIB2PbkzYvdmmC/A+8zG/8oEQA7BYuI3BBSls5odUEPcA7DBQYOdyX+d5RSRJrHdgeTOC+fNclJqjI6/F+M9BkDOqYlAa6fRXcqp/Hs66HRVNGEShQ7Dpz/ofZBM2PKuWPvVk4Zo+NHUXwl8s4g3qwo5N+ILvfS8FeFQ0hMq1Jr8pPnp2lhibsNHGKTSyzkoMWr5fb0K3zDc0CA09aoDBbMmfy2dKA2NEAVtJ1nzf03RR6P0f0AaFzQt2ZaIZ6tTkijVwVWac3mehFZqaPeHCDgvNs/NqwCHJSdKAglz5QVBrYoGliy7+7v/L6+MgdieIDeH9KY2qtYB0SHQ0fq+YWCLI0kK+w4uvyB8LHQV7/lSDC2+3mM4cQg1L1Lkw/QrzajndnPChATidsuke9XnykwWO9KfLNvYAwd6uZMyVaEeavUukMt0QXGVdnYExJ6QJiATqzPMuZBj8SGIYSvFGRTIdpRNhItodHTB9lJJC0isKgYfPbGA9AhkLhy88AgSsY3yySzIOA2F0Y83zcJhCzXMtjQeopzoiIavk9AZto8OVjxN1G5RrGy6vdko6ZWvG6hokzI8gRgcv1xlXt5lMNrzwyYHQjPNSPKcpk6ihJp4UD8YVT/YJqxmUrP7exsB59+Wq5UQnbStUYUdKh6d4GSVvTxUS3/6bb6d2wfUvNfs8D0ef8vEKRAyQPqj3x5m6U/TB+bstqFUwVCXPd8rJ79H7EgVpd3KOS9guoskWKwSICdKV2oWJSStmbH36x5ktWgjiXKtogcrij+CjeIQlK0Jbth9P5xY8WLRr/dUuzpju8t670GZG7MpNPX2zLO6qQBr4q2WHZd9H1WOO0ltTitiLYuEdWnbQl +QkWs4s9 wSXn9Tcg90zXNfAUBv++cBRO+j0PLAaelCs27cD3r8nQ7yjfM4za1L0zJfcyfxYWviTROVgUdZEYPMMGhW639qowtVqQ5k7B12UaVc4U+1NrMc7T8GUbDeGKL2mONlZwW0s/kJmbET0vRjXXcpzj3gedwfeyAyhFYeYlHZ8Jxsvyb5uupIU7PSYhP3Vht5nt32wLbvThR6zgyHBMCMYq7k6dx6LXxzhj3x0ALpQnOgqMNGVThm91KYI4BuvnaF2Q/jj+SvpzA71SHltvL0X1Uih+WoDzdDnt+ki/IDsTjWzLINeok/UNOaO85gEJv9gavpkyhrhE34lDqZMo= 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: Adjust the stack size for the KMSAN-enabled kernel like it was done for the KASAN-enabled one in commit 7fef92ccadd7 ("s390/kasan: double the stack size"). Both tools have similar requirements. Reviewed-by: Alexander Gordeev Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- arch/s390/Makefile | 2 +- arch/s390/include/asm/thread_info.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/s390/Makefile b/arch/s390/Makefile index 73873e451686..a7f5386d25ad 100644 --- a/arch/s390/Makefile +++ b/arch/s390/Makefile @@ -34,7 +34,7 @@ KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_DEBUG_INFO_DWARF4), $(call cc-option KBUILD_CFLAGS_DECOMPRESSOR += $(if $(CONFIG_CC_NO_ARRAY_BOUNDS),-Wno-array-bounds) UTS_MACHINE := s390x -STACK_SIZE := $(if $(CONFIG_KASAN),65536,16384) +STACK_SIZE := $(if $(CONFIG_KASAN),65536,$(if $(CONFIG_KMSAN),65536,16384)) CHECKFLAGS += -D__s390__ -D__s390x__ export LD_BFD diff --git a/arch/s390/include/asm/thread_info.h b/arch/s390/include/asm/thread_info.h index a674c7d25da5..d02a709717b8 100644 --- a/arch/s390/include/asm/thread_info.h +++ b/arch/s390/include/asm/thread_info.h @@ -16,7 +16,7 @@ /* * General size of kernel stacks */ -#ifdef CONFIG_KASAN +#if defined(CONFIG_KASAN) || defined(CONFIG_KMSAN) #define THREAD_SIZE_ORDER 4 #else #define THREAD_SIZE_ORDER 2 From patchwork Wed Dec 13 23:24:41 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492120 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 ACEC8C4167B for ; Wed, 13 Dec 2023 23:40:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2AECF6B0491; Wed, 13 Dec 2023 18:40:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 1EFAA6B048F; Wed, 13 Dec 2023 18:40:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D34B06B0493; Wed, 13 Dec 2023 18:40:33 -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 AFD8F6B0491 for ; Wed, 13 Dec 2023 18:40:33 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 9114E1A0B63 for ; Wed, 13 Dec 2023 23:40:33 +0000 (UTC) X-FDA: 81563416746.10.89F1931 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf16.hostedemail.com (Postfix) with ESMTP id 5AD2718001D for ; Wed, 13 Dec 2023 23:40:31 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=E2pyhrNm; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf16.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510831; 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=j2GQd3hufGtxn26BXfXN2VPH4hRg4OAPUwhi4unL9oU=; b=uNRglr5TkJWHw3d+q/guG1Cfq8+igAkF2mfkEGqztgQDmE7wXO5kDXpTdjE3LOqlIfmZTz qgH+RkHVzJZgcz/mmVhLFS+Skd0N6vQKC8+FZlatk/OV+NOr4bD+wvkKttjfe4ipV+axPh hf6C5z9n/h2wEfkZVT/O9IsSlRANaHg= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=E2pyhrNm; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf16.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510831; a=rsa-sha256; cv=none; b=QngA+wzjOGZKvM7dYjz4rjMJzNFdbu/yjqqOpcxOY5jKvCIufX0+2SPhtQuqdHrDNWi5mb TaIYXrGr2jUDAc6jeiSbHpuSj2/g/ADLGFqhCdE9aPbePPtDjDjTBHV7JL6v5tGvJnWmsR sGCxuatIl56IpJ257jCr8D6EZvsyoJ8= 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 3BDLrAsR019617; Wed, 13 Dec 2023 23:40:23 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=j2GQd3hufGtxn26BXfXN2VPH4hRg4OAPUwhi4unL9oU=; b=E2pyhrNmMiCiIfKvy5Wu9ZXem6XPay3FyNo5qwlGIT/0LHK9OCxWPuP7zXXyoM1uBxzb CExYESQ6SfdSd+Wz//xv29DKleH/XjFqe8uIkISc15UM91Zp9T9bApRfTmWgff9eSyAh xezoN96f6pel6IiNLbpEPXnz6RssdMdC99v4RlznhtskMs5aKl6SlvKBIfXj79JMTFFY gFncANGncIhR7TqGz0kZ1vFcQXvyyp7n8YlBrTukV1WL2undZL5v7bGG7np1ShTWox13 mDYp1PmuOvVLbT1d6aUcLvbcPcB5hpmfKPfzOqvmrteon9uCYu9EUOiw4eOt8mZ81zO1 dw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uymwuj5vm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:40:23 +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 3BDNeJQj027678; Wed, 13 Dec 2023 23:40:22 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 3uymwuj5dj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:40:22 +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 3BDMuGjx005066; Wed, 13 Dec 2023 23:36:45 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw4skm9x0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:45 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNagMJ15794750 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:42 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 941F220040; Wed, 13 Dec 2023 23:36:42 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2E23F20043; Wed, 13 Dec 2023 23:36:41 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:41 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 21/34] s390/boot: Add the KMSAN runtime stub Date: Thu, 14 Dec 2023 00:24:41 +0100 Message-ID: <20231213233605.661251-22-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 4lAACWdvN8WbBuqQJ2B2W7oAjf4WZHdM X-Proofpoint-ORIG-GUID: -6xNZk1Ck_XK02XybYIjXFr2nKMVO1v3 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 spamscore=0 malwarescore=0 mlxlogscore=999 priorityscore=1501 impostorscore=0 adultscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 5AD2718001D X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: wqboropkf651g4d3at8uz9getti7ks9u X-HE-Tag: 1702510831-270956 X-HE-Meta: U2FsdGVkX1+Nf3knwEPXTdtOq0XtLy5cpqHbLLuSTTKH0SZ9hdtFhFHI3tgcSNZwsLuJvx8Rd+vSn/aSM4bRDcwIuMToA1acktNOLFm5UW34Dj2TAckgJrWpkw7iY3PdYlpL2WzmkwdUC+bqbkMl+D6JriPw38Trey0A0A4FtLk2DMYp113KzeESYinCutzqkLmzMotITIPnW1ffAQoFK8vpGgQREBGKglgTCjZrMNcjuZlTKpLF/zDBBa9yHX5FiF1HZFBjCRRJel4kPbvA3RRqyEp9jNrtRdIR415rNMznPJvdKUetZS7Jgw+KEfGkQUzaLQoE+8XIC9z96DTVhiIhNa+a0+6Fz1lzS1G4cuF5oiK/5cvo7e/OaPRpyCeloK47xrP8kIVSKKisybMOLn4Tnu0jPif0lxZVPYYVwAOFz03vsEdi/Lnm9hYX5bUHHr/1Zh8yTThtikzv5XHiKFHFPShysA1o0t+NtrR2v47UUxJ0VpxGcH2K5L1rSTQNgK+2KQknYMDCeIH6XsAWwrIa155wrXH2tBUsYjFXtRtnrsQTheLW4AMLEaxAKsFbCI/eylyBu5yjL/vcTrYPAkGqLk+Nl9HtF1ixwSpeVbZefTfaTnG/tuQK2tBn4cWharoFJjdHaYm9mst+XpN7pg2V+cghRdYJhQU3Uvu95/slBCNEc6fuMOVWil8SQyjlup48qxlqo7xGs83MjJ1V81wczpQ7p7/3e6KdDHKkSpH4Y5s2XCjAtKfUwkcPudxTKapnOET55RH359t0lfpBu1IT4hgrkZ9o1AA0AvMA3Dkjxh7/YQOkSXv35FrAOItS9B8K3r//tk9OhgXw4i51EKE5cnI7Fl1t8iIt6I81lMAu8/h9M0vF0e8y+ep/bCiYUd6dtZviBNYiUW0jVzMDOEftNWjdqnakwzcdkEs0lfwV0g+W2X+c39ZXi/aAgkhd6qto1UDSMpbcXv90Mke jdzWMsTo qelR+ZrQBB00Vf+3Ry68rjL3KXm7eLALO16hqXXTUGc///+A6I0AuD8X5jIZJ+M6CN2MpzGGHas33DxcnvGrTEMefbwBJPFtJyJj5bvFMH5b/P4Jxj3ClOLhmj7S8rZqA6CoGcwV5/4x2xZ06s7yPj35DrkrDcz6Ir/eqQ+U1DVBJepPi5Nckq1w34spEmQQlP6lGcz6HA4hlaaZmXTpaGmKbxUaVLxVVI4W84htDkBhGke1TZwNQltuBLcOB8ZuKGqcG+l3GLIv81nnEzu0I47IAPzN7NEDYcj2tAyFPDXfnPkRYOc67kgxFQMXJOKgObBlwppDK/PGa3F4= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000007, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: It should be possible to have inline functions in the s390 header files, which call kmsan_unpoison_memory(). The problem is that these header files might be included by the decompressor, which does not contain KMSAN runtime, causing linker errors. Not compiling these calls if __SANITIZE_MEMORY__ is not defined - either by changing kmsan-checks.h or at the call sites - may cause unintended side effects, since calling these functions from an uninstrumented code that is linked into the kernel is valid use case. One might want to explicitly distinguish between the kernel and the decompressor. Checking for a decompressor-specific #define is quite heavy-handed, and will have to be done at all call sites. A more generic approach is to provide a dummy kmsan_unpoison_memory() definition. This produces some runtime overhead, but only when building with CONFIG_KMSAN. The benefit is that it does not disturb the existing KMSAN build logic and call sites don't need to be changed. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- arch/s390/boot/Makefile | 1 + arch/s390/boot/kmsan.c | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 arch/s390/boot/kmsan.c diff --git a/arch/s390/boot/Makefile b/arch/s390/boot/Makefile index fb10fcd21221..096216a72e98 100644 --- a/arch/s390/boot/Makefile +++ b/arch/s390/boot/Makefile @@ -44,6 +44,7 @@ obj-$(findstring y, $(CONFIG_PROTECTED_VIRTUALIZATION_GUEST) $(CONFIG_PGSTE)) += obj-$(CONFIG_RANDOMIZE_BASE) += kaslr.o obj-y += $(if $(CONFIG_KERNEL_UNCOMPRESSED),,decompressor.o) info.o obj-$(CONFIG_KERNEL_ZSTD) += clz_ctz.o +obj-$(CONFIG_KMSAN) += kmsan.o obj-all := $(obj-y) piggy.o syms.o targets := bzImage section_cmp.boot.data section_cmp.boot.preserved.data $(obj-y) diff --git a/arch/s390/boot/kmsan.c b/arch/s390/boot/kmsan.c new file mode 100644 index 000000000000..e7b3ac48143e --- /dev/null +++ b/arch/s390/boot/kmsan.c @@ -0,0 +1,6 @@ +// SPDX-License-Identifier: GPL-2.0 +#include + +void kmsan_unpoison_memory(const void *address, size_t size) +{ +} From patchwork Wed Dec 13 23:24:42 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492066 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 C0E89C4332F for ; Wed, 13 Dec 2023 23:37:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 878398D0075; Wed, 13 Dec 2023 18:36:59 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 801C78D0074; Wed, 13 Dec 2023 18:36:59 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 547188D0075; Wed, 13 Dec 2023 18:36:59 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 3C48C8D006B for ; Wed, 13 Dec 2023 18:36:59 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 1DD931A094A for ; Wed, 13 Dec 2023 23:36:59 +0000 (UTC) X-FDA: 81563407758.29.9C65DA7 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf05.hostedemail.com (Postfix) with ESMTP id B9C26100014 for ; Wed, 13 Dec 2023 23:36:56 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="qsZ4KP1/"; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510616; 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=0l5iE2aLZJPiZ5kg5yzJ1JpoP+UbHI6+msMolAdWlWU=; b=Bxy2YBBQ5J6r+oIGBcCvh65bAE3285odrzO0PHdcf7DtovG/qNCFoiaL85pvrRKi0fyPB/ iyGVeGlj7XWWt+wx7qpZb/35QnwfYurCG9AG2fGPKQi8T+Ig0BA64mD6XYrjepSWArk8lV Veq2OYBb4fGWE5Vx4m3H4Lbqp3UIcxU= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="qsZ4KP1/"; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510616; a=rsa-sha256; cv=none; b=Fey6keODZ8+XjL01jV2OAZS7PQF9imT9DGZeRwbhAl819mSJJRkTV312jwQN7Tr6gJg90S 1b/T/mxKVvPjayqxczgUsKqT3duIIdold8rGBdlKqH4am0bxyAYZNCv/fVFMFLKCso+TfI lyqSiYmtHavZf8SWX26mTfJRp/QyFXk= 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 3BDNWvNe008721; Wed, 13 Dec 2023 23:36:49 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=0l5iE2aLZJPiZ5kg5yzJ1JpoP+UbHI6+msMolAdWlWU=; b=qsZ4KP1/0A03tQiz1OpxhzuNY16G04qB9wLpGfVC7inEyHnnHafFjBducukNVMI7x6k3 ZQSUapacB/dM1t7+RfGFFOr5yVOispIhDw4BmbMZP9GpvqSLLyDbIf6M2YGroRZwMRji 7RXHjyGb7cCcnNq+Kbb5AwJyhypLV8ZIjJAFDzqZQgjpNfl167N1SEY3nuyOFBs4+KWT Y3O0eJ7jFWXF2J7PxYmi+ZaaGI0LcZeBgs1tjJBhzE3B06aplc3fAN6pxhHOV5Zsb0Q5 3LvPM8WAdJWz21yR4Y+DOI+1IM4/uxKUUwqQb8+Rr16fvi/iToclFbJnvsbIv1B5rj1f VQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypce81ws-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:49 +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 3BDNYKtw012549; Wed, 13 Dec 2023 23:36:48 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 3uypce81wa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:48 +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 3BDM1JcB012599; Wed, 13 Dec 2023 23:36:47 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp4n9v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:47 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaiKq19071496 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:44 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 1BC152004E; Wed, 13 Dec 2023 23:36:44 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id AD91F20043; Wed, 13 Dec 2023 23:36:42 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:42 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 22/34] s390/checksum: Add a KMSAN check Date: Thu, 14 Dec 2023 00:24:42 +0100 Message-ID: <20231213233605.661251-23-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: MHKnPyW5x6icSzfPHJK27c1dMynNcUTN X-Proofpoint-ORIG-GUID: na0tv6_fX2z243noK5Kk-h_zifB4EtHz 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxlogscore=863 lowpriorityscore=0 adultscore=0 phishscore=0 mlxscore=0 suspectscore=0 priorityscore=1501 clxscore=1015 spamscore=0 impostorscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: B9C26100014 X-Stat-Signature: znxbr3m789ituw8kdqy74cft8rmu81to X-Rspam-User: X-HE-Tag: 1702510616-744761 X-HE-Meta: U2FsdGVkX187IbVh/cZgi/ZDoaRhBxBZ1hfZoevpyuDSdb+Xs1FgIkj3ukKvwYdCIezGl+1Pof++5xqYbuLyP57A4SwDo664/7rQJ5QXNb4NdJWRhwDUF3iXgsptxvyJgczGBREyzteSycIAtYhINoh+Ys/7S6UJJFY0dvKzM5I66ZH4dnJZ951CzN0UcJ0purK4Dfi+cq27X/UcMkxbUBneRWcTjGMwI3zs3yjQtxsQCNwsXuXSmXZoEFQ+keQV9jU1dF1fooOODagPXfdTvFKYn4bKDGrHeP7fAZ3V6kIfKhCFo/xkhocGiZyByZIzhSi8tntyLQIaKoEQKwTxStvZ9NCI5ZNq6blGPiNRWCa1zrgCAjlGvaUepb1i9MJ/DeehOo1parmSITJRB18OqHd4FSiPmAXfQVYvYULLgWpe6Knc4FQ73iIVuSgsdskdBEbNvlBB8Ag/3tVDyYnkHns3zvqw4YFzfUohyyhcvedYfSmHUNwL1HZUA+CJiVZUfiFbP8ToH10btmfHYO4TYeU8VWFj9HnJZMF3M0QHOfwawvlTfmwNRnV4Ro0DuJ27dRCEOB2WY9yFTNKNfcuBXWIzyC3nGKpU400NTU9TIQVjMz6vbtOWro4OgfRl5rb5LssXrmIRgqMWVZK97n+AyXyEE4/EmzwPaGdH2G4uFRKp6/LWN+4IvwIRXXsIPuyFkomAxVnFd7JIopa5vdSwUWRoe3drE1OSvE1a0k47psYoBLgGbEg1vDurANF5zPMOx9fyZY31ZGvY6x+G7pNpMS5GHWPpgETOle9msu5d+EafeHoalx3A8JWWL5b4YYlFxmZPiqmrdUunTOr9czMxwuj2xzPUqfRHW5xv1JP1MJAAyFOZj70yLaGg0+PYZU0hPy0OU7YNLpgLng4lbuiqaVe5chIteOeJYEVjbjpBeJUZt3LM2FVg4qAt6ADZU46wxmUbcIJXTTAWxmTr/Tv ja8DVpQ1 ooiJAdOZen9BcLM6ACJrlEvFJu+ZRAQylBkhSUE+tnyiVbXoxFg359bl9rdthlGtlo9EfBSnHWSvoKYDnaqL76nOKWlTZt3tYTS+MSVZkBH/2aYhctmJwBIRrg+LDSEkb43jY0rQw2YYexg31sSekBhXtmfRFWW3vkcESM9m6yFe1ulE0ex9Pnqae13maoFnfujvIVx7uCn7RhXVbLCyIsnO3YmQ9LSUXFk00iITi6bDk4+69UNS0FyViVQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000003, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Add a KMSAN check to the CKSM inline assembly, similar to how it was done for ASAN in commit e42ac7789df6 ("s390/checksum: always use cksm instruction"). Acked-by: Alexander Gordeev Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- arch/s390/include/asm/checksum.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/s390/include/asm/checksum.h b/arch/s390/include/asm/checksum.h index 69837eec2ff5..55ba0ddd8eab 100644 --- a/arch/s390/include/asm/checksum.h +++ b/arch/s390/include/asm/checksum.h @@ -13,6 +13,7 @@ #define _S390_CHECKSUM_H #include +#include #include /* @@ -35,6 +36,7 @@ static inline __wsum csum_partial(const void *buff, int len, __wsum sum) }; kasan_check_read(buff, len); + kmsan_check_memory(buff, len); asm volatile( "0: cksm %[sum],%[rp]\n" " jo 0b\n" From patchwork Wed Dec 13 23:24:43 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492069 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 6414BC4332F for ; Wed, 13 Dec 2023 23:37:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6DED56B016B; Wed, 13 Dec 2023 18:37:01 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5E1858D0074; Wed, 13 Dec 2023 18:37:01 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2D3006B016B; Wed, 13 Dec 2023 18:37:01 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 143688D0074 for ; Wed, 13 Dec 2023 18:37:01 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id EADBD1C1543 for ; Wed, 13 Dec 2023 23:37:00 +0000 (UTC) X-FDA: 81563407800.15.9EDBAD8 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf29.hostedemail.com (Postfix) with ESMTP id B6A49120024 for ; Wed, 13 Dec 2023 23:36:58 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="Rl/rKJ6n"; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf29.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510618; 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=45Nhhyp6yS18GqDvv/f0pUsyfshJSMjjruM4ZPbayJI=; b=1kjtN7B685hLjo/j93c5UrW1Pz93mLURZi4ERMEvBEN4S9sfoDoEnkSU960urXhjaLmx2L EjOQU/8+mesA4vHezpo87VrkbCKBA9qkVsgaRYbJwf8KYMKiU8xNwZ7ScpUdRT9hmbvrwm zYtvJ6ckCfVeRJ19TQKvX03JuuJ9GLQ= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b="Rl/rKJ6n"; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf29.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510618; a=rsa-sha256; cv=none; b=OXDV0XTGWynuSb+slZYjE+Enuch/DMR16Qz1SQYFbePVk+e7hCUW3lD3+P57oWMvDhy75x JfyO4DVb8CSn8/r3MzGzKTndpaMPW9NyJugyTGMEgiReAa7i+tsIV5wcCbdhQNWYgd08wA B0CouCPkbhQViNDLzvKjKZUEzg72FWU= 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 3BDMNCmT009101; Wed, 13 Dec 2023 23:36:52 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=45Nhhyp6yS18GqDvv/f0pUsyfshJSMjjruM4ZPbayJI=; b=Rl/rKJ6nkVE2aRxzyYavTcSsPfVKwM6J5kCi+1n1VRpgnEGYNbuoHoxzv+5dB8qn6teW 9n/4c1YPv7QIayZNsmMDLjmMRrv822Cv3fMHcYbHrvQU+ohVTmAjqOMm47pdhS/G3iDj xUpznYpzu+OCnQjzW6ReqLnAdLnhgdCsuCdRsAadVUUxqZIKzwWDh7k/S+kk8bTq6YOh 4d/YY5ZXWhq2t8a+8KaF47eiicYUYnA8bH4GMLCBSKbEqgKLnQBKVcUOJ1uqFgXFXKLq yCMUUURBAUAPwvpoOa97uHGoZQ5a3AaM0GQypqkVUPlpAg35JTWiecReQpHntxMoTAU3 GQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uynbt1cyf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:52 +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 3BDNPaWh016517; Wed, 13 Dec 2023 23:36:51 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 3uynbt1cx8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:51 +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 3BDLqJBT012555; Wed, 13 Dec 2023 23:36:48 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp4na5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:48 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNajA143975038 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:45 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9BEF220040; Wed, 13 Dec 2023 23:36:45 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 34F8220043; Wed, 13 Dec 2023 23:36:44 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:44 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 23/34] s390/cpacf: Unpoison the results of cpacf_trng() Date: Thu, 14 Dec 2023 00:24:43 +0100 Message-ID: <20231213233605.661251-24-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 0dfgWLOx15d8NabICqrWpXu-GD2TJBSN X-Proofpoint-ORIG-GUID: YuP1Sp6QRPB7FpPhup6bxOwBsE2f0Wqq 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 clxscore=1015 bulkscore=0 mlxscore=0 spamscore=0 suspectscore=0 impostorscore=0 mlxlogscore=768 phishscore=0 lowpriorityscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: B6A49120024 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: ikcre6oxsgx1jyqg7kwornxwbsxnewnz X-HE-Tag: 1702510618-278738 X-HE-Meta: U2FsdGVkX1+Rmgr07DbATEIBgKoCuD3ntGEMo/mfT8m7GwLfVkTAHUCSS9EVycxOc4fozJM3A2eaSU5baCbnlk+T9Ket3kaGbgj/wMziT12lOw4J2VH6HDuXmALM3b/BK082qvGZe7WnLCPh/QMcipl8U/e6n22z6DtB2n/cz9KDTSs6mDIylF6JrL4RsTCyTA95Ob9GoYXlFRxanaTeb9iqTUbG3hfq2zIX7nQaS+xpZMCSkRdaOmvljNyRw6URDFWYl3gVc/Ll/XlbDsyo4b4BJdpphTf2RZ7PG76atOkGw6RL1osJ1esqp/N062NHb3J5YNGCmXlk3GaFLzWBZPeH9A8QHb8w2NqaniNd15YLl44WptjAxr6jOdFgrBwCGGqZIDq9zxGLun1qhSrP70ff20piBFJ9coMLJ/OSAD0wZ7h2AXbnF5PMoIKHc3mFuidhgHCkFaKDNMTXfzQ9nIJcmKqAPCRtIV04G/JKjxuL6VW6rkYu0vQHlqTJRGQD5Gq4RSsjry+TCmQBZDXxDm3Ps0ck5hexyR85HHRpwdHO/Z/z7UitLsuydmWpWToflhaSRMU3vMOgPmLA8DdrY/yddqyMPzylZhtKecRGABZm0wSEtVrTpu9Tw/PbJz8Q7k4W2Y36Pk1Gb61Of67778H3giyL3oeLyO3AY18RLsY2Fxc7IkfDDtEuYhJbZM+a/G/eZt3N5OzQY+pfZvFGJfjCJq8KuCk8w63r0BkILsrwsK8t7K+eDf2DwWANff6afbqCdBz+XDDfBepquojtNsxY4/CAdWFdBBFRuG745Tb2sPmiuFY0GN7eSYxXxZxAeZ0YUIfRSSpaYhPIESlNFJ203j0yNssPIv66mnuhIdhVhqqibfMxOVmZ4aw4ix2jV+nTaCKuA9aypyyh/JLnPteuZlodJatFuuCCGjiDYkYMVVz9Th0PkyIShOKVzBFI43Hm7R3NUDkyDCAoAZG vZ35WxYS Mg1f94s1QZnRxSgfwywvxg0s7e1kX+uelQK/jSKGxFb3bBq26e+fv37L3n2yQdiGMXqDY2H6Znr7AbXxPoE/4HdkaBUl4tynibP7xaH0sGhLbFiMVTioI5UYqNvRXN2bn01+8m1x1nYEhpzKAtQ98AnDugAjBv7mWrpuZ3YW8dh7Bj8sWPveYJZv0gx2Jmui/SiCZkis/2B8qLpN8nNUmHuIbqeHqZniy/ouqgq40Cu4eHKBpIbU7PWy3rvT+5lVZMt3ZluQq8lVrG4WYMZh+EvPZkS4M3Gg/fcbE 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: Prevent KMSAN from complaining about buffers filled by cpacf_trng() being uninitialized. Tested-by: Alexander Gordeev Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich --- arch/s390/include/asm/cpacf.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/s390/include/asm/cpacf.h b/arch/s390/include/asm/cpacf.h index b378e2b57ad8..2bb6b4e7e082 100644 --- a/arch/s390/include/asm/cpacf.h +++ b/arch/s390/include/asm/cpacf.h @@ -12,6 +12,7 @@ #define _ASM_S390_CPACF_H #include +#include /* * Instruction opcodes for the CPACF instructions @@ -473,6 +474,8 @@ static inline void cpacf_trng(u8 *ucbuf, unsigned long ucbuf_len, : [ucbuf] "+&d" (u.pair), [cbuf] "+&d" (c.pair) : [fc] "K" (CPACF_PRNO_TRNG), [opc] "i" (CPACF_PRNO) : "cc", "memory", "0"); + kmsan_unpoison_memory(ucbuf, ucbuf_len); + kmsan_unpoison_memory(cbuf, cbuf_len); } /** From patchwork Wed Dec 13 23:24:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492071 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 70094C4332F for ; Wed, 13 Dec 2023 23:37:20 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 766648D0077; Wed, 13 Dec 2023 18:37:06 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 6A29A6B05A0; Wed, 13 Dec 2023 18:37:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 457758D0077; Wed, 13 Dec 2023 18:37:06 -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 2C3BC6B059F for ; Wed, 13 Dec 2023 18:37:06 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 09249140336 for ; Wed, 13 Dec 2023 23:37:06 +0000 (UTC) X-FDA: 81563408052.02.EE6BB4C Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf05.hostedemail.com (Postfix) with ESMTP id D92F910000A for ; Wed, 13 Dec 2023 23:37:03 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=jnYe0A8f; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510623; a=rsa-sha256; cv=none; b=Vt1OZML20/jM00n+4PeQlonn/Jsm99Uipsn30qLSAi430wzaGt6mc5coSwynsBJ1HcHhBK KHVKOD6lnq4ljKCSjf+pN0xELCotltpdeoFY+M/tXjjzdz4A8r7T1XbGJ9vzrCtp0/pmP8 SghfxHSg5zSUxn5CcbfQcUuc+Mmi5kY= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=jnYe0A8f; spf=pass (imf05.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510623; 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=WBZ4pxSCZ168xcDVwjX2FOwBhQlGhgRwo9SK59J+9m0=; b=Dz8Mxd51WxlluWCc81q/Y+lgc1KrI3cCdj0iqPApRCX8jJQOZQtu4T4aps1k9eINzUtHvE pcElEc1/ldFOyWrCG/CXJOjnN1IfTsjsi+24mAHHwRf5AyjmJKKTuOeb+t1gmwu/Y8sPkB cgCP97BgnJ5aRDzvosoUgn75IKQcfhc= Received: from pps.filterd (m0353723.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDMS9rP011054; Wed, 13 Dec 2023 23:36:58 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=WBZ4pxSCZ168xcDVwjX2FOwBhQlGhgRwo9SK59J+9m0=; b=jnYe0A8fcI8iL1hPXGZd8lhX75MyTpKgpduKpfvfxaGdim+EgKDkTUJ1ZdTaPoEKqbS2 iUIm7GKB/b1zUmZvX+i5NzBC7pk+1A/vbRk1QaiQj0VsSyIGZLEaEp3kLXNJk1LfThB/ foc9XHDRLkez906tm8BSN0Z/sz5t8Ez51HxMeGllg/iSXx+ONtPMbsi/gb7qaqFWwCDe 7Z5ybO1BYJqMR40OUDb5W0OkCrFxeV2xzq7xtsVZrtOI686ndX9pbiDnIVhEwOgGjkce cU2+FmXLY703Saq+qDnRHZAY6tyaWTJlpJg9zDcQr5uwsu2camM+YUYcnAhh8sO6TlCj sw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyne61651-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:58 +0000 Received: from m0353723.ppops.net (m0353723.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDNJSMP013370; Wed, 13 Dec 2023 23:36:57 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 3uyne61632-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:57 +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 3BDMqU2g004701; Wed, 13 Dec 2023 23:36:50 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw4skm9xn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:49 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNalXP13173362 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:47 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 277CB20040; Wed, 13 Dec 2023 23:36:47 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B61FB20043; Wed, 13 Dec 2023 23:36:45 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:45 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 24/34] s390/cpumf: Unpoison STCCTM output buffer Date: Thu, 14 Dec 2023 00:24:44 +0100 Message-ID: <20231213233605.661251-25-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: YiKbpWQLLwQUnerv4xUFC7hQLzJO51wl X-Proofpoint-ORIG-GUID: 8HJohiuwzOsfmPazVmpspQiv9nH_OTSY 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 phishscore=0 clxscore=1015 malwarescore=0 mlxscore=0 spamscore=0 bulkscore=0 mlxlogscore=942 lowpriorityscore=0 suspectscore=0 priorityscore=1501 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: D92F910000A X-Stat-Signature: iw7ydbhk67a5wpjahmukpzzwzuamw7yn X-Rspam-User: X-HE-Tag: 1702510623-770938 X-HE-Meta: U2FsdGVkX1+h2JLcl1dVFte9Jx0LkJn58atMD6qxYCra+5psrKBMTyI4tUcEwk8ye7OXgoPYecbzDGX2hTlITGRO2autqAxeAPqctzW0ljZjmOaAQpjtv/WrgtYSwez/O2H0C/+9Q5CxS87C77OdURDzbjv44hKz0LtS2JRuUo0Y63l8xVNQpe8UpO7AeUmGEJALy7RY6EejJIXaC2MOSTLnKE4n9ikncpd9jrRx/xHuN0d44KJMDEccoQ+8HnDNNX6zh18ge+m3QAt9MMQzUGqYpGnuOwiq1qRppL/jHc7eVVX2sVbXxpcYcbYBrmfYqF2svLBva2slaQaqtLWxpLiYm0LDVMLb1cEVS7cpaEziDIy96iblSpxFYESu4OUEEcZiW8IR0qZmy0YxZiypYfsGwXLmPAg/U7nv85vL7VTkWwpGen7cO5Vx3nyTHezRCPRzTmRzQuFjjfyZg/vIGLb+7aw1r8cmEv89Ghc2m4PUTO4A5az8MGHKLsh55zc8kGOQWe+kSQerVrMxezESVGGNI+mIXdBvBnUe7J34WwT4pat3+1K5UAfGjy5sWCHvb7Qs+hKRj4GLIJl8Beqcf/RqAdU2wkjHHv7RcuGZ4i6Lge5Z3h5vVSAqwU8rN6RjfKE7psw5DYjA+qGERK1z1755/4+OJyHmAFwTlMe6bdgzpcXNukAIhAmTU+KEeBjwFen2MqzZoqw4nC12JZmyZ9g8rzQCu4C3XL1xcgvkJSGaUgXQXgNgz+vuwsrw89OzZd/pBAkBMXnaHyjv6nL9M/0Rjv1qOCHWP4/lp7tdkgHwcrWxotT9wcxORnBoa35TZH8He/JXh8tH3F5UEpDR3Hab/rhJgSmv7mIFjIjeO2nPQVITmxFSLKLA7FpHMaUbPbTr6Pu/oAS6X9Wffal4deLUiL+0JKZnUSOgPBhi04EOLwZ/kykV9Y6HQw9But1qK3unfCxLQaJG2bOiM4B Omp8va/G Q0fXM5Y6cAqTZ9LwYFrSQPDCpBy7uT/pumbJ0mLcT6K097UavMH3jwnvfgcjpRha6O8sIW2kWdVPfyO+AJGfoVcwallvwL84tc3Xx2fGIVcrAlqVV82LjWri2wtsfUB26xannCwOv4vDE1n60BKQvsbZKGNJNmdE5SVU7SdBgZrRIAQjBqzEApXvhlfGVxA1YubHx7Oxok3Iic6owZuLSE4UcmL4g9dVqN7hpPmbIPnGlsenwnngHGGCWIU1qmJM+Ne9hLeudldDPSh8zlV5QoeemGJHMptNLYSKLC9c57FxN44YRPfotHhErke9nvh8bs6mpkS/95zlQ5WFAz/trbnIgbQ== 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: stcctm() uses the "Q" constraint for dest, therefore KMSAN does not understand that it fills multiple doublewords pointed to by dest, not just one. This results in false positives. Unpoison the whole dest manually with kmsan_unpoison_memory(). Reported-by: Alexander Gordeev Signed-off-by: Ilya Leoshkevich Reviewed-by: Alexander Potapenko Acked-by: Heiko Carstens --- arch/s390/include/asm/cpu_mf.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/s390/include/asm/cpu_mf.h b/arch/s390/include/asm/cpu_mf.h index a0de5b9b02ea..9e4bbc3e53f8 100644 --- a/arch/s390/include/asm/cpu_mf.h +++ b/arch/s390/include/asm/cpu_mf.h @@ -10,6 +10,7 @@ #define _ASM_S390_CPU_MF_H #include +#include #include #include @@ -239,6 +240,11 @@ static __always_inline int stcctm(enum stcctm_ctr_set set, u64 range, u64 *dest) : "=d" (cc) : "Q" (*dest), "d" (range), "i" (set) : "cc", "memory"); + /* + * If cc == 2, less than RANGE counters are stored, but it's not easy + * to tell how many. Always unpoison the whole range for simplicity. + */ + kmsan_unpoison_memory(dest, range * sizeof(u64)); return cc; } From patchwork Wed Dec 13 23:24:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492146 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 703B4C4332F for ; Thu, 14 Dec 2023 00:33:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EB9236B00A3; Wed, 13 Dec 2023 19:33:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E6B616B00BE; Wed, 13 Dec 2023 19:33:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D09FF6B00C2; Wed, 13 Dec 2023 19:33:08 -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 BC9E36B00A3 for ; Wed, 13 Dec 2023 19:33:08 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 82CA8403B2 for ; Thu, 14 Dec 2023 00:33:08 +0000 (UTC) X-FDA: 81563549256.29.9BB2499 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf03.hostedemail.com (Postfix) with ESMTP id 4C79E20002 for ; Thu, 14 Dec 2023 00:33:06 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=mlUMheq4; spf=pass (imf03.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702513986; 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=/1f8B4egk4r6fv+RsYfCo9KqsjTFkCnbhVG41i9k7hQ=; b=5XASdeqII1Mn7yMUm3bkFDjPmB6w31NYxwkSh7UX1QwcNsNDPMQYHWq7lbP+FtbmnGPhEu moEIAya27UdBovvdkMoGgVNCNtvwvsd6ow1so8rfUOGPpAUnIcVc9KQthlsMcwNFe2sOiK W6xQdyinQi/RqCkHWkOnBGPm9spmjvg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702513986; a=rsa-sha256; cv=none; b=NPm1Jtg+/Ze/dhLwifVyhk8+qfikxZLfUsSyzI7UVnLcvT95dzr0tQydKpgDgu4HHr221Y MnvYriQ795U7kK52I3Vemblgw7YKwAhPFXX+rIc/Ow7SM5LnEwQxZRNrBeY0OQTAIY6AoF /vql4/gnvdEtmWUKoJW5wxpKoH6qT7o= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=mlUMheq4; spf=pass (imf03.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDKrEiB021636; Wed, 13 Dec 2023 23:36:53 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=/1f8B4egk4r6fv+RsYfCo9KqsjTFkCnbhVG41i9k7hQ=; b=mlUMheq4YCLFNbVCDLNJKHMueLBRu3z2y51TeMqvX0Xfj4V8aNCgy5ZHNAviXdtEu7kN +V7uu8rX3TgoI1eTNStDXEZluqXt+h029ZOShaiItkoFITe3fVL+nYHQ3sQjYxHkBe24 lWBAhAdOjndKIzL/bZHotqEHJPkOSm6qutcmYSxgU2Nfj971DeldSI4xDYc/VPLULlZB Q/uyJVbuZjyOl2Uo6pfQoGluDQvVclSmGwyH9K+13+H1Wd1fuXBA933euzCsT02OE/HB FryEZuSimEDxsjzY5UiCn4JzVliiBVAsU4iKLMrnjCBFlPH43sMTWUP7YGrMWa2nOWJ6 LA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uym1sbnc4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:53 +0000 Received: from m0356516.ppops.net (m0356516.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDNaXka016366; Wed, 13 Dec 2023 23:36:52 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 3uym1sbnbj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:52 +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 3BDGTUb7014824; Wed, 13 Dec 2023 23:36:51 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1xu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:51 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNamrf17695284 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:48 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A6EB02004B; Wed, 13 Dec 2023 23:36:48 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 40B7220043; Wed, 13 Dec 2023 23:36:47 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:47 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 25/34] s390/diag: Unpoison diag224() output buffer Date: Thu, 14 Dec 2023 00:24:45 +0100 Message-ID: <20231213233605.661251-26-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: 1cQ1gAU1Iv4juOXeCfxDVhgu2689iazJ X-Proofpoint-GUID: iGbdxxrIYcgZBGhmP7OXYB1v889bVZ49 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 spamscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 mlxlogscore=999 suspectscore=0 adultscore=0 malwarescore=0 impostorscore=0 phishscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 4C79E20002 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: moh3w6funs4eswcnq8u891gpknyc5kry X-HE-Tag: 1702513986-471237 X-HE-Meta: U2FsdGVkX1/FXZatqAYg8UU/gOgzXbfyFTIpZjIYj0a6UnneU2AEvlmu5dLtGAbnzJR2CHIKSj3hYt+ATg7AlAGrlARwci855X2ivQvi/gCcS4m+s9A5ePV1tWD+lBJRpE8K851xS9kpPaJkV8IZpPEWkRdCBPHagMJF4aAias9r/pDtO9ybBmxMEHRXhuEwe/FGeBqJiWGW9ebFOmIhuvXBchN3Rj/cAgMqR47tl3RF5LJKwFowAiUr6KBymTAu9H1beU9KKn966sXtXZswj48TAW5qJz6W2EaAZafr3ThPm0Bk+2eF4np5DE7wS2ODnQJWhOcM+OVrwqaDZL99FIM2b0r1nAoRcFiRQ80w0aBen8rIS+JQJerBUvEn4Fg2eHgc1KAPTaZOyx63ooP51jBdhlpGgQqQqRGuTea7t1gToBdj7sQqlRfW2k0+pba4zU2DD3HIPP0WRxK3+2UcgHAvVNCAs+poQogNKsJBKxsC2hTU5Iq6RgR4c/7e4jwMMcSHIAstR2gRzpf6ZmIPj6H3vi8T3x5Zw+4sCbQrOPlgS1sIS2fxOjGtayXzvVUPQ7MfdMFAS7aqzuSfXS6d8L2CFFsByx+iyaMvl0OVAWL6DkTZM3sBVMFNljzqBLmcG6sXO/PzYjwojOw/ReJ+bgV0/0vDPSXssRR/N3aEw/KZuixRhvoxRgXsS1KEx7ItBdndhW08BHDE9g5Qcx5yqPY9h1dQ/n8GqRC7wVD/HKbrC4qENVuq8Uz8Vq1G3EbtNp97/XkWMQdl2tjaA+7dJZAcWfZMccybmH9goI6d/uQN5yZz0Gb+JoOFj48IbV39xUdQAJdB/F/iJyvdS8Ag58y26BUP5b7e/YSh1/vAPKjkb94ygq/OfFk3yUHd3HL5CNPjSVz/7RWhuFWJemSLEv05UwxB6tdRrE6MJwplm1zbQ1h2ZXrSS53Ua9UWespHNmvc2uRTbgIq9Cg84gw nyvrOFSd HehbEwArH3EP5dEsVlHBWV4UF0xCxJkSDrNBYI5fSV1x9yGMp4291sZfKy5N0Slat7FTr3M9SvJHU9IqvbuILt5gGBeL4DisDt755l5IvgWibkGH0jsHT0E4uN0Q6hTUdObxEJ0OFXh+vEBT3NBJ8E0avkVpmwgNJ1TEO13KODfIjKhu4K7n0mKLa1JMsnqIOZSGvu8SKLUi0laZpiiyVJZ5q6P6PrEERsJqNuUwGRkgZsUFPY7pznPpjHKq/oJz8iQxb X-Bogosity: Ham, tests=bogofilter, spamicity=0.000058, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Diagnose 224 stores 4k bytes, which cannot be deduced from the inline assembly constraints. This leads to KMSAN false positives. Unpoison the output buffer manually with kmsan_unpoison_memory(). Signed-off-by: Ilya Leoshkevich --- arch/s390/kernel/diag.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/s390/kernel/diag.c b/arch/s390/kernel/diag.c index 92fdc35f028c..fb83a21014d0 100644 --- a/arch/s390/kernel/diag.c +++ b/arch/s390/kernel/diag.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -255,6 +256,7 @@ int diag224(void *ptr) "1:\n" EX_TABLE(0b,1b) : "+d" (rc) :"d" (0), "d" (addr) : "memory"); + kmsan_unpoison_memory(ptr, PAGE_SIZE); return rc; } EXPORT_SYMBOL(diag224); From patchwork Wed Dec 13 23:24:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492070 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 DE0DFC4167D for ; Wed, 13 Dec 2023 23:37:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A9AEB8D0074; Wed, 13 Dec 2023 18:37:03 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A23426B05A0; Wed, 13 Dec 2023 18:37:03 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8508F8D0074; Wed, 13 Dec 2023 18:37:03 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 703E66B059F for ; Wed, 13 Dec 2023 18:37:03 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 2FC2840BD0 for ; Wed, 13 Dec 2023 23:37:03 +0000 (UTC) X-FDA: 81563407926.27.319047C Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf13.hostedemail.com (Postfix) with ESMTP id 034DA20013 for ; Wed, 13 Dec 2023 23:37:00 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=UQvBPDce; spf=pass (imf13.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510621; 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=yXd/QnBGUJdt/j+AbcYrFLYUstfppznpbRVZrbXz5bE=; b=yMvkWeCUJsnYhPMvurgw6r6jKQ474CG0f3u/OY3HZr2x0Q0/5r8vsfNcxi+9tSUtcIBJvs 5ybQPOyq+V0Ndr3tO0xmkA5j4tTItXHv93OnaIb31FeHCm20D60BDRxprmg+UahQEGUmzm /gm780uKiDYbvLeavSMG3dHWvDbBGGI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510621; a=rsa-sha256; cv=none; b=oWnxorgmdL/g7Y1n7Pe95+GL+qCZQ0/kVca5kz2BgyXvDqDTzcHxanJxSBa/ix4ZwHky4D Lnq+8uxLefsTYi1v4ACF/PhmBIuilZ1HvFODI9I0T49OeAuJ1x54+UoMpo98e1IsN8fdt8 9Ds63kLqcvWcU8x7srf7zTCuYat4OUw= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=UQvBPDce; spf=pass (imf13.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com 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 3BDNHdSQ002591; Wed, 13 Dec 2023 23:36: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=yXd/QnBGUJdt/j+AbcYrFLYUstfppznpbRVZrbXz5bE=; b=UQvBPDcea3puQkUDr9wt0UBQ8RXcT08t8A8hO5Qp4gzH7DQ7A4kSdvnrddpVEdDm+CQd 13ncLmH6hbeGKdy3MfTA22PXCXXw3GqugwRdjqeqvT0LVktqosG6EsOqFJLyyGf0v5LA Mnvm/hgauslQOllRTBIjMCJQjfEwWe1aE7JLUHnoqpq3Rh0MPWnJkOfbJGrx6Ww8D+cE zWAnS2D49lZHCaqaz0ec2INscaXR770yaUnBXT0CvrmtcytX+pkZZkDu4QF+om51BSPO 5L4QSCCAvF8BjIQwm79jmcZvGfyyjBZH+c/TMxIWYcF46MAfs2VV6mM+hvlOc1aEB+jU kQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyp5cgb9n-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:55 +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 3BDNKIc6008783; Wed, 13 Dec 2023 23:36:54 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 3uyp5cgb9b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:54 +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 3BDM1JcH012599; Wed, 13 Dec 2023 23:36:53 GMT Received: from smtprelay07.fra02v.mail.ibm.com ([9.218.2.229]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp4nat-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:53 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay07.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaoQW3801838 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:50 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 369B720040; Wed, 13 Dec 2023 23:36:50 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C2CFF20043; Wed, 13 Dec 2023 23:36:48 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:48 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 26/34] s390/ftrace: Unpoison ftrace_regs in kprobe_ftrace_handler() Date: Thu, 14 Dec 2023 00:24:46 +0100 Message-ID: <20231213233605.661251-27-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: ACOAldVmTa-efSmw5zkfDa-w6Y17kTOe X-Proofpoint-GUID: 5ND1Qb23N4iVSC6c3VM8EXMJso6wjXqM 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-13_14,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=990 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-2312130167 X-Rspamd-Queue-Id: 034DA20013 X-Rspam-User: X-Stat-Signature: 6mwwfoofoid1cjbw4h19geofdfrc7fk8 X-Rspamd-Server: rspam03 X-HE-Tag: 1702510620-863958 X-HE-Meta: U2FsdGVkX1/ByA3kKsht7i6qbQeYFu2/NJojKvF3I87j5k7jdutOJEQpakYDG7aiJBCcf8Wx/uAN24UcEv6D5Xbj/1By0n8MYQSAY/ncSzzxKRWiUkoH+rubue1VxjsDuYGJKex9Omk16zKeeA6Ql+jc/5mo0pAFOcB99Z/ZSkxrS9V5JZPvT0WdopURrNhJF+hr346tGLI8w53N3S+qUsBrkh36+GJdY+G3CD/aW1dwT4cOZxGIF32nOeT3aW2+8ne9KnZAdRJ6qJGK+2lQN6MKsL1C3oXlkXqLn6kBkjrpxoAElx4IxMhM+O0ItIO8BQKC05a9EsOl3eDT9Un/Nc5Zko+8wcdaePDidakd+tmrPSyMJAdTCcvajpEMBb0NAGJrsSAIzMgJJZlmoLIJIahCTB2GH3TrgtHGpy2vpFceaJ0J3jXwWBLQ/dE8OIVUSARfzC+z59WpW2KuVRmqFnNFbkRrvN6yFxxFN7p1lQ/QJwNXohypWqkuYoTNCuBpGLZFUfAOBgX4QVAcUvIgtPvYkNy7x5hHPKPQjatpAXyGHVbqVWjdLxwc/muGLf4PUW+HrES0+WeDhxXJaa2y9yBGtBq4q67ZAp7rqJ4UVA85vBIcPIEaDzK0TpTrhuiLZFAYw1nQjKDX48aOMjy4lAWDoP8Y3V9QPbCjhgSHwLmsG9EOjIINR2V0U3oFhTE4672r36JY/71hpRjxdDPpgZw6Rgx2mvHq6bgdDhEd51uGOptPGXPXrHSypQT4t7HMwWXt8iIRnzSsyFKdmIzveYXV+3Dx4dYgHejnA715d4Nl7Rz9ZuadCTqtxZm55FvpIq+azAgdZ4QezHGL+dsMASFQnAWHXS8t1QTfrIjY1+PAUNwQfQyzcYx9oa4PImFBP1g64gtOk/lIUpnGgKiI4njpfqSqNRyRKGabrdmTcg2nRWvTvcBUhcxmRqjyIc/tJyveJeFoYqtrp5ab/4N cBvrk+tz 0intEkqKE/vJ+vkP5C61GaPEN1vyZlV1X6tDWAY7lVIsSnoiqh4QcoyYl67YTBgo8WUkzTE6dwd84gpqTJdNGXxEBQva5LIRHXVQV9wZlhX6ZexT+Mh1l93RX+Uxh0SIv5kICNnqfoFMi+b0PdQvmYvcntR7pPPbludEzC6qtO7tO6RcvfZ7XLTtULjoTtufHdv/v8H/mNp7JKP9DrTU8+x9FDRDCZ3e83TT6wjmfEBlFs7K+BVljrIfy6O2f1JGao2Bvsr6kFUVJkERkljUHTt3ClbeVXNeVjPqR 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: s390 uses assembly code to initialize ftrace_regs and call kprobe_ftrace_handler(). Therefore, from the KMSAN's point of view, ftrace_regs is poisoned on kprobe_ftrace_handler() entry. This causes KMSAN warnings when running the ftrace testsuite. Fix by trusting the assembly code and always unpoisoning ftrace_regs in kprobe_ftrace_handler(). Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich Acked-by: Heiko Carstens --- arch/s390/kernel/ftrace.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/arch/s390/kernel/ftrace.c b/arch/s390/kernel/ftrace.c index c46381ea04ec..3cc5e6d011a9 100644 --- a/arch/s390/kernel/ftrace.c +++ b/arch/s390/kernel/ftrace.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -300,6 +301,7 @@ void kprobe_ftrace_handler(unsigned long ip, unsigned long parent_ip, if (bit < 0) return; + kmsan_unpoison_memory(fregs, sizeof(*fregs)); regs = ftrace_get_regs(fregs); p = get_kprobe((kprobe_opcode_t *)ip); if (!regs || unlikely(!p) || kprobe_disabled(p)) From patchwork Wed Dec 13 23:24:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492073 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 D61C2C4332F for ; Wed, 13 Dec 2023 23:37:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 125E96B05A2; Wed, 13 Dec 2023 18:37:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0555F6B05A1; Wed, 13 Dec 2023 18:37:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D572F8D0079; Wed, 13 Dec 2023 18:37:07 -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 B72F36B059F for ; Wed, 13 Dec 2023 18:37:07 -0500 (EST) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 8B82CA0BF7 for ; Wed, 13 Dec 2023 23:37:07 +0000 (UTC) X-FDA: 81563408094.14.12F530E Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf04.hostedemail.com (Postfix) with ESMTP id 2E0484000B for ; Wed, 13 Dec 2023 23:37:04 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=a+xMfSQN; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf04.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510625; 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=KKQ+/x5aBUFVSHNTE5+u0C93kqAMHLy+4zXkcQqC2PY=; b=ltdNHt7Rn8DAzfw6bJHv7uqxNaA7R5YSHLGh7WyRkCwDrYvyfVD6HICdCuMTpkhRGWZozU SzHZCXrChsPCSboZWz6/vRLSE4egQtPOlHad3gxGJpH4tZpRk9oQJe9z5+dwjADMSlcIAq y7uDNMEZXus15F8hh/VfrCxhivyqX2A= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=a+xMfSQN; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf04.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510625; a=rsa-sha256; cv=none; b=kz1fG0zF8WYppyQmA+kJuvyS1/M6prBzdKeoTruNN9xL9N9d9UaINkuIgFWlFddIuS6+8Z UU9pY/FswsV+Sqjn0C11H2lEd3t+Hzi4uXX8e8wUzBe9IqJz3Y4MdVi12UKTwEsBQrQAWy XzjP+cDu79ToadnaUhn0TzUr+UxVRpA= Received: from pps.filterd (m0353726.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDM7CtE015847; Wed, 13 Dec 2023 23:36:57 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=KKQ+/x5aBUFVSHNTE5+u0C93kqAMHLy+4zXkcQqC2PY=; b=a+xMfSQN60Zosn0PI81EMAF4iY520/iP3v9Go9PFZ6MMlXPomoueq2Ez2smx8b0GVB0h /Bj6t51LVnuCeIlcxLRdQLYnMmrLuXgt1/16Wg0BstV79h+ehRTfeOeByPkVLNlJfcj0 FZdPraGjUCULl+aHf7mZwssQpyMKKzPburxiGRZaG6X8tX27PiB9w9Tdeb1yE/HGWRVP 2nvtddCISxWAXZAQ1luQIjaGLqtlnLKyJEBVxSh2TJ+lbEJh4wyXU2NZsZr/Iqg6QoEV kpgM/0LiaDkcYoKUGn6fSQq2aOxqNEZt1vGUnMbqUXwtkRqq3negMXD7hUUCPiX8mdiQ Jw== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyn4d1q9y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:57 +0000 Received: from m0353726.ppops.net (m0353726.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDNQFao006872; Wed, 13 Dec 2023 23:36:56 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 3uyn4d1q98-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:56 +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 3BDLGUp7028201; Wed, 13 Dec 2023 23:36:55 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw2xyvrsa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:54 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNap6R27263494 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:51 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id BA37D20040; Wed, 13 Dec 2023 23:36:51 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 52BFE20043; Wed, 13 Dec 2023 23:36:50 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:50 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 27/34] s390/irqflags: Do not instrument arch_local_irq_*() with KMSAN Date: Thu, 14 Dec 2023 00:24:47 +0100 Message-ID: <20231213233605.661251-28-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: IYnxAzNVYRzPOrpd-XtDyC5bRWSG5SiX X-Proofpoint-GUID: xGq4qQaEqxkSC5s6qSjoXz9Vr7RdbrF2 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 spamscore=0 mlxscore=0 malwarescore=0 phishscore=0 lowpriorityscore=0 mlxlogscore=999 impostorscore=0 clxscore=1015 priorityscore=1501 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspam-User: X-Stat-Signature: 6h7f8c56qynr8psd5pc1mkp5f17u1uxz X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 2E0484000B X-HE-Tag: 1702510624-736003 X-HE-Meta: U2FsdGVkX18uZcJwcviyHVyPJlvoup4f9E2lX2HoW2LVPSmM6pfB2WoKklmnJ1F60VhQ+p4/8JZK4XdzrOGM1YP0Sza2Bv+WZVn6MLLFCUsrTj4xOxIdHR21xJ3nXz/LyuT4HnOJdM6XHmfg9RJTLpKJv5PikAicYLjYPocHcg4CunbHr4S3csA+k6OS0sy1beO6Avp7Y2b7sDei75zcS/R2PzZLn697a4ylVVeJ6yGZMYlQx7x6pEoFjxtvk3FXnO9f3jFnpbeE+DDkn+1EPjv0ArGz9lRSZn5OZZGynx8DP0z9WruGP59xGjmmxkZPeOj+iD0GUFG4rmbihkA8GOc40iK5nZEVIhGF8I5l7jD8fSaapHNr1pNnOJ8/ykcE8LylyTHswo2REuCU2AyHhi13Fcf7IqUCywPEoI6Bw3CEtzy/U12ofmI+RxA5B/gJIM1BR1VFdcUA1VQnzNkb0tpqiLsqnZorHEgFwP9ejaybQNyqM8ybb4ZIHlrW/iQa5tM+23meC2k81RMxyE8jvBgwMA3tusCfO0XN2nySYRFxljA5fLaA5eM6TFsB3t/XG9X+EZxaWvU12Nr2pzW5RJ8jefMO7z6NPxdhvfCpqaqxw9wVFvsXBU2aJI7b/B9rTxp8Hsv3OvchpzC8hTOdvr3efDS/i4HOdWnTSmfWG+ZklJ1HjIo4skQkgjHkDHK8Ek45vBAIcKGq4xa9BXANFTP5tQp2RkzLbg3MQFqZ3P4wO75fxfU+AL2L3fMJHjsaMFAhSIquuFaKdTYFCJPGRTTTplUo4bIVyPGDQ1mE6Ifug+BgGhtbizo6xFuWyvczz6th8R2Z/LOZPdqIJawUaGEvPiPzWQ67nDTNp9dRVITIBv7gNV2V90UkaT5YMFHZ/mAjNhQ8n6jfLN27/NqKqSM39q/vLes+IFi5lrpr6zzKZ3PRKfnK8/krXBcoaGiOJl34mSXhUsTOC7rJZnL qrS8uD3k xDCIL9x1PnQY9z7WLTm8Hpz8s4BwUGvLaG9QZDH5gcsTwa5B9eXkbfx/ZXxd5k25xKZnYrRpREV8ZScPIBhR1nTQMhQNINkoo4gIeRscpb+PD0/XwM7vZBYucBa0vW3qYWeoFFNgpiQEw+aORAFpoXkxCO2DiGvNoNw0J2M0TiJPlqr02SfsPglDwC/UIxrwcS9N0ycZDyYg2AT4WjPj5+dqyuMuob+GwFkIkLBCWf5HVvK3qv9nVocG6Lpnr5QKwtKbj X-Bogosity: Ham, tests=bogofilter, spamicity=0.000021, 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 generates the following false positives on s390x: [ 6.063666] DEBUG_LOCKS_WARN_ON(lockdep_hardirqs_enabled()) [ ...] [ 6.577050] Call Trace: [ 6.619637] [<000000000690d2de>] check_flags+0x1fe/0x210 [ 6.665411] ([<000000000690d2da>] check_flags+0x1fa/0x210) [ 6.707478] [<00000000006cec1a>] lock_acquire+0x2ca/0xce0 [ 6.749959] [<00000000069820ea>] _raw_spin_lock_irqsave+0xea/0x190 [ 6.794912] [<00000000041fc988>] __stack_depot_save+0x218/0x5b0 [ 6.838420] [<000000000197affe>] __msan_poison_alloca+0xfe/0x1a0 [ 6.882985] [<0000000007c5827c>] start_kernel+0x70c/0xd50 [ 6.927454] [<0000000000100036>] startup_continue+0x36/0x40 Between trace_hardirqs_on() and `stosm __mask, 3` lockdep thinks that interrupts are on, but on the CPU they are still off. KMSAN instrumentation takes spinlocks, giving lockdep a chance to see and complain about this discrepancy. KMSAN instrumentation is inserted in order to poison the __mask variable. Disable instrumentation in the respective functions. They are very small and it's easy to see that no important metadata updates are lost because of this. Signed-off-by: Ilya Leoshkevich Reviewed-by: Alexander Potapenko --- arch/s390/include/asm/irqflags.h | 18 +++++++++++++++--- drivers/s390/char/sclp.c | 2 +- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/arch/s390/include/asm/irqflags.h b/arch/s390/include/asm/irqflags.h index 02427b205c11..7353a88b2ae2 100644 --- a/arch/s390/include/asm/irqflags.h +++ b/arch/s390/include/asm/irqflags.h @@ -37,12 +37,19 @@ static __always_inline void __arch_local_irq_ssm(unsigned long flags) asm volatile("ssm %0" : : "Q" (flags) : "memory"); } -static __always_inline unsigned long arch_local_save_flags(void) +#ifdef CONFIG_KMSAN +#define ARCH_LOCAL_IRQ_ATTRIBUTES \ + noinline notrace __no_sanitize_memory __maybe_unused +#else +#define ARCH_LOCAL_IRQ_ATTRIBUTES __always_inline +#endif + +static ARCH_LOCAL_IRQ_ATTRIBUTES unsigned long arch_local_save_flags(void) { return __arch_local_irq_stnsm(0xff); } -static __always_inline unsigned long arch_local_irq_save(void) +static ARCH_LOCAL_IRQ_ATTRIBUTES unsigned long arch_local_irq_save(void) { return __arch_local_irq_stnsm(0xfc); } @@ -52,7 +59,12 @@ static __always_inline void arch_local_irq_disable(void) arch_local_irq_save(); } -static __always_inline void arch_local_irq_enable(void) +static ARCH_LOCAL_IRQ_ATTRIBUTES void arch_local_irq_enable_external(void) +{ + __arch_local_irq_stosm(0x01); +} + +static ARCH_LOCAL_IRQ_ATTRIBUTES void arch_local_irq_enable(void) { __arch_local_irq_stosm(0x03); } diff --git a/drivers/s390/char/sclp.c b/drivers/s390/char/sclp.c index d53ee34d398f..fb1d9949adca 100644 --- a/drivers/s390/char/sclp.c +++ b/drivers/s390/char/sclp.c @@ -736,7 +736,7 @@ sclp_sync_wait(void) cr0_sync.val = cr0.val & ~CR0_IRQ_SUBCLASS_MASK; cr0_sync.val |= 1UL << (63 - 54); local_ctl_load(0, &cr0_sync); - __arch_local_irq_stosm(0x01); + arch_local_irq_enable_external(); /* Loop until driver state indicates finished request */ while (sclp_running_state != sclp_running_state_idle) { /* Check for expired request timer */ From patchwork Wed Dec 13 23:24:48 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492119 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 6040AC4332F for ; Wed, 13 Dec 2023 23:40:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E76BF8D007C; Wed, 13 Dec 2023 18:40:33 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E20626B0491; Wed, 13 Dec 2023 18:40:33 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C49418D007C; Wed, 13 Dec 2023 18:40:33 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id AD7BB6B048F for ; Wed, 13 Dec 2023 18:40:33 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 8D56580B3F for ; Wed, 13 Dec 2023 23:40:33 +0000 (UTC) X-FDA: 81563416746.08.22F4F22 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf20.hostedemail.com (Postfix) with ESMTP id 504041C0020 for ; Wed, 13 Dec 2023 23:40:31 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=h3Ohq2Bo; spf=pass (imf20.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510831; a=rsa-sha256; cv=none; b=eM9bfVjMtC70qcJdGN2c0OfYimoEZq6cCeigTdeqZerQb7v6hmOMJLIAL1MzlQe8gB24Ox /7ptSZJo7g97/ciC12pVdTvqWi47lz2ftB+2ID7oQE3yxT0AASr5zGunDmdlse4nZ5fRIA iVQoktmQlUuW/vOTfBi6cOT/OGts8Jo= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=h3Ohq2Bo; spf=pass (imf20.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510831; 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=RNAEdf6yu7dcjX2jOn112T18heV7subpebJzqiDTVHU=; b=OenMwThrWyi76PXSj+Z4/ETR9S/+0Vol2RwbYXqbkhBmSALwKwuxARPI5zoAUiBk3GpA3K 4zt61xcTWiKl+I8dvMMiDDrXkK5IsC8BEhD1573q2I1gK/X5gp3IZQuNr4YwHpIwseAMs8 heX2Mj+tBKY+apr6jCB8OnTwE9h3yQQ= 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 3BDMe3sK026112; Wed, 13 Dec 2023 23:40:24 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=RNAEdf6yu7dcjX2jOn112T18heV7subpebJzqiDTVHU=; b=h3Ohq2BoyYrV9ysMvVTwG1yC/SXJpU8oKVRlehn/wazgckl0UWxkXl1XO8C8uVC1WS+8 YUGZREXylkmApnzow/KMhN0IP1LHHAhIO5AJYJ97Lxf+MwVMI/LTGVWRpw/kHTXONOhF nv8rn3h4yud8DLUMBfDzXZrkLVeVmxKQDX+I31EcMbq8gxOQrKySuuIPDIhsfNYOWpqw ChJFNztbP1Qy/gBh10TXgIcM/48+O7eGAy+XmGZWp0DwJv/rNtaZAngmvnZ4g68TvdMp Mmp11/PyrYe8pa6QXcH19pDsd3UirZNCcKW6jOL9jl0GgqAkMgtQd7WDT7uHC/Ww4SYW 7w== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uymwuj5vt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:40:24 +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 3BDNWTIR009723; Wed, 13 Dec 2023 23:40:23 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 3uymwuj5ff-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:40:23 +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 3BDGkI3J014819; Wed, 13 Dec 2023 23:36:56 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1xx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:56 +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 3BDNarHZ45220132 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:53 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 46F5E20040; Wed, 13 Dec 2023 23:36:53 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D4A2120043; Wed, 13 Dec 2023 23:36:51 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:51 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 28/34] s390/mm: Define KMSAN metadata for vmalloc and modules Date: Thu, 14 Dec 2023 00:24:48 +0100 Message-ID: <20231213233605.661251-29-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: vfBS-CdzCAtBe0eAONYSdh2uF2-ntzde X-Proofpoint-ORIG-GUID: gLjFNC89khIf6pZ9lL-ibBIu5mfuKJCk 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 phishscore=0 spamscore=0 malwarescore=0 mlxlogscore=816 priorityscore=1501 impostorscore=0 adultscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 504041C0020 X-Stat-Signature: n46ky8ttbw1qpioa4dgeyjsa51y1sjbw X-Rspam-User: X-HE-Tag: 1702510831-533319 X-HE-Meta: U2FsdGVkX18SGTCbrJyslxSik5JOdIplWqeekew3F2Bw+VHyDwmmF83mqEwMPcdyCIm7mqxRY7mc4ePVabn5rv1W6KcFWO4VxGPOEtfky/l1TB98CRkAsVBSb9eATxOtPs/P469Rqy1QY2bmTMI/Ml6zfirY+CLIN1zhPKIWMuXg46QPvQzYjxsiR57NG2LVV3mZcVXDLCWmlEGPFDt4TJ21+sAs598BPkAnBF/LtvuzI8CeROij2Zp56IhibmOp1DdZlPcm7TvlaAaZt1WV7F87w4CdlOQwxY07dp61rn0Jh3LaEOuY0JoVDyvbxSIxDd6RvhKWWqn+5CKQQQv8EVGZT00Ry74sPAOEAW0+NyiXuQmXh2pyeiqmzAslw2jH4IKA883EVrrgor+Ig2yVH5Fp1i0IcyhzTrb2Opxg1Wc+SAhHumqEJZaiEHXt9AnaBigwhEM/dd6jJoL1LiMBLtA45JdW2PF05T7GW+WnU0cKhxOvWa3v1gl8XO/vD7Vd3B0LAVt/ZYXyl7vx7kLpas3DBmJ/X6xFh9T8W+/Qw+rLuX+7sR9AV1gqiaqsWHrnFVlbR/2+FavJ0sz8IW4md9bxz9opA31PG9ZjvkXBiv/02GegAe8YmXzupjrQl3EFgthdSKF3TVhpRa/sIM+CyXWZwhvr02iFKhFCAVf+iTifdKsVVt2aKxr8derMcdWLbHWmSesLu0+krhZFaerEuzxERi6TRMnCBHyy4mrHQ5crGdsLHVCtdv7WUNzVWkgdNTaUx4NuE7xuMmC5O4NWZuSVisCEsxpBSBLvD8CTd6PTQI7DWC174/5LoVY0iM8EabWYhGveCVvkPvnFEaBs5dSIaRsdSOrYDIzQ7xwD0Wj6yYWa9gV5QrBcGCz0qn7k2mmbPTEzKYBeczOXYOQ+dxG+A5Cgbd82eInt5/dLAZcPJndBmVR2ai596zUSpq32aHjvJjipmP1mLi9CiQ9 bYlu3TbQ DLZNMF135tEwo695QEkEXLmwB5uvdWw6zlG+DWzbrAtmL52xbD0aPJl7bwUPB6H8n5kC9NbJWjqEZFxrOFMnMaLxO0DzN5J41EkrznBIuOcvMuep+YfEoItZ0vxs/hhmw2ArcB1bPBYd5JglGOYV8Oc9hNPpSM2FHsNpfHGkZZiBweqr8RrMJOziWbYhOy+Cihz3kUXzjdpou/dVYnQjNZaCKcnTJ/3eVh4PLqsttjWhtDEVq4u9bMwZvPA== 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: The pages for the KMSAN metadata associated with most kernel mappings are taken from memblock by the common code. However, vmalloc and module metadata needs to be defined by the architectures. Be a little bit more careful than x86: allocate exactly MODULES_LEN for the module shadow and origins, and then take 2/3 of vmalloc for the vmalloc shadow and origins. This ensures that users passing small vmalloc= values on the command line do not cause module metadata collisions. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich Acked-by: Alexander Gordeev Acked-by: Heiko Carstens --- arch/s390/boot/startup.c | 8 ++++++++ arch/s390/include/asm/pgtable.h | 10 ++++++++++ 2 files changed, 18 insertions(+) diff --git a/arch/s390/boot/startup.c b/arch/s390/boot/startup.c index 8104e0e3d188..e37e7ffda430 100644 --- a/arch/s390/boot/startup.c +++ b/arch/s390/boot/startup.c @@ -253,9 +253,17 @@ static unsigned long setup_kernel_memory_layout(void) MODULES_END = round_down(__abs_lowcore, _SEGMENT_SIZE); MODULES_VADDR = MODULES_END - MODULES_LEN; VMALLOC_END = MODULES_VADDR; +#ifdef CONFIG_KMSAN + VMALLOC_END -= MODULES_LEN * 2; +#endif /* allow vmalloc area to occupy up to about 1/2 of the rest virtual space left */ vmalloc_size = min(vmalloc_size, round_down(VMALLOC_END / 2, _REGION3_SIZE)); +#ifdef CONFIG_KMSAN + /* take 2/3 of vmalloc area for KMSAN shadow and origins */ + vmalloc_size = round_down(vmalloc_size / 3, _REGION3_SIZE); + VMALLOC_END -= vmalloc_size * 2; +#endif VMALLOC_START = VMALLOC_END - vmalloc_size; /* split remaining virtual space between 1:1 mapping & vmemmap array */ diff --git a/arch/s390/include/asm/pgtable.h b/arch/s390/include/asm/pgtable.h index 601e87fa8a9a..d764abeb9e6d 100644 --- a/arch/s390/include/asm/pgtable.h +++ b/arch/s390/include/asm/pgtable.h @@ -107,6 +107,16 @@ static inline int is_module_addr(void *addr) return 1; } +#ifdef CONFIG_KMSAN +#define KMSAN_VMALLOC_SIZE (VMALLOC_END - VMALLOC_START) +#define KMSAN_VMALLOC_SHADOW_START VMALLOC_END +#define KMSAN_VMALLOC_ORIGIN_START (KMSAN_VMALLOC_SHADOW_START + \ + KMSAN_VMALLOC_SIZE) +#define KMSAN_MODULES_SHADOW_START (KMSAN_VMALLOC_ORIGIN_START + \ + KMSAN_VMALLOC_SIZE) +#define KMSAN_MODULES_ORIGIN_START (KMSAN_MODULES_SHADOW_START + MODULES_LEN) +#endif + /* * A 64 bit pagetable entry of S390 has following format: * | PFRA |0IPC| OS | From patchwork Wed Dec 13 23:24:49 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492074 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 95978C4332F for ; Wed, 13 Dec 2023 23:37:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 497986B059F; Wed, 13 Dec 2023 18:37:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3B8118D0079; Wed, 13 Dec 2023 18:37:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 123796B05A0; Wed, 13 Dec 2023 18:37:07 -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 D5AC08D007A for ; Wed, 13 Dec 2023 18:37:07 -0500 (EST) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id B4B8D1402FC for ; Wed, 13 Dec 2023 23:37:07 +0000 (UTC) X-FDA: 81563408094.17.6D33B98 Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf08.hostedemail.com (Postfix) with ESMTP id 84BCD160019 for ; Wed, 13 Dec 2023 23:37:05 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=r3caq7Ta; spf=pass (imf08.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@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=1702510625; 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=uehXTWhTAti2RbWOf4Uy4ADfWEwLA/3Qguip2P6sfCk=; b=MgnxRg0weju5tEy8cOROLF3+fcheQK2e34A3JEiuvC1NWksXWGQCDS4EF/z88shDNBcE89 01pyT2IU6ed6tBO5po+go76icvRNRaX/FoRCRjRlikX4ZlaUin8jFlux3ozDub34xJ9xcE R9aVALaNLObaUdAi3zavowQ6VfkMsSQ= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=r3caq7Ta; spf=pass (imf08.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510625; a=rsa-sha256; cv=none; b=XjLwwSL3ZmMmPFdUDJ30ClrveEZQjbmCS1PLbpmam/czcohPwRI2dgGU+3f1bsKi/6EJ3g MT11fsLWOxnwCfiVNOT6Wf0njVPtGcUhUId5JGsCS7GaRbzmHXgb3WMONjHraYm+nslKX6 0Bzt47BkPPDTK4k3WaYYcDsppNkaHU0= 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 3BDMNSlB009777; Wed, 13 Dec 2023 23:36:59 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=uehXTWhTAti2RbWOf4Uy4ADfWEwLA/3Qguip2P6sfCk=; b=r3caq7TaYfR95IcSIA36XsE65tfTjnnCg2WX1iH3rBrSLS+Fm4GbxWRlYB05BkzoeOn6 xdB0KPEMnTe5caSSxLG33OY+3S/1DII9ltkuM5e2o7dVosyMOb/ndGdbbopl1qOcGua1 V2A2A8Lo7JeZ4kMW8jF/lBcTlcdC1JOFfNcwD0Bs+fJkqNvL0efmzBZ+HFEfw/UUA4YH adyclu+FuZlbq9wPrcE/Kff+jByFhv3RPOcgqHokUW6k1YuZXwj5r+F285sF1+Gle6UH 4Y6EYtCdbSCX5PyCEY7RFFGbjqI/4hws0Owi0wnpnL6JHjMMfna/ADpIiJeMcj/Pj9Jw aA== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uynbt1d43-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:59 +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 3BDNPLv0015845; Wed, 13 Dec 2023 23:36:58 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 3uynbt1d3u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:58 +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 3BDNOPrV014136; Wed, 13 Dec 2023 23:36:57 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw592c4kb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:36:57 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNasWZ19399296 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:55 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C829120040; Wed, 13 Dec 2023 23:36:54 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 616EE20043; Wed, 13 Dec 2023 23:36:53 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:53 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 29/34] s390/string: Add KMSAN support Date: Thu, 14 Dec 2023 00:24:49 +0100 Message-ID: <20231213233605.661251-30-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: avSp4lR9n432laRfm456yBo3_eY87VR9 X-Proofpoint-ORIG-GUID: yTkAPanVBluqwaQP7gkJ1tZqPgPXBCFg 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 adultscore=0 clxscore=1015 bulkscore=0 mlxscore=0 spamscore=0 suspectscore=0 impostorscore=0 mlxlogscore=999 phishscore=0 lowpriorityscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 84BCD160019 X-Rspam-User: X-Stat-Signature: okz6fegx4guc5rd6szcr9hap6ghn4fay X-Rspamd-Server: rspam01 X-HE-Tag: 1702510625-489100 X-HE-Meta: U2FsdGVkX19AJWwBMGIhKwW3OOEXASONUCvdShZnvXWM8X9kL8QPz3mwCnhD2ewLuhHZjBPOnbM3eJ95vixMnlglqJ3PJ7n5IG49/s/wz3f9MbPvn0HZqMA4nP811KABRkVd8FyL61xd4K3nPM+gleDHwZGNJCYR/KbbtDG/O+XkwHqusj31139G6nDf9qc3pX3bCHJccd30eFw5iitxuuMZdMSL2KvBY2r3AE7mmHti8kON2+ISR313YNGUid+5LEj07PajUex5L1q3PVfDWEUsYjyIMSEV2np4BuCzt3xMSQ10lmsR7HH/8X2IBl4v4YN7IuN0NpPf9X52zGCKXlFxOND4WCBow3qnbSYfPx82HByJdXQSelTzc8QMkkbKaOApyG6fufUe18nKrQbI1NRkAAq/iVwflXOP3SAyVHv2GdIjLuppDg5YSsQ4dMBem9OqPkvhRpEVp28DoopyqoD1i5UId/7CwBPfB5eX0uNKqKdzU5PKZ35QcD/L/rRZYvyG7Mos4824Ok/kRjBBedGvgwTCSoa2iANwTcz3RcyEVhIbJDXPdOkR7LENz8UmFUsHL2fTisuFGwgzmX+D11nwFbAWQ0Ibg04jDjmf+2IQfiIGlsvSoQ1RBkHv6dHItquulrKL2dJIEBmeM3p7ouIrgVn/0bgtNtgQ5ffG/o55cmXqEcGdhp1SCtUvhGoz9We3NUGUMcdszxy1WRzoIV6xfNlEFGpsTeaIJfhs4X4p2bJn6/vCqtEHsg/SNQmIkIFIPp82EfYjQd88/b9p5KC/qb8U2NZZm7pSohsE/z715kAknDvM4NMRnD7HTRVisTEN0CU8X0B5OPIfSHhKaRwW36V9PzpTWcHOOeeoM+8wfokDXl65eG6dqMBPXT9TrmoJjxaxYAGy4TouIIA9wlOzBwX5yvuTByXMWZBIlZ/O1mJYZdqmQEFEQ1k8+lzgMlI7pUkPNXlPih7d1eS iUcLCuLB bvYJCg38bCpYdyuF9FFZgNKlzyaFzA98JImjrya1/ol2hUA3iQxRnTYFg3sD5mgvAIhuhUOSSt7PIV5GB2BeGbuwNFcRviXTJcve4PyU1X3NjJzyBLcceNisLVz444Jwr77QBEaxgxf3elO41YDMShzkEHuyt690qFinYfVZRQy7IO23oicaJJyHtfjg84LzAGQRXnEG3e2g5rb7W3eFXlx7YCCiGOOxbU/KuQTwRWnA1db3g68e2PkHO67JhNxeuZhvfnePOfrb/j1hy2JCKz3b/pXs4JPM6i0mMP7t2veD3g84W2uFSLYsfT80vxXvjm0ayiHiUHjW3uCw= 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: Add KMSAN support for the s390 implementations of the string functions. Do this similar to how it's already done for KASAN, except that the optimized memset{16,32,64}() functions need to be disabled: it's important for KMSAN to know that they initialized something. The way boot code is built with regard to string functions is problematic, since most files think it's configured with sanitizers, but boot/string.c doesn't. This creates various problems with the memset64() definitions, depending on whether the code is built with sanitizers or fortify. This should probably be streamlined, but in the meantime resolve the issues by introducing the IN_BOOT_STRING_C macro, similar to the existing IN_ARCH_STRING_C macro. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich Acked-by: Heiko Carstens --- arch/s390/boot/string.c | 16 ++++++++++++++++ arch/s390/include/asm/string.h | 20 +++++++++++++++----- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/arch/s390/boot/string.c b/arch/s390/boot/string.c index faccb33b462c..f6b9b1df48a8 100644 --- a/arch/s390/boot/string.c +++ b/arch/s390/boot/string.c @@ -1,11 +1,18 @@ // SPDX-License-Identifier: GPL-2.0 +#define IN_BOOT_STRING_C 1 #include #include #include #undef CONFIG_KASAN #undef CONFIG_KASAN_GENERIC +#undef CONFIG_KMSAN #include "../lib/string.c" +/* + * Duplicate some functions from the common lib/string.c + * instead of fully including it. + */ + int strncmp(const char *cs, const char *ct, size_t count) { unsigned char c1, c2; @@ -22,6 +29,15 @@ int strncmp(const char *cs, const char *ct, size_t count) return 0; } +void *memset64(uint64_t *s, uint64_t v, size_t count) +{ + uint64_t *xs = s; + + while (count--) + *xs++ = v; + return s; +} + char *skip_spaces(const char *str) { while (isspace(*str)) diff --git a/arch/s390/include/asm/string.h b/arch/s390/include/asm/string.h index 351685de53d2..2ab868cbae6c 100644 --- a/arch/s390/include/asm/string.h +++ b/arch/s390/include/asm/string.h @@ -15,15 +15,12 @@ #define __HAVE_ARCH_MEMCPY /* gcc builtin & arch function */ #define __HAVE_ARCH_MEMMOVE /* gcc builtin & arch function */ #define __HAVE_ARCH_MEMSET /* gcc builtin & arch function */ -#define __HAVE_ARCH_MEMSET16 /* arch function */ -#define __HAVE_ARCH_MEMSET32 /* arch function */ -#define __HAVE_ARCH_MEMSET64 /* arch function */ void *memcpy(void *dest, const void *src, size_t n); void *memset(void *s, int c, size_t n); void *memmove(void *dest, const void *src, size_t n); -#ifndef CONFIG_KASAN +#if !defined(CONFIG_KASAN) && !defined(CONFIG_KMSAN) #define __HAVE_ARCH_MEMCHR /* inline & arch function */ #define __HAVE_ARCH_MEMCMP /* arch function */ #define __HAVE_ARCH_MEMSCAN /* inline & arch function */ @@ -36,6 +33,9 @@ void *memmove(void *dest, const void *src, size_t n); #define __HAVE_ARCH_STRNCPY /* arch function */ #define __HAVE_ARCH_STRNLEN /* inline & arch function */ #define __HAVE_ARCH_STRSTR /* arch function */ +#define __HAVE_ARCH_MEMSET16 /* arch function */ +#define __HAVE_ARCH_MEMSET32 /* arch function */ +#define __HAVE_ARCH_MEMSET64 /* arch function */ /* Prototypes for non-inlined arch strings functions. */ int memcmp(const void *s1, const void *s2, size_t n); @@ -44,7 +44,7 @@ size_t strlcat(char *dest, const char *src, size_t n); char *strncat(char *dest, const char *src, size_t n); char *strncpy(char *dest, const char *src, size_t n); char *strstr(const char *s1, const char *s2); -#endif /* !CONFIG_KASAN */ +#endif /* !defined(CONFIG_KASAN) && !defined(CONFIG_KMSAN) */ #undef __HAVE_ARCH_STRCHR #undef __HAVE_ARCH_STRNCHR @@ -74,20 +74,30 @@ void *__memset16(uint16_t *s, uint16_t v, size_t count); void *__memset32(uint32_t *s, uint32_t v, size_t count); void *__memset64(uint64_t *s, uint64_t v, size_t count); +#ifdef __HAVE_ARCH_MEMSET16 static inline void *memset16(uint16_t *s, uint16_t v, size_t count) { return __memset16(s, v, count * sizeof(v)); } +#endif +#ifdef __HAVE_ARCH_MEMSET32 static inline void *memset32(uint32_t *s, uint32_t v, size_t count) { return __memset32(s, v, count * sizeof(v)); } +#endif +#ifdef __HAVE_ARCH_MEMSET64 +#ifdef IN_BOOT_STRING_C +void *memset64(uint64_t *s, uint64_t v, size_t count); +#else static inline void *memset64(uint64_t *s, uint64_t v, size_t count) { return __memset64(s, v, count * sizeof(v)); } +#endif +#endif #if !defined(IN_ARCH_STRING_C) && (!defined(CONFIG_FORTIFY_SOURCE) || defined(__NO_FORTIFY)) From patchwork Wed Dec 13 23:24:51 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492076 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 31247C4332F for ; Wed, 13 Dec 2023 23:37:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8A3FB8D007A; Wed, 13 Dec 2023 18:37:13 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 827B76B05A3; Wed, 13 Dec 2023 18:37:13 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 604A48D007A; Wed, 13 Dec 2023 18:37:13 -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 481116B05A1 for ; Wed, 13 Dec 2023 18:37:13 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id E822212098A for ; Wed, 13 Dec 2023 23:37:12 +0000 (UTC) X-FDA: 81563408304.26.D03C432 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf19.hostedemail.com (Postfix) with ESMTP id 903701A0007 for ; Wed, 13 Dec 2023 23:37:10 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=eFWo7b1K; spf=pass (imf19.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@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=1702510630; 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=s1bHT1l6xxSUQY/AfEWlqSevErmthDammvxOjEN6IQ8=; b=FwWp3yMxHK1oNHDkiQ87QCQ5nQxnvINM9RzBqUCuHYtiW7XkLz8xFi1EfASmRP7GgYEm6B 0Co9aHkyDUzGC40zBegCabsE+Z24c/DQF7FAM0iaOxfi1X0VMVNIVNj4DcKSR0ct3a8jA9 FKBFgz1g0VBiKxy0qptufiHtZPYYPOI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510630; a=rsa-sha256; cv=none; b=H5b6MGuPNn3YyqVu4T/wwckcOobe5Ml3ksrUz+HHtqRnxnV1rKBrKaTyJsBSjdDQu5oTWm Q6vvZ5i++q6JB1oSnPesMXnjSSskamP0cDGzaQSuII9fITdwet0m1Lu9ZzFdIv8/oUG/4C zgrHaPnMpw7FXasEhIJ2SFLMJbCfxFw= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=eFWo7b1K; spf=pass (imf19.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com; dmarc=pass (policy=none) header.from=ibm.com Received: from pps.filterd (m0353727.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 3BDMF2rG005788; Wed, 13 Dec 2023 23:37:04 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=s1bHT1l6xxSUQY/AfEWlqSevErmthDammvxOjEN6IQ8=; b=eFWo7b1KUzgXdx5vqlqVeNhRqK1tdQtALSHa1s1EbwwsgkcZij7QozGfmStBSAV94GRu jzmiBjcUlzpWgkcg9/nOfNUChmxIigh8lxVkRSdoaGSUmvUj+CPK02spTrU9LA4htChY gPUIEFg2R+arbDmu9xRfuv/n8UQIdqj2aSyjG5PuW23Jv0esiDW56Zhk7Dmj+sTCJZ3M eY93I7w9qcuXfO5IxuCYgKRyotH6swgzOgx3ZoFZCVS2NdCh5L4JvdvUzR2WXYVekROl BlbcOV9sTXFsAv4o/uqr6Y5VxOt7OeuH+BrBUro9QCUlZ8SjUlqFsXotZLW6mkVTsdbB rg== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uybw52s8h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:03 +0000 Received: from m0353727.ppops.net (m0353727.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 3BDLQCdm020018; Wed, 13 Dec 2023 23:37:02 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 3uybw52s81-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:02 +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 3BDGTUb8014824; Wed, 13 Dec 2023 23:37:01 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw42kg1y1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:01 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNawNT27263502 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:58 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E56E420040; Wed, 13 Dec 2023 23:36:57 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7283920043; Wed, 13 Dec 2023 23:36:56 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:56 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 31/34] s390/uaccess: Add KMSAN support to put_user() and get_user() Date: Thu, 14 Dec 2023 00:24:51 +0100 Message-ID: <20231213233605.661251-32-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: GuXSY6mkyFJdvPjUGGnInPnY89ZZCBBh X-Proofpoint-ORIG-GUID: lCgzKW-fN2NdnghC9Ytb979L4h5Hs2ko 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 bulkscore=0 phishscore=0 spamscore=0 suspectscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 priorityscore=1501 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: 903701A0007 X-Rspam-User: X-Stat-Signature: dmzjf7bs17j4obzhtbdk3ncpxpkka7fe X-Rspamd-Server: rspam03 X-HE-Tag: 1702510630-489612 X-HE-Meta: U2FsdGVkX1+P5oN+Lo1SLzytrb1cFZ5YCf5rvFTPLjeYCDr7FA33QKEuZczLW2AOUHjogCjJPia0zoGI0BhusjGgmpE6UwjFUt/edI8+f+Gf/yjV0GRsPu52mrUMeAyKQ334n6DSp7eAGPz9nFLcCVxS2tOMs/v98s1L5QrrirnLvQAJJ8VlzHH2pLc8zE1pxGoMG+4yTZpJNiuX2oOdIM399jFx5b5MsgaT5CRLYXl8nKHQrFNvbFBu+v0iGgc2EAdqTP8rgxwL20Cluzko0eaJhjLU0+mrVl42bdj0vmfBn8Fjin6of8IXvXkXJUnPxTcONG2AIzcI/Y79MZHeqsHFGvLZDpvALz6AS/jyjB+ZnP7V4C1zrg4dZsxrhjDOk9r+zmZy+7eP/RsIRlN4SAkGbRtt3BB1OJt8IK2Nbc/ShFMoCR49aZXq4MLNayStTImYmOl1rqaKtYZaOBazw34yOBPn9KqIYBFu/cFSffUsxvyNyCE1lvHDyRp0hrSL9dyQ3rDu2l6uGOSBeFl5zKaulfv6aSTqV6nH1sDIzRcaV/oMiFc4Cqzn/lzJida3wLVyrYjCP9aTbuLonl4NKHaRPV1wJYU3QiLofZm9oSdFZ4KT9uPRGRRpkYJ3fI5vw5Qq8PvnK1y+1d7FP7cnI6c1K2fStA5suFjFrMj5c1rJtciumzx7rnRnuiXVaKFK94mBQcrnAmJWgWZxdjD3oACui2jwryQOyHwJ/60gBY6nxzTJtpURnRZfeKXSaE81m2MeXjB6BMrULHGXsdxnBKWnnptT2juMydstMrgfI/ioiP3mffxphDS497vosQW6htEAy00zJGnkPWj7BvoL/sEZy8WALILbOOJAdjlTpoGz91bB5+IIBEOZXc7NfXhsZnD4WFcf5kBYEtW91s9hQ5N2/BrUmgGob91dtjz/ztjSOqRVCtMbpSiQP2Bya6nhEb7cp8C0F/QYcWraqYJ M/wZfqXW qBaakYjy+zHUfSnSQQgWqsPwXvziYWYWeDIkN43xb4T3aulhc4YAg2wl2XA+twXtVVYAGuow/qB9p799mOo1/2+ZTvGx9mCGUXi1+zeGbXVL66+R78MgUaqbMxU0fKkfWjQmbIVY15DVHJFNZu/wqdw2uegvFHcol4R2gxrOD7+TfDYWessv5qxVNOu5DFcGKAckiej9h+fiEyOucxui1pgFrf+41uo2iFOtWD5QfDho0fhZlNH/HB1o7gy715SsVwTPg6uswSlsaE3Q= 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: put_user() uses inline assembly with precise constraints, so Clang is in principle capable of instrumenting it automatically. Unfortunately, one of the constraints contains a dereferenced user pointer, and Clang does not currently distinguish user and kernel pointers. Therefore KMSAN attempts to access shadow for user pointers, which is not a right thing to do. An obvious fix to add __no_sanitize_memory to __put_user_fn() does not work, since it's __always_inline. And __always_inline cannot be removed due to the __put_user_bad() trick. A different obvious fix of using the "a" instead of the "+Q" constraint degrades the code quality, which is very important here, since it's a hot path. Instead, repurpose the __put_user_asm() macro to define __put_user_{char,short,int,long}_noinstr() functions and mark them with __no_sanitize_memory. For the non-KMSAN builds make them __always_inline in order to keep the generated code quality. Also define __put_user_{char,short,int,long}() functions, which call the aforementioned ones and which *are* instrumented, because they call KMSAN hooks, which may be implemented as macros. The same applies to get_user() as well. Acked-by: Heiko Carstens Signed-off-by: Ilya Leoshkevich --- arch/s390/include/asm/uaccess.h | 111 +++++++++++++++++++++++--------- 1 file changed, 79 insertions(+), 32 deletions(-) diff --git a/arch/s390/include/asm/uaccess.h b/arch/s390/include/asm/uaccess.h index 81ae8a98e7ec..c3c26dd1fc04 100644 --- a/arch/s390/include/asm/uaccess.h +++ b/arch/s390/include/asm/uaccess.h @@ -78,13 +78,24 @@ union oac { int __noreturn __put_user_bad(void); -#define __put_user_asm(to, from, size) \ -({ \ +#ifdef CONFIG_KMSAN +#define GET_PUT_USER_NOINSTR_ATTRIBUTES \ + noinline __maybe_unused __no_sanitize_memory +#else +#define GET_PUT_USER_NOINSTR_ATTRIBUTES __always_inline +#endif + +#define DEFINE_PUT_USER(type) \ +static GET_PUT_USER_NOINSTR_ATTRIBUTES int \ +__put_user_##type##_noinstr(unsigned type __user *to, \ + unsigned type *from, \ + unsigned long size) \ +{ \ union oac __oac_spec = { \ .oac1.as = PSW_BITS_AS_SECONDARY, \ .oac1.a = 1, \ }; \ - int __rc; \ + int rc; \ \ asm volatile( \ " lr 0,%[spec]\n" \ @@ -93,12 +104,28 @@ int __noreturn __put_user_bad(void); "2:\n" \ EX_TABLE_UA_STORE(0b, 2b, %[rc]) \ EX_TABLE_UA_STORE(1b, 2b, %[rc]) \ - : [rc] "=&d" (__rc), [_to] "+Q" (*(to)) \ + : [rc] "=&d" (rc), [_to] "+Q" (*(to)) \ : [_size] "d" (size), [_from] "Q" (*(from)), \ [spec] "d" (__oac_spec.val) \ : "cc", "0"); \ - __rc; \ -}) + return rc; \ +} \ + \ +static __always_inline int \ +__put_user_##type(unsigned type __user *to, unsigned type *from, \ + unsigned long size) \ +{ \ + int rc; \ + \ + rc = __put_user_##type##_noinstr(to, from, size); \ + instrument_put_user(*from, to, size); \ + return rc; \ +} + +DEFINE_PUT_USER(char); +DEFINE_PUT_USER(short); +DEFINE_PUT_USER(int); +DEFINE_PUT_USER(long); static __always_inline int __put_user_fn(void *x, void __user *ptr, unsigned long size) { @@ -106,24 +133,24 @@ static __always_inline int __put_user_fn(void *x, void __user *ptr, unsigned lon switch (size) { case 1: - rc = __put_user_asm((unsigned char __user *)ptr, - (unsigned char *)x, - size); + rc = __put_user_char((unsigned char __user *)ptr, + (unsigned char *)x, + size); break; case 2: - rc = __put_user_asm((unsigned short __user *)ptr, - (unsigned short *)x, - size); + rc = __put_user_short((unsigned short __user *)ptr, + (unsigned short *)x, + size); break; case 4: - rc = __put_user_asm((unsigned int __user *)ptr, + rc = __put_user_int((unsigned int __user *)ptr, (unsigned int *)x, size); break; case 8: - rc = __put_user_asm((unsigned long __user *)ptr, - (unsigned long *)x, - size); + rc = __put_user_long((unsigned long __user *)ptr, + (unsigned long *)x, + size); break; default: __put_user_bad(); @@ -134,13 +161,17 @@ static __always_inline int __put_user_fn(void *x, void __user *ptr, unsigned lon int __noreturn __get_user_bad(void); -#define __get_user_asm(to, from, size) \ -({ \ +#define DEFINE_GET_USER(type) \ +static GET_PUT_USER_NOINSTR_ATTRIBUTES int \ +__get_user_##type##_noinstr(unsigned type *to, \ + unsigned type __user *from, \ + unsigned long size) \ +{ \ union oac __oac_spec = { \ .oac2.as = PSW_BITS_AS_SECONDARY, \ .oac2.a = 1, \ }; \ - int __rc; \ + int rc; \ \ asm volatile( \ " lr 0,%[spec]\n" \ @@ -149,13 +180,29 @@ int __noreturn __get_user_bad(void); "2:\n" \ EX_TABLE_UA_LOAD_MEM(0b, 2b, %[rc], %[_to], %[_ksize]) \ EX_TABLE_UA_LOAD_MEM(1b, 2b, %[rc], %[_to], %[_ksize]) \ - : [rc] "=&d" (__rc), "=Q" (*(to)) \ + : [rc] "=&d" (rc), "=Q" (*(to)) \ : [_size] "d" (size), [_from] "Q" (*(from)), \ [spec] "d" (__oac_spec.val), [_to] "a" (to), \ [_ksize] "K" (size) \ : "cc", "0"); \ - __rc; \ -}) + return rc; \ +} \ + \ +static __always_inline int \ +__get_user_##type(unsigned type *to, unsigned type __user *from, \ + unsigned long size) \ +{ \ + int rc; \ + \ + rc = __get_user_##type##_noinstr(to, from, size); \ + instrument_get_user(*to); \ + return rc; \ +} + +DEFINE_GET_USER(char); +DEFINE_GET_USER(short); +DEFINE_GET_USER(int); +DEFINE_GET_USER(long); static __always_inline int __get_user_fn(void *x, const void __user *ptr, unsigned long size) { @@ -163,24 +210,24 @@ static __always_inline int __get_user_fn(void *x, const void __user *ptr, unsign switch (size) { case 1: - rc = __get_user_asm((unsigned char *)x, - (unsigned char __user *)ptr, - size); + rc = __get_user_char((unsigned char *)x, + (unsigned char __user *)ptr, + size); break; case 2: - rc = __get_user_asm((unsigned short *)x, - (unsigned short __user *)ptr, - size); + rc = __get_user_short((unsigned short *)x, + (unsigned short __user *)ptr, + size); break; case 4: - rc = __get_user_asm((unsigned int *)x, + rc = __get_user_int((unsigned int *)x, (unsigned int __user *)ptr, size); break; case 8: - rc = __get_user_asm((unsigned long *)x, - (unsigned long __user *)ptr, - size); + rc = __get_user_long((unsigned long *)x, + (unsigned long __user *)ptr, + size); break; default: __get_user_bad(); From patchwork Wed Dec 13 23:24:52 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492075 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 7F3E9C4167D for ; Wed, 13 Dec 2023 23:37:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id AC4CA8D0079; Wed, 13 Dec 2023 18:37:12 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A4BE86B05A3; Wed, 13 Dec 2023 18:37:12 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 89CC38D0079; Wed, 13 Dec 2023 18:37:12 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 766286B05A1 for ; Wed, 13 Dec 2023 18:37:12 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 5692DA1EF2 for ; Wed, 13 Dec 2023 23:37:12 +0000 (UTC) X-FDA: 81563408304.01.DE3BF9C Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf24.hostedemail.com (Postfix) with ESMTP id 0DADD180027 for ; Wed, 13 Dec 2023 23:37:09 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=V256ksMV; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf24.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510630; 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=z5J7brqvs7iQUmi8H9IllLFRjEMOozIzZchhc/zzAHU=; b=DZ3XEiZY2DY7sSAfrcjos3n0l16aVUDd8nBawSCRNPPZknsQ5PYg6awQFIKQIyWDl2RGP0 QnybfRbc/Hi/a6yXnqQbTM5+6nXcT+6raWNkGvXaXpJ7oA1lEcr1BbWWcoEVWwAYfsF+Wm kUUJZVTOHxzNylmm94bnyq+Ox8NBSsc= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=V256ksMV; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf24.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510630; a=rsa-sha256; cv=none; b=6IsC5FSzD4BAituLIW6tSMv8bl8Up8azfdcq1liNwmJdj4dOcJMNqa1ho0Ncgk4nVlRX6D d/0ms1SMUwLWrpIGfbumJpmXfvd5FswPSEHsfPxxnoyoG+Uy1F0kdulGPa10Xr0uWlu0nW pRQ8pGiQHvp2rD0H893fgHCyTQBhKcI= 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 3BDNHcpJ002583; Wed, 13 Dec 2023 23:37:04 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=z5J7brqvs7iQUmi8H9IllLFRjEMOozIzZchhc/zzAHU=; b=V256ksMVqXfktUI/dmq84fvudEUMnhbgEDCIGla9LPeIfhJYDII+ppiqr4+KEmxZY5XG tLWpXbU1988W93aMEFpM8nWbfRVUhj2UiNuO7sDIwuA1PAfVLhWQuQlCKgkrSfid0unZ ICth5qXvVBJ7DDbMJCXBYAgMBBT5Doln45ZbVHD6hKH9O7YKqu23PUr93VrfDmWJagaa IAUQSVK7eFJ0AaLjhXzhkjLzi8WeQG7KZMQctMxIahgmDf+6+gMRLFGKP0te+h5v6t0Y kIEffIip8TUK09sEAn5xNYIoAVrRX3hFRgQAPBElSGk5juvYw7B9Kx4PeoKq4KHaa6X2 qg== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uyp5cgbe3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:04 +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 3BDNSxlp029814; Wed, 13 Dec 2023 23:37:03 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 3uyp5cgbdp-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:03 +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 3BDLCbYf028220; Wed, 13 Dec 2023 23:37:02 GMT Received: from smtprelay04.fra02v.mail.ibm.com ([9.218.2.228]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw2xyvrtw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:02 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay04.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNaxte40567346 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:36:59 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7327020040; Wed, 13 Dec 2023 23:36:59 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0A3D520043; Wed, 13 Dec 2023 23:36:58 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:57 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 32/34] s390/unwind: Disable KMSAN checks Date: Thu, 14 Dec 2023 00:24:52 +0100 Message-ID: <20231213233605.661251-33-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: Ms-EhDUZl8DdVSjxar4ujX-GpVodfDrl X-Proofpoint-GUID: oiTdss9fYYVlt96iU0FVBhj9BKbJ47sk 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-13_14,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=857 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-2312130167 X-Rspamd-Queue-Id: 0DADD180027 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: bpid48cztduejx1o36bbxzas1w63fh1h X-HE-Tag: 1702510629-963897 X-HE-Meta: U2FsdGVkX1/EvB3ecM2uwGqVit70hNTxA4FiGdwY/uOuoCij/7B8LWqtysU9mPmoRS9qS+S+6BA8f8qpo5/xW/DJeXBKXNJ/rx4twkMgcd/QiJdhKcBwdkDP7ca30skrxGJ/fKHKRF6mKi6Qo8R/8O0GhiloFc4WUFOTss87wvCKGsit5Tarn5jRLK4QTuCDCe1H29q6caFBVXcL+DrgV1os81wKe79uozdikwMFzoHRcZheibZ2Mv/18yW5lKNK4rMHjeY8rHTpW8sRuf27TyaOD16EDInwBhuq0xAqxkwDHk6OYgQ8tOJLbrziUiCPtmQ20eHAnhlCiv6YinXdmrX4bKKBo7rGjPviqDqz5HC4gytTjQpuWgRkVFEMxWuEAweboHXJJj1gqUEWJPzMJ7lur5WhAsEGIOa3hQux8etQVgWMC2C+HmYfrJx/QZimUgfMW6Lxi8iXLmB3pBvVbDFLd1FBd/HYTrO5tattIpL1qKBZtqE/lvvDN0fjYTmULc73OzE3Qs5hcTsV9+H/4WLsxg4GZHw/EOZ/PdASC90VE8Ky4OLW/PeY8nDDgx4RgeZk7U3BpSP0IfaWh+1OTm2082pS6zidMty0TsWlo+VBjTCLKnaVnWJa4cVFq+I5pWqEfaZeHUscb7wkrKG83ExK+ig3UK9Mo9ze48+SjHf0yYDPqaiIJ5tKiZPgjSUifPk/vrfvoBiFSxovA4NitT7w/fFbXRIaT5/O5fatFdbbKK2VMva8pGTFyLo6bywabGn+XbVAYAVqbFLHQ/ZBxvg7uJUbMi+4D8SYE4zwQPXS4UNio8v7asKziKyWz99n3asvZcETKFb2ni9jrSq1Ff5n6OviRn6QUEtP8AP3BLE8p7CUvOAnPIUnOZIKTLx6lhYMzzyKUwzQ59QpSMWNYfNUdJEPBQWANV+NJtBSipIMkArG9zDewvqiQrbiFxnizubP2zI3sQUeRYAT9i6 emrap+cg QJb5yGXb86Shw32TztsT/vBz59EGXu8nw9aq4A9j/pkKFY9P1J5m6PnnGnkr4CGIUcj9uvdY+iQ9os05FiUzJ5h91owk/fb2IhseqtKdDOR1kWtJJ17rQUA7/TAJWe6AwFcwImILfgbW3bA5PKO9oajQ+aehGt7l3IpnkMg7cs2xpORaki20gmU1R8v9bb7yyNJiWfTAaY1Uu8CVeostyDczMA7YGlf4hO9DTtdUDT7RzJQhsCzFpbta5Dg== 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: The unwind code can read uninitialized frames. Furthermore, even in the good case, KMSAN does not emit shadow for backchains. Therefore disable it for the unwinding functions. Reviewed-by: Alexander Potapenko Signed-off-by: Ilya Leoshkevich Acked-by: Heiko Carstens --- arch/s390/kernel/unwind_bc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/s390/kernel/unwind_bc.c b/arch/s390/kernel/unwind_bc.c index 0ece156fdd7c..cd44be2b6ce8 100644 --- a/arch/s390/kernel/unwind_bc.c +++ b/arch/s390/kernel/unwind_bc.c @@ -49,6 +49,8 @@ static inline bool is_final_pt_regs(struct unwind_state *state, READ_ONCE_NOCHECK(regs->psw.mask) & PSW_MASK_PSTATE; } +/* Avoid KMSAN false positives from touching uninitialized frames. */ +__no_kmsan_checks bool unwind_next_frame(struct unwind_state *state) { struct stack_info *info = &state->stack_info; @@ -118,6 +120,8 @@ bool unwind_next_frame(struct unwind_state *state) } EXPORT_SYMBOL_GPL(unwind_next_frame); +/* Avoid KMSAN false positives from touching uninitialized frames. */ +__no_kmsan_checks void __unwind_start(struct unwind_state *state, struct task_struct *task, struct pt_regs *regs, unsigned long first_frame) { From patchwork Wed Dec 13 23:24:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492077 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 379EAC4332F for ; Wed, 13 Dec 2023 23:37:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 630208D007B; Wed, 13 Dec 2023 18:37:14 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5B7D66B05A3; Wed, 13 Dec 2023 18:37:14 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4097F8D007B; Wed, 13 Dec 2023 18:37:14 -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 2A75D6B05A1 for ; Wed, 13 Dec 2023 18:37:14 -0500 (EST) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 0A69C16012A for ; Wed, 13 Dec 2023 23:37:14 +0000 (UTC) X-FDA: 81563408388.14.63CA0FB Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by imf15.hostedemail.com (Postfix) with ESMTP id C473FA000C for ; Wed, 13 Dec 2023 23:37:11 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=SoVtm+ks; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf15.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510631; 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=9DhmnRDZHM0G/+zJ9vPg8UIv4Wxto8sqiK6z/T5p8yA=; b=Ly+iDNg5rC5WEjIe5j81KmPo7hB8Ms1mYNzP4iVGd3RCdalVP2patWq7QoZUEu2JysRP2O Xc7m3ZXJpn49f6qU8LdEImkjhf+qODktOjoBuuGGh6DLKW0jCokClqRGSHnPG1wGmDngIH QS7fs4rlQiDdOKPcZfTktbPdn5TDHJ4= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=SoVtm+ks; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf15.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.158.5 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510631; a=rsa-sha256; cv=none; b=7Wwe1WCFbLwfpgjgsalGgfuKwTJREsbHSTWp2okA8iY09InhZ+fKbww81Zk/1VNOWBQIgt 18dACxAXA1PENlhxDay1KDgv4MG/P07VApngXjqg2G1VNO7LFqpwJgEMQ/CtpTvexp6nz6 3hH9f+4AXxH5oKhxQH1znJF+79+5u5w= 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 3BDNWgUP006776; Wed, 13 Dec 2023 23:37:05 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=9DhmnRDZHM0G/+zJ9vPg8UIv4Wxto8sqiK6z/T5p8yA=; b=SoVtm+ksejzpUcxhXHkKt2fIa+99Xpr6NJC/w+6Bo4U7Z/jw7xYpIdXMq/YOCdZO/HKc it9xI0sjDSYX/AJwLTY/T6ZWHTE4fhHU5oy3FH55pc9yODSXsD+o7lYUiu62jEYTwDKX sjRZ6LUbRTs6X/Iup//La9CZMaztwGDaUE0XvpoxU5nJ0SXts8I570XH6KHEMMv19Odm MRm2RPN80wbtMyM3qDssKwI9yCJ3SA1ez9i3aLSBvPcDzquqEcBXOHxMwua4+DUQgfzj KzZtaJajo8vw8e6Rs0blvT2BB+AXKBI/WL49QHZIR2Dt4RXqeNwsz3xpaki2irKHn0IU eQ== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uypce8257-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:05 +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 3BDNaaPL017559; Wed, 13 Dec 2023 23:37:04 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 3uypce824w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:04 +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 3BDL5lwv008450; Wed, 13 Dec 2023 23:37:03 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 3uw2jtmvre-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:03 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNb1fD20644524 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:37:01 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F0EE02004E; Wed, 13 Dec 2023 23:37:00 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8D08420043; Wed, 13 Dec 2023 23:36:59 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:36:59 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 33/34] s390: Implement the architecture-specific kmsan functions Date: Thu, 14 Dec 2023 00:24:53 +0100 Message-ID: <20231213233605.661251-34-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: qiAanGtjw_k-Ynk9arA87Z9sLMA4H9mO X-Proofpoint-ORIG-GUID: NB6qBGtqheS0YkDLhpLmLgpssbWag-y_ 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 mlxlogscore=726 lowpriorityscore=0 adultscore=0 phishscore=0 mlxscore=0 suspectscore=0 priorityscore=1501 clxscore=1015 spamscore=0 impostorscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspamd-Queue-Id: C473FA000C X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: 1g8tc15cihizcfq7sm6wswaswcphy48i X-HE-Tag: 1702510631-711843 X-HE-Meta: U2FsdGVkX1+xJOclQngL7ur73Y8/okFuXZuzdzC8wzfHLtmoGdKy3K5R5eOQiOEN9tpM0kdqtOTbMAuPUCGZZc0KXgemI1QwIqx3tzULLELp6y6YSJMoNNhK6N2CWu+itYKwj21GrKT0KRoLGAPVUiGoMYGp/61NJk/Ja5e9ZmmRVKFgnjSlpXPx7RjIZ5J9bLPg2YDN83DsHUAEPlh6INa+cG+C78NQ4AdMs/YaTr5TOJud9dtqh1JfUrTkMmrJhUidXaNvvCEZybuPu9A4fU5+Oo/cmJCQSrdz42ckDUfynhJ5brpsaVhE3qaMMM82VHytprO6LH//5xvAb6fa5UXKSdOJbTbcYnAMGSYZ/DsNJ9UbnSAUKbDF2ZZUF/c5mL0kMcNrg/VIqeI9dQHD/N5jpzJyCqJn+Igy1QOpF8uHJf0UnDuOYJTZoMe70XiMIz0d1eSgrto+PComtcqPjoSislnMjzgc4KQtf/hmaY8RVFVsOxNUCap3YTVUgPHqSKq71IyFTszbw7iBOsy3K2FRbWbzZ+X/PH6muFlLkPE+2aaHom9hCFLLEHhzSfWKRnrWhqjA10OfcgBAZl16zaRnLNOyVuC93xf69/NjVrDRe+WXr5qH/WYjuZAV08SvX5Q/lSAZzM31rU1zfqL+CemtsjgvYwF/N66DL6hB08HZ0K5wtffir1sq6ZATnHkc+mLNYgWcGBzHVQC/VjYL3UVPUpDmTVDht21uoY7WQpy5J8hIQOziBD6YB3F8wGKWs1d374pznrXI4H7ru0+5vcyHmSQD6sKxXUPPEZU4nPQjiHtUbYWQpZWFN2gQ1jvC86WQ/ClJ0fmpnihdfo0kfK3r78CbioM1LU1GGaxYrmt4nwcKbG4joKxa+Ogq/D+VXffhy75Yw4Dtc5pUGuzCeHQtYqMoDZ00rBEU0xl3rN6hbVqQeZn2A4uDUeDvu1w5Svwcy0vVn4vjhcMHF+r yZpK85Bq HaGUBHky11bx/iTmQnqew4dCdFHBamglxG5eSIR9kJCqIqwQnULpsElEguGQc6xMwsYzdnFlCAIT2Nf2lvBIQK7cTOIb545Aj42iZAgNUr2e+cJ9NGUpsWMCXVqP85L0B+uCtNpsnvYJaiQGt+ZWgOqAGRnodFuJa45lBUThPfzA5Vs6zvVGPHfI8t4BPHMe9BtE/5jnEV98LAY5Um9BbSsHwJIKU9LtvUjwWjYQoHOPNgGWL4XtRnJY7jlEuTIdBPmKFy4EsgE4oY5PZnN3O0Ymgt7UvNad/metXULT5G8UY2qUFUEtAk1WKkw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000027, 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 lowcore shadow by querying the prefix and calling kmsan_get_metadata() again. kmsan_virt_addr_valid() delegates to virt_addr_valid(). Signed-off-by: Ilya Leoshkevich Reviewed-by: Alexander Potapenko Acked-by: Heiko Carstens --- arch/s390/include/asm/kmsan.h | 43 +++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 arch/s390/include/asm/kmsan.h diff --git a/arch/s390/include/asm/kmsan.h b/arch/s390/include/asm/kmsan.h new file mode 100644 index 000000000000..e572686d340c --- /dev/null +++ b/arch/s390/include/asm/kmsan.h @@ -0,0 +1,43 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _ASM_S390_KMSAN_H +#define _ASM_S390_KMSAN_H + +#include +#include +#include +#include +#include + +#ifndef MODULE + +static inline bool is_lowcore_addr(void *addr) +{ + return addr >= (void *)&S390_lowcore && + addr < (void *)(&S390_lowcore + 1); +} + +static inline void *arch_kmsan_get_meta_or_null(void *addr, bool is_origin) +{ + if (is_lowcore_addr(addr)) { + /* + * Different lowcores accessed via S390_lowcore are described + * by the same struct page. Resolve the prefix manually in + * order to get a distinct struct page. + */ + addr += (void *)lowcore_ptr[raw_smp_processor_id()] - + (void *)&S390_lowcore; + if (WARN_ON_ONCE(is_lowcore_addr(addr))) + return NULL; + return kmsan_get_metadata(addr, is_origin); + } + return NULL; +} + +static inline bool kmsan_virt_addr_valid(void *addr) +{ + return virt_addr_valid(addr); +} + +#endif /* !MODULE */ + +#endif /* _ASM_S390_KMSAN_H */ From patchwork Wed Dec 13 23:24:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ilya Leoshkevich X-Patchwork-Id: 13492118 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 AB57DC4332F for ; Wed, 13 Dec 2023 23:39:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3262A8D007E; Wed, 13 Dec 2023 18:39:39 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2D2388D007C; Wed, 13 Dec 2023 18:39:39 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 128338D007E; Wed, 13 Dec 2023 18:39:39 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id E17BA8D007C for ; Wed, 13 Dec 2023 18:39:38 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id C7564140375 for ; Wed, 13 Dec 2023 23:39:38 +0000 (UTC) X-FDA: 81563414436.25.F4CC0AA Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by imf21.hostedemail.com (Postfix) with ESMTP id 66E8B1C001B for ; Wed, 13 Dec 2023 23:39:36 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=Y2y+vBrI; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf21.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510776; a=rsa-sha256; cv=none; b=Btvvbffseae270D7Zrl3YUKr2DjMcCQBHLPgJkW1Tw4fcNMCI0e8N7waNVJRawda0pYVbF X3k6fIAGPIofIEN06J4qREbbH78Ir+Tg7oaVidDK63Z+aSXmEFejWJCCCic86XlgzZb9se Uel/TY3EebzUDGLN4kdNeGk2Z2mvjCY= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=ibm.com header.s=pp1 header.b=Y2y+vBrI; dmarc=pass (policy=none) header.from=ibm.com; spf=pass (imf21.hostedemail.com: domain of iii@linux.ibm.com designates 148.163.156.1 as permitted sender) smtp.mailfrom=iii@linux.ibm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510776; 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=gYyFgOCVso5JtRE0tmyb4wuw79KiFxJvcJzKqQ9U3hM=; b=OBioGzw+pWYWdPkdibVlHx5K2VnSByvkcd3bUfVaoay0NL1oo6pRUJoeFyjOv9Om2qRpTz gFwFZVL6WWNdwYCbOSs6XdQkJFRwvhHl/aglv75IFCPnu1YBtG3X+xDnnQmoxlfhdYMOnh Q59/kHyyDCC/P3l2HW9L++cQeW5vSH4= 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 3BDMdHfe017114; Wed, 13 Dec 2023 23:39:30 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=gYyFgOCVso5JtRE0tmyb4wuw79KiFxJvcJzKqQ9U3hM=; b=Y2y+vBrIpCcMGXF3NRSV10FFkPdM73O3qLUMGvHbcQyh8ta3xGTfLZrNiyo87jvc8syI FRzeqomhRZduRUtY/dUzVfgr0fdV7LA0rZVKTDSw/1sTDbiGFyrwBX91oYj0bL30cQj7 C9LxCEbYprnIvqxvcgSgJUSumx9hQn0hhNCHWiJqGUm9oUvyMqxLAtaN2ANhdetotDxi WGlcfKBGWtKeeihq80fcGT9w3VJGA+z54azbD+YRIsygeblUzMxfBFeEehKa5F46Q4jG gz3InB755FjlQc3o7JxlN7j/nixnoujlyi/9Kk4UHCXwpJueAUy563ZLRGOKLh0BcL7m 1Q== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3uykvmuvsd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:39:29 +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 3BDNdSJk015295; Wed, 13 Dec 2023 23:39:29 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 3uykvmuvp5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:39:28 +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 3BDLX5Hc012593; Wed, 13 Dec 2023 23:37:05 GMT Received: from smtprelay03.fra02v.mail.ibm.com ([9.218.2.224]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 3uw3jp4ndc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 13 Dec 2023 23:37:05 +0000 Received: from smtpav02.fra02v.mail.ibm.com (smtpav02.fra02v.mail.ibm.com [10.20.54.101]) by smtprelay03.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 3BDNb2jL7471776 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 13 Dec 2023 23:37:02 GMT Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7A00620043; Wed, 13 Dec 2023 23:37:02 +0000 (GMT) Received: from smtpav02.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 153A920040; Wed, 13 Dec 2023 23:37:01 +0000 (GMT) Received: from heavy.boeblingen.de.ibm.com (unknown [9.171.70.156]) by smtpav02.fra02v.mail.ibm.com (Postfix) with ESMTP; Wed, 13 Dec 2023 23:37:00 +0000 (GMT) From: Ilya Leoshkevich To: Alexander Gordeev , Alexander Potapenko , Andrew Morton , Christoph Lameter , David Rientjes , Heiko Carstens , Joonsoo Kim , Marco Elver , Masami Hiramatsu , Pekka Enberg , Steven Rostedt , Vasily Gorbik , Vlastimil Babka Cc: Christian Borntraeger , Dmitry Vyukov , Hyeonggon Yoo <42.hyeyoo@gmail.com>, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Mark Rutland , Roman Gushchin , Sven Schnelle , Ilya Leoshkevich Subject: [PATCH v3 34/34] kmsan: Enable on s390 Date: Thu, 14 Dec 2023 00:24:54 +0100 Message-ID: <20231213233605.661251-35-iii@linux.ibm.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20231213233605.661251-1-iii@linux.ibm.com> References: <20231213233605.661251-1-iii@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: CTCQr_1RVlp-5vBpdhAQv5G_JXLdChBk X-Proofpoint-ORIG-GUID: FOlLAufKv9YIP5YH16oRSkto3lOlE6sn 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-13_14,2023-12-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 phishscore=0 mlxscore=0 adultscore=0 spamscore=0 mlxlogscore=755 clxscore=1015 priorityscore=1501 suspectscore=0 impostorscore=0 malwarescore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2312130167 X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 66E8B1C001B X-Stat-Signature: 7ttee7acz4qt3t9jod6n3pjjqmto8s7k X-HE-Tag: 1702510776-432029 X-HE-Meta: U2FsdGVkX1/Jkg/rh+Jqx+HWTanE1l0WBMmpIjRW4v943SzBmBSbYchoNGW3/wx3j6JnP/gAqN3G0Awm6feetyf5BIIcUsNMcH8lyLwyop0WNQp37lt9hq1sVfckQtTKmJe561a+Wa/0P3a3MDKmh9u/3OTVAlhRMC5GQhNIdch0FukabHJqeX5a9Et17eI+QAST4TBeD0p1OfaX0Bs/82FSBJgDuUCDMZEreI6hq7v11mxhvbVSz5Mds/bwo3J+Cnryslhp35wKHL1zONyqzzvBMPEqV+/XBIMt1oJgcheChnF2up2Kr7Yw07UffZ22KzsDY743AgrN858LqanGDmpVOddYqZY2mLdOQEuWEmw+xbLHh+wB4/nXjYYI9YjHXCUISzWbHLRrZ9NtJiuWnCb/ikJFeANE25Nq4t+TsIM7nOyuJ/XPAJJXlA+NbCw8srZifoP0AqMDu29c7zzky8MXii5RiDGI0j/QYhAtwyWYNmB2qVy8SAbguiLMgYYJsFnU7DwSNaiS+6c9CWGwU/lLwdfzOC406ZsBEtTtXzA3O9KN1rSFrfGlsYVERZocdD2slcUIUTxnuvls+56g/rKnvOjKZcnurQ4NfnR0u9Qfos6Lauay0bYisVu385m2S0pfEBL7mwQ3jZLU+OoAe+xdMsA4LnCvMg6oj6sNcgxYxbaBUniV4tXhC0Y+5alHxYlva0YZuxtQWdranVagWd86HWrqr5iNdXchOUQJVenPpoRMQ4mb5wepeKgy9HPREApql1YMv9omqIlXtI33iMM0OR8qm6sKvb6DcwuMIVkPvIReKtekxKi4sEVxhQzooioZdzodn/lz39KsKGJ89wXtSbf7wWSnV3W73eYiXpoes1WZPs7S0ds7iBqRcDPP8gyfwrvWVgdrJkgheLG2XEntVnopSupdJUeqX5Wsk7RlCDEtIQG4wB779YvgZ4nqFzOmtLQdQDe63d153e9 Z0udBsAz Gqf2MHloZ6IW8EtLXwtTTEOGGbVByTQcMudhP+0m3YSx5LWJwOOO6FB4pIePjDGzI+NpgDAgi8S1lHNrCJDmcPbQWvKHWPJqnQnDfUTAInDjru6Tn5Uk8ta2tOkS87InxttTh2D50I30JpRlLa+67jwIV0cJZcmaZeQPMPn/NQQrAezQg833LiePQpKZ6AIEsROOtNdJgt6QhUsiwtP6doYwk2Q== X-Bogosity: Ham, tests=bogofilter, spamicity=0.001500, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Now that everything else is in place, enable KMSAN in Kconfig. Signed-off-by: Ilya Leoshkevich Acked-by: Heiko Carstens --- arch/s390/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 3bec98d20283..160ad2220c53 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig @@ -153,6 +153,7 @@ config S390 select HAVE_ARCH_KASAN select HAVE_ARCH_KASAN_VMALLOC select HAVE_ARCH_KCSAN + select HAVE_ARCH_KMSAN select HAVE_ARCH_KFENCE select HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET select HAVE_ARCH_SECCOMP_FILTER