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 50BA7C74A44 for ; Tue, 14 Mar 2023 04:24:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E1DC16B0075; Tue, 14 Mar 2023 00:24:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DA6076B0078; Tue, 14 Mar 2023 00:24:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C953D6B007B; Tue, 14 Mar 2023 00:24:13 -0400 (EDT) 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 BB8E56B0075 for ; Tue, 14 Mar 2023 00:24:13 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 9280EAB328 for ; Tue, 14 Mar 2023 04:24:13 +0000 (UTC) X-FDA: 80566211586.08.6245C23 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf26.hostedemail.com (Postfix) with ESMTP id E4F7814000D for ; Tue, 14 Mar 2023 04:24:11 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf26.hostedemail.com: domain of chaitanyas.prakash@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=chaitanyas.prakash@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1678767852; 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; bh=0Pqd2PsuYNDNaOi8s1ryg2w2yWR9apHdWS/27Uj1Us0=; b=y32DMWceof0QnZhMGXsaF2sFAB4czP9ytAsnjRwKKvO8R4lUnMCDhJmMcJ2ILPMtBHjyrD PMLcnLhAF6pfYy/6gLsLw2xd3wHhmtHa46/s9NFMvwOvePu02vElwdkq3uFBseXX0fLt2z XzWHEIIEw/UJ8665LER9ZTTrQpqMIxE= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf26.hostedemail.com: domain of chaitanyas.prakash@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=chaitanyas.prakash@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1678767852; a=rsa-sha256; cv=none; b=zmQVZpS4wCd/Bv/VaNDlZULbi8uLn53YvhjOvpASiOtvixRYHP6wXk+bhvo0p9bsBVLpPf YaK/qG5TNKJoLz6aKsiCRPGalJetNBGOtU+tpJg7rCH5W+/FO0PxsUrsol+2Xn7sjigT3q 4AMmq2LLt0Lf7Q4Ot2lfa9u1knD7aK8= 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 A5F7E4B3; Mon, 13 Mar 2023 21:24:54 -0700 (PDT) Received: from a077209.blr.arm.com (a077209.arm.com [10.162.42.149]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 032E73F71A; Mon, 13 Mar 2023 21:24:07 -0700 (PDT) From: Chaitanya S Prakash To: linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: Chaitanya S Prakash , Andrew Morton , Shuah Khan , linux-kselftest@vger.kernel.org Subject: [PATCH 2/3] selftests: Change NR_CHUNKS_HIGH for aarch64 Date: Tue, 14 Mar 2023 09:53:50 +0530 Message-Id: <20230314042351.13134-3-chaitanyas.prakash@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230314042351.13134-1-chaitanyas.prakash@arm.com> References: <20230314042351.13134-1-chaitanyas.prakash@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: E4F7814000D X-Stat-Signature: z9adh55o77mgjomas4murbadwbx9r1k1 X-HE-Tag: 1678767851-215573 X-HE-Meta: U2FsdGVkX18JHIWit34AAuAlytlRvTgkC0RI06Xlij4uHvZKz3hP7zc/YWYtV+wF9FhWzeJx2DroT9twItvk14mTCdXGAdPGOWL8X0iMr9bAQDgkr0znIUQE6+qGmYDHMt4KuWt4755db1O14f1tkIJFhpdru2uRt36LgVQQet0YqHJshpRmmEc1ZOWOln0+uQNehlXssvfNK9B8W/pDP2Cc/nKCafcXnO7KsKCYDPNFjOu+ckrsgME8i7QruqUJZtEqjyPRj8+/EpabC1COqeIfTCJVrLjTNW/PBJ8EKcxdslHX4Ij26R++RmWJHVtqrMfcHeXRuYDUaQmTYfv1/D1anr+SWx3IG3jHlAdFDDVJG+Mda95OiLqbzI39dIDhjm1sOUbTAjiBmSJse69SCPNospqr8N8XO89WatTfL1N+QcbokLmZzOwb4ZPWPFz/O5F6qeYb0bnBsBb5LGguhv6ZKJXQdUu1nLpXfkTUBgwN13+zYxJoK4v3ER/1BmQrQyh67RsG7P3yamHCgBC1Nq5k6YHy6mS6XyHFaHWxGEgPr+JBM6tkX4A6AxytXmU4PO/6r5CccEjgLCcM/Yo1dFYWN1bPAItfrMOAPk3mPCMTfVXPfTkEqiN/hGzdasol3QL7+fdVBGSl3aTJyXsUXggPPicj+NOZSf2ECxKn6OaqEZHfpohqDHmW8kfpVjh5Q+Bqq7vT3XdKW4A6ovz4viDS2GkqwWTBz9QH+yKh/fsZGgX6dJfGCydOJMEVKP/FTbmnnAtXIx+Z+nIIUU3OpW83RY5+hG1Qs3GRtw0/l/VZbAIYgf3+jNQRMJCLXARdgFYaYuaD3h01GGaBf6gPR1wsqxp9CcW+UKexz6kThPhLbmNEjhGuQ2yYjvk31ezdyxH/g0hRh7CcVV9bSdo6sh6WPpSvFDxqR0GBLMqRbTVn0k/QNd6VMqSOhM6hv2bqQZIPtbVXDM5Xgr4b5db E3i/7RiF ad4yvn2aM/DdvjFhJWNSCA96w1QxZOSPGAFRt5Fvv4LdDS01ywrBDMPHmfBXAW9AbGasaD0lQFTVFQ5ZLkO3P5uidKQOQuM8+S68XPjvYuRjuhk0Nmv+qLMnod5p0/gcG16Q5hmsmfgy9n2EPhrYiShFg8zzNxYb59hDz2G6W2IrsDmy6LdbRajLhWpP5oETcfxnmLrS1OAJSx4Q/1gL7zoKVc5oafmraw5JGyL/QhPTdb8vzYM+9I/TRoTdnFjhzljJUk/qwBxHigCTzXXnMFy6EPmveTcHLQHGiXM/rZcowre9T+l60ZlMshY6dNY4R+kJUjjg4MrtNduuQOl8CdgxlH4juLkxK/c8Azop9dF40SsdzNDZeUDOJIIIbsZEHoXCJjMn4gbM7rZM= 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: Although there is a provision for 52 bit VA on arm64 platform, it remains unutilised and higher addresses are not allocated. In order to accommodate 4PB [2^52] virtual address space where supported, NR_CHUNKS_HIGH is changed accordingly. Array holding addresses is changed from static allocation to dynamic allocation to accommodate its voluminous nature which otherwise might overflow the stack. Cc: Andrew Morton Cc: Shuah Khan Cc: linux-mm@kvack.org Cc: linux-kselftest@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Chaitanya S Prakash --- tools/testing/selftests/mm/virtual_address_range.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/mm/virtual_address_range.c b/tools/testing/selftests/mm/virtual_address_range.c index 50564512c5ee..bae0ceaf95b1 100644 --- a/tools/testing/selftests/mm/virtual_address_range.c +++ b/tools/testing/selftests/mm/virtual_address_range.c @@ -36,13 +36,15 @@ * till it reaches 512TB. One with size 128TB and the * other being 384TB. * - * On Arm64 the address space is 256TB and no high mappings - * are supported so far. + * On Arm64 the address space is 256TB and support for + * high mappings up to 4PB virtual address space has + * been added. */ #define NR_CHUNKS_128TB ((128 * SZ_1TB) / MAP_CHUNK_SIZE) /* Number of chunks for 128TB */ #define NR_CHUNKS_256TB (NR_CHUNKS_128TB * 2UL) #define NR_CHUNKS_384TB (NR_CHUNKS_128TB * 3UL) +#define NR_CHUNKS_3840TB (NR_CHUNKS_128TB * 30UL) #define ADDR_MARK_128TB (1UL << 47) /* First address beyond 128TB */ #define ADDR_MARK_256TB (1UL << 48) /* First address beyond 256TB */ @@ -51,7 +53,7 @@ #define HIGH_ADDR_MARK ADDR_MARK_256TB #define HIGH_ADDR_SHIFT 49 #define NR_CHUNKS_LOW NR_CHUNKS_256TB -#define NR_CHUNKS_HIGH 0 +#define NR_CHUNKS_HIGH NR_CHUNKS_3840TB #else #define HIGH_ADDR_MARK ADDR_MARK_128TB #define HIGH_ADDR_SHIFT 48 @@ -101,7 +103,7 @@ static int validate_lower_address_hint(void) int main(int argc, char *argv[]) { char *ptr[NR_CHUNKS_LOW]; - char *hptr[NR_CHUNKS_HIGH]; + char **hptr; char *hint; unsigned long i, lchunks, hchunks; @@ -119,6 +121,9 @@ int main(int argc, char *argv[]) return 1; } lchunks = i; + hptr = (char **) calloc(NR_CHUNKS_HIGH, sizeof(char *)); + if (hptr == NULL) + return 1; for (i = 0; i < NR_CHUNKS_HIGH; i++) { hint = hind_addr(); @@ -139,5 +144,6 @@ int main(int argc, char *argv[]) for (i = 0; i < hchunks; i++) munmap(hptr[i], MAP_CHUNK_SIZE); + free(hptr); return 0; } -- 2.30.2