From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E7EA9C36010 for ; Fri, 11 Apr 2025 12:37:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3D8BF2801B4; Fri, 11 Apr 2025 08:37:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 385C928019B; Fri, 11 Apr 2025 08:37:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 274082801B4; Fri, 11 Apr 2025 08:37:40 -0400 (EDT) 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 089AC28019B for ; Fri, 11 Apr 2025 08:37:40 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 8F925B34EB for ; Fri, 11 Apr 2025 12:37:40 +0000 (UTC) X-FDA: 83321714280.15.13057E9 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf11.hostedemail.com (Postfix) with ESMTP id 7750940005 for ; Fri, 11 Apr 2025 12:37:38 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf11.hostedemail.com: domain of kevin.brodsky@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=kevin.brodsky@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744375058; a=rsa-sha256; cv=none; b=wdOWyCS+cG8MBk1+PJhMnuHjmo4XIn1OLVWcsCf9riLL+oWDCfQL/UnJJt8CzGJ9k/wiK4 CHtpXegIzXLjExlrsE/tdavz/EKXRD8KrgigOmcGN9B4+HmQy04a2jiZ2KTCXet4b9sPtk xEtQBc/8HBXyWTgrc8Zrx/P7ytKCdss= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf11.hostedemail.com: domain of kevin.brodsky@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=kevin.brodsky@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744375058; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=tQdjS8wEVI0RSkbTJN7+BoJg6JW5UQYaGPhCYbApfk0=; b=4cC//6F37C9VNiqT78ljdQUzwipeiOZlWnHbaQhSIUeelTV1ZHb/SYlixBnxpKGr3ohKpX zOEVN5jr2HDtIlxZON7gXhnbqaRWBzYwUWPKa+U+nOZf+HNiCyU1Yz+5Uufe23NqNW0Ewq DqFcvLg+mUZtZkSRi1p8dpn3R/xCqKo= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 12E3F106F; Fri, 11 Apr 2025 05:37:37 -0700 (PDT) Received: from [10.57.72.36] (unknown [10.57.72.36]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 81F003F694; Fri, 11 Apr 2025 05:37:31 -0700 (PDT) Message-ID: <5bad616f-8a62-46f4-9c0c-929f4ab1dde0@arm.com> Date: Fri, 11 Apr 2025 14:37:28 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH v4 00/18] pkeys-based page table hardening To: Ingo Molnar Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton , Mark Brown , Catalin Marinas , Dave Hansen , David Hildenbrand , Ira Weiny , Jann Horn , Jeff Xu , Joey Gouly , Kees Cook , Linus Walleij , Andy Lutomirski , Marc Zyngier , Peter Zijlstra , Pierre Langlois , Quentin Perret , Rick Edgecombe , "Mike Rapoport (IBM)" , Ryan Roberts , Thomas Gleixner , Will Deacon , Matthew Wilcox , Qi Zheng , linux-arm-kernel@lists.infradead.org, x86@kernel.org References: <20250411091631.954228-1-kevin.brodsky@arm.com> Content-Language: en-GB From: Kevin Brodsky In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 7750940005 X-Stat-Signature: o55mfkcff3t74w9z8yubb13kj7ucr9mb X-HE-Tag: 1744375058-69220 X-HE-Meta: U2FsdGVkX1+r4iKH5gwvq4LRPyLYaluuYcTZCUI7yTsf5g1xwRVi9SyY3JUHgkZx961oIxHAniR94t1R6NEjBZbGas6Tdd3S+0vVlv0RnqaA61zMb9TmpPTVIvfTqM6Sl08buEkpzG0OdbpVwJZpV5K3H0CwwauyvoG3DecJSiAZHnCUjHelRjpRsWdhnH3V2LFACsLfX+HLx+VIyh1EnXsLn/WiD2QPr4vttS8PIF4AGcFM/Vv6QoDcFsNqIiavoulGEaaAw1moiLdCRiWs8lIZnM4NaJfPSUEC97TL8bP+de0qnS6j2tjHq7X9GNNc2qcGQlrgVMgxjiOmkKBFyhSVqZbYnaTZbnM7a/OkKX8WQJ337UUUg4zbcGGRcB5ZLJvTVeARnYggKZb82uY4uqnJPwz9JkiSEt6+bOdWxuuGIRMolhT4ZeaOmpupHZKXbmFoPIDHmaJf9G3daeaHoiQ6MMwPqoSIUAu6yCymA3xyCrKKrpNaU9QX5K7Fu0XeBzC3mg2lUOGzmG/feTsJCJxeaj+OS8Dh0OsG/5Ory51NxOfWHkwkijepfAsd+4tSvcAzVKF5KKFgfdQkpPxKOSDyeuZqEMYAy7qvB+qemkQOrQde+kTr1jJ7lcTHOQ9Blr1kdxGAOoUU3tjZJOI1auktimj/kYrwZlIQ75X6HAbhl+JX/AqmT55ODmJMQCK8a330YPYU1G/gnBV0PaGC0GJRoMroMLm8LnqTvwDioZaFfjm5DNF7jG/EuUL0CRF5P5BKKWdlXwEMg/iSAeR6FYkhGP/tylBrQrLIMWjw8EASmWe0UEUMTEdraOnwcBQBvCSRVRBKRJUxLi7QkV3p/0ekAbpu1moBLXBye34N8gSqAUWsohBm67Pf3rCvnVteoT0B2MkFJGjnylscYuoHgq4d8tUNj7Q0VRB6Xp48lJ5VXQYlmv90WPntYho+e7gCxfSPEDI6JQah8xOu4XJ HnyI6B2/ 9h0qMnbsXvuIGqQMEenIEpKnM9iD7Uo31IVBtlfxK7LSTbGSHFSDUBGYqAGxfyR+YrtAYbLZXshTXn2NOXiGB3Fa6ElY60YKolqIRpsUY8ELbcVovVrfh0dGEbn9Ol3gtsRFP0TMGamcB9yiqpJ9K+Wjtx0hd3j/Zzcbr 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 11/04/2025 11:21, Ingo Molnar wrote: > * Kevin Brodsky wrote: > >> Performance >> =========== >> >> Caveat: these numbers should be seen as a lower bound for the overhead >> of a real POE-based protection. The hardware checks added by POE are >> however not expected to incur significant extra overhead. >> >> +-------------------+----------------------------------+------------------+---------------+ >> | Benchmark | Result Class | Without batching | With batching | >> +===================+==================================+==================+===============+ >> | mmtests/kernbench | elsp-64 | 0.20% | 0.20% | >> | | syst-64 | 1.62% | 0.63% | >> | | user-64 | -0.04% | 0.05% | >> +-------------------+----------------------------------+------------------+---------------+ >> | micromm/fork | fork: p:1 | (R) 225.56% | -0.07% | >> | | fork: p:512 | (R) 254.32% | 0.73% | >> +-------------------+----------------------------------+------------------+---------------+ >> | micromm/munmap | munmap: p:1 | (R) 24.49% | 4.29% | >> | | munmap: p:512 | (R) 161.47% | (R) 6.06% | >> +-------------------+----------------------------------+------------------+---------------+ >> | micromm/vmalloc | fix_size_alloc_test: p:1, h:0 | (R) 14.80% | (R) 11.85% | >> | | fix_size_alloc_test: p:4, h:0 | (R) 38.42% | (R) 10.47% | >> | | fix_size_alloc_test: p:16, h:0 | (R) 64.74% | (R) 6.41% | >> | | fix_size_alloc_test: p:64, h:0 | (R) 79.98% | (R) 3.24% | >> | | fix_size_alloc_test: p:256, h:0 | (R) 85.46% | (R) 2.77% | >> | | fix_size_alloc_test: p:16, h:1 | (R) 47.89% | 3.10% | >> | | fix_size_alloc_test: p:64, h:1 | (R) 62.43% | 3.36% | >> | | fix_size_alloc_test: p:256, h:1 | (R) 64.30% | (R) 2.68% | >> | | random_size_alloc_test: p:1, h:0 | (R) 74.94% | (R) 3.13% | >> | | vm_map_ram_test: p:1, h:0 | (R) 30.53% | (R) 26.20% | >> +-------------------+----------------------------------+------------------+---------------+ > So I had to look 3 times to figure out what the numbers mean: they are > the extra overhead from this hardening feature, measured in system time > percentage, right? These are relative increases compared to the baseline for this series (described earlier on: 6.15-rc1 + 2 additional series). Real time is measured, except for kernbench where all 3 measurements are provided. > So "4.29%" means there's a 4.29% slowdown on that particular workload > when the feature is enabled. Maybe add an explanation to the next iteration? :-) Yes that's right. I thought it was clear from the description above but evidently I was wrong :) I'll add a "plain text" reading like this one in the next version. I should also have mentioned which config was used, namely: defconfig + CONFIG_KPKEYS_HARDENED_PGTABLES=y - Kevin