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 42903C6FD1C for ; Thu, 23 Mar 2023 11:59:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D1A736B007B; Thu, 23 Mar 2023 07:59:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CCB236B007D; Thu, 23 Mar 2023 07:59:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BBA436B007E; Thu, 23 Mar 2023 07:59:29 -0400 (EDT) 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 AC4286B007B for ; Thu, 23 Mar 2023 07:59:29 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 6C691803DF for ; Thu, 23 Mar 2023 11:59:29 +0000 (UTC) X-FDA: 80600018058.03.D572C84 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf18.hostedemail.com (Postfix) with ESMTP id 8AAAA1C000D for ; Thu, 23 Mar 2023 11:59:27 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf18.hostedemail.com: domain of mark.rutland@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=mark.rutland@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1679572767; 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: in-reply-to:in-reply-to:references:references; bh=oDWzRyxNGqGz5QaiAe7u5RMaCuYnQOZcFGmb22ZozxI=; b=bXKRt2Df9vCSJKL6bWNGsEf1aGTAOdMuc52GysG5YBjuw99y/I1KvnW72VcT4fhJjVgJYu 9CIj61UakcZqzFUIL0NKQPrjxH6ve4e3oE4DBwNff/JhpdBuSLfkmyToZykh6lMdedCV34 a2N88Ncv3lqZ2mqo086Rl5oZwVyhGSM= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf18.hostedemail.com: domain of mark.rutland@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=mark.rutland@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1679572767; a=rsa-sha256; cv=none; b=RX92SJjxnAS37yh9IwXMF4lZtJmcJmiqk4HGTCO1biGOguv7FzA4Xo8u2GoUtFMCtqixMd zZBOyvLB38zDzkm20Rutx8TLURcL6u5Aor9b/anLiw2ybEKu1LQteOU/FNq3h1IqFovNI+ htP3waiOyKu2ot36SN1yilMlqgNEjqo= 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 7D80F4B3; Thu, 23 Mar 2023 05:00:10 -0700 (PDT) Received: from FVFF77S0Q05N (unknown [10.57.53.155]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 991403F766; Thu, 23 Mar 2023 04:59:24 -0700 (PDT) Date: Thu, 23 Mar 2023 11:59:14 +0000 From: Mark Rutland To: "Kirill A. Shutemov" Cc: Chaitanya S Prakash , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton , "Aneesh Kumar K . V" , "Kirill A . Shutemov" , Shuah Khan , linux-kselftest@vger.kernel.org Subject: Re: [PATCH 0/5] selftests/mm: Implement support for arm64 on va Message-ID: References: <20230323105243.2807166-1-chaitanyas.prakash@arm.com> <20230323111436.mj2kbesfxfmvj5by@box.shutemov.name> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230323111436.mj2kbesfxfmvj5by@box.shutemov.name> X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 8AAAA1C000D X-Stat-Signature: au6o4g48hsbdyotszgrd93ytre6trtqr X-Rspam-User: X-HE-Tag: 1679572767-556872 X-HE-Meta: U2FsdGVkX185LEoyh0tDnFK9RYHgdcXADkgQRTs10Ak0ZNg17xdAJGeQxAe5iGHyCo5Kq9nZ1kM9HCaY26fLRTjS2XH8boNNXOtjYD+oBJuwyu4U4TYs7KpGWcAJYoOL15NnA6ZyficgtEKJv/6mdAQvWuLI68oHsM/1MORryigpG5hY5vqi0BToxCDHDKfyBQ1y5NTd2vHlIrscyQyC829z+ws3xCGGL1/qfEQAZLeWZh5caW4D6oc7IgCSfZJ8msmOiYhzW0OO4mL68CuuwDpGKkSf1KVxM+hNBALV/a/ESJef0cv5OEexAB/yFUFVy73o7g0qItiG3D6tQuqxwOXS4QslN6nx/24V6HNfI+w0o6Tgc+bXp1CBqqlJoIADH48ndHOXYray+DBVdNJNIRTItxr5q6wmu1bbEsrnnzN8PZWKagM9tSMTTfCMJbY8ZrUCRaK8Rt2ge/+PMxAkeI0CH/yf+eL9fZ5Dy9Znerp2RFAGvcOWssnkG/WpUtcyC8Jwes9iAmIlckoAo4ngj8IBuX+27GKW95kIlH/gLRu9eIQB8+MqGYB+o7OO36jAs5HzgXpgXcqPsodJTP3JUtypRIeExVX9RnmWycuUfqFXv79As5oBgJ17UM5KMEZLwlvT8tKX0n4T8dWVerPbqJTljBx29BEUNwIIfMPdOduFw06pa4AKIRUI+eoxkLH5e6AwjWjxcVBD8nDqJL14BRsxjNFd+Dcvfku8cDYW9NIViJPqBouryXA8kolTpgKWXbA9ll52rEp4EZQDfvvXCIjKXAlcF8EWcjbn50/B9re3sG7CMdF1YdV1ZpUhQ0QbhuKCVH1gh5Gl+0GtkxoORzDoo3j7wXm+tdlfMwVzEwdl408NmTm/e9NzNXAD61AgmSrb8efzA70Ozi7tnUp3JddYimTROqPHihpMu/s7DsakH9IOKpAb/1pZYsFagkI6+e4sSi4j3cUQho3kDQA zy7tEKCN 6R4IAxv9AavUWmdHVFFRB9PYqHaOJjcFervUjanHXax7vLzinEIbVSMlk5sdngakwydARnSrtKYOE6MknfsvZv9Fo0upRe98SHaW0NrlCH11XWB0yE2YlPdvG+9jv0PF3cG/P3E82JTWeV1yPwRTRGQvd/WttB4nB3i5WpmY2b/9FE4Bx0E8VnMQuXmMGkH1aCMaUa7GwNHnq62OSF8Ro1Nk8qDNWwxsLpN+/fFDeY5antdbuw4NvuuoTipK6hgvh0ilT0BPWTcqYOeRAye3fOKTJp8T44zvi1Q1R4wuvi30Fq56By7L/9z/bkY0WR9YCwKk4rY/3zoWDmA42Rwz8EbD9HgwRz8KkuSf/ 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: On Thu, Mar 23, 2023 at 02:14:36PM +0300, Kirill A. Shutemov wrote: > On Thu, Mar 23, 2023 at 04:22:38PM +0530, Chaitanya S Prakash wrote: > > The va_128TBswitch selftest is designed and implemented for PowerPC and > > x86 architectures which support a 128TB switch, up to 256TB of virtual > > address space and hugepage sizes of 16MB and 2MB respectively. Arm64 > > platforms on the other hand support a 256Tb switch, up to 4PB of virtual > > address space and a default hugepage size of 512MB when 64k pagesize is > > enabled. > > > > These architectural differences require introducing support for arm64 > > platforms, after which a more generic naming convention is suggested. > > The in code comments are amended to provide a more platform independent > > explanation of the working of the code and nr_hugepages are configured > > as required. Finally, the file running the testcase is modified in order > > to prevent skipping of hugetlb testcases of va_high_addr_switch. > > > > This series has been tested on 6.3.0-rc3 kernel, both on arm64 and x86 > > platforms. > > > > Cc: Andrew Morton > > Cc: Aneesh Kumar K.V > > Cc: Kirill A. Shutemov > > Cc: Shuah Khan > > Cc: linux-mm@kvack.org > > Cc: linux-kselftest@vger.kernel.org > > Cc: linux-kernel@vger.kernel.org > > > > Chaitanya S Prakash (5): > > selftests/mm: Add support for arm64 platform on va switch > > selftests/mm: Rename va_128TBswitch to va_high_addr_switch > > selftests/mm: Add platform independent in code comments > > selftests/mm: Configure nr_hugepages for arm64 > > selftests/mm: Run hugetlb testcases of va switch > > > > tools/testing/selftests/mm/Makefile | 4 +- > > tools/testing/selftests/mm/run_vmtests.sh | 12 +++++- > > ...va_128TBswitch.c => va_high_addr_switch.c} | 41 +++++++++++++++---- > > ..._128TBswitch.sh => va_high_addr_switch.sh} | 6 ++- > > 4 files changed, 49 insertions(+), 14 deletions(-) > > rename tools/testing/selftests/mm/{va_128TBswitch.c => va_high_addr_switch.c} (86%) > > rename tools/testing/selftests/mm/{va_128TBswitch.sh => va_high_addr_switch.sh} (89%) > > The patchset looks sane to me, but I have question: why arm64 has switch > on 256TB. The reason we have the switch is to keep system backward > compatible. It's the same reason, it's just that arm64 initially supported 48-bits / 256TB of user addresses (0x0000000000000000..0x0000ffffffffffff), while x86_64 supported 47-bits / 128TB (0x0000000000000000..0x00007fffffffffff). Note: arm64 has separate page tables for the user / kernel halves of the VA space, which in practice means we get an extra bit of address range for each half. > Maybe it is better to make arm64 switch also on 128TB to make it > compatible across architectures? I don't think that's something that we can change; user addresses between 128TB and 256TB have been the case for over a decade now, and avoiding that by default could easily break something. Thanks, Mark.