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 0ACA2CE8E68 for ; Thu, 24 Oct 2024 11:45:26 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8A51A6B007B; Thu, 24 Oct 2024 07:45:26 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 854EE6B0082; Thu, 24 Oct 2024 07:45:26 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 71CC46B0085; Thu, 24 Oct 2024 07:45:26 -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 526456B007B for ; Thu, 24 Oct 2024 07:45:26 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 6780C1412BE for ; Thu, 24 Oct 2024 11:45:06 +0000 (UTC) X-FDA: 82708315074.18.C2E902A Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) by imf23.hostedemail.com (Postfix) with ESMTP id C5412140012 for ; Thu, 24 Oct 2024 11:45:11 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=Iwxl5Kpa; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf23.hostedemail.com: domain of ptesarik@suse.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=ptesarik@suse.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729770272; a=rsa-sha256; cv=none; b=mhi6BOjqJqC+m4QKxvThPx7nZjsru9X5zj4YWee48nzasLnvPmKNRcfCFPdJ1wCBqlRGgS 6zEh0F89u9DBjYNkbsx+8BF0vFW+rlPkp4XHR3u/kLyoENZm21iwcLwDY+S+AxTAJ2nJ8F h0hcIrFv1a8paUekRXaJRYdh2e1Fd08= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=Iwxl5Kpa; dmarc=pass (policy=quarantine) header.from=suse.com; spf=pass (imf23.hostedemail.com: domain of ptesarik@suse.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=ptesarik@suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729770272; 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:dkim-signature; bh=2CL2wCU2HH+fd4vHOU7eIexO99AmYoDs4dDo7720ek4=; b=dCUDH2pz1DN3oOSO6+TxobHT6qqf6SmOFafQy3xMqaNJZ6cOTjYRVgMrUai/ZacvFq7SyU 4iHK2z+0bz+OMXixoEpJ8UDngZkle6o65VpRHuQW3tAtyKYchLwU98XuGVoWGbIHuRS7Ex YrN6f/E7TlxOZBaRYL7C78W0wW04BSk= Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-43159555f29so888275e9.3 for ; Thu, 24 Oct 2024 04:45:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1729770322; x=1730375122; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=2CL2wCU2HH+fd4vHOU7eIexO99AmYoDs4dDo7720ek4=; b=Iwxl5KpaYCwtCC4n80Nu7CXEJHiFTRIGJIJMBUQwiDQOsSjfOZKEap5Zh4xJCwRUlR cB6xWMXzuhGfzVEvNYglRsyHHyfHl/RzoQDMoTipZQuJjvPSdf+M7EWwN1n0TXwmY6Cp 5EZcNz76HXDStj8MqGMtGYG1/9QjgZN+eVGK8OgIQ4X3sHJG0D7qTMRDG47zv8mBsXcK 6YBPkM5q0Fqtt53rOeSyM9d6amSTLDDeiiF6pwbkFprCeIMaUZYWpmzjjIe4QGb3pHbo TTzuO/fzLqUxlQfjAuYWHl1R5d6XVrmlfbJFyNuyRqLqYP1pes45XJaqdiX/KB2loDwx Xt6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729770322; x=1730375122; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2CL2wCU2HH+fd4vHOU7eIexO99AmYoDs4dDo7720ek4=; b=SGJ5TGbHA3BaGStwqhowr8eplgv12yeiPBirFrzHpn7ObgKe+ptar3b+SeLNbbodwE Y1t16wBFk5YT0RAMI36rFLzOQ25SNBtZCD8MEmdGYCrXTyPp1NAXfX6K64QtHjyMo9rF LV0TKwQtdKh4xPYtLbj3760xbZZsbqvUwHzIrg+JXl1ju92PKkMt95cpDP8lNy4t4GG9 jHBJoPpREiwEHkkxWudid+X6gZhbBIECdHtalx43P1FIYQdCefA+xn/2HAscgBHB5CNV OIJwJIbfmjWa2ufFHxx4GxxfZjJB+JSpvpIToyioiVCYI/6tCAkq0nTtzWwzu6vCnJGT CJyg== X-Forwarded-Encrypted: i=1; AJvYcCVvwEumxPv60gmhyDHTs614WnImTZRLeHA0KR6JCaDb17Jpm4KeIE+jDwhZALztJpa1ehC8HiOjfg==@kvack.org X-Gm-Message-State: AOJu0YwWrOA04QPiJU/TPfILouJMPY3jrfteGFzNGso8VUXjTEV6d44G 4G1cDVnUJyUu8xpjeAu8THTwkZxYRWY4/gHF323We7OSGGsjitRsVtnYC37iLSo= X-Google-Smtp-Source: AGHT+IFA4GABsskGJAvhBVgwpM0Becu10rrF1/mPcNcESTyA5925ZJdl1RcPGWOTLM6OI2YjfLoBKg== X-Received: by 2002:a05:600c:4f91:b0:42c:c0d8:bf49 with SMTP id 5b1f17b1804b1-4318408b98bmr20665275e9.0.1729770322153; Thu, 24 Oct 2024 04:45:22 -0700 (PDT) Received: from mordecai.tesarici.cz (dynamic-2a00-1028-83b8-1e7a-3010-3bd6-8521-caf1.ipv6.o2.cz. [2a00:1028:83b8:1e7a:3010:3bd6:8521:caf1]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43186be531esm42591215e9.18.2024.10.24.04.45.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 24 Oct 2024 04:45:21 -0700 (PDT) Date: Thu, 24 Oct 2024 13:45:19 +0200 From: Petr Tesarik To: Ryan Roberts Cc: Thomas Tai , Andrew Morton , Anshuman Khandual , Ard Biesheuvel , Catalin Marinas , David Hildenbrand , Greg Marsden , Ivan Ivanov , Kalesh Singh , Marc Zyngier , Mark Rutland , Matthias Brugger , Miroslav Benes , Will Deacon , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [RFC PATCH v1 00/57] Boot-time page size selection for arm64 Message-ID: <20241024134519.18ed4657@mordecai.tesarici.cz> In-Reply-To: References: <20241014105514.3206191-1-ryan.roberts@arm.com> <20241017142752.17f2c816@mordecai.tesarici.cz> X-Mailer: Claws Mail 4.3.0 (GTK 3.24.43; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Queue-Id: C5412140012 X-Rspamd-Server: rspam01 X-Stat-Signature: 6itx8m83fhxjw7k37exhmmieatrgkjwg X-HE-Tag: 1729770311-899067 X-HE-Meta: U2FsdGVkX198zt61/CRjN67LAFsAznJzwNNIOsTs3nhTPmnOJgOYkrJmZ75gF33ID5/PSMBNtT7fDU6PuO3yhJHX0LUR4JioB8i8JLDz0NUL9ii0CwL830NBoE8XL0/yXliKUrjdl+mYT2cvTbm/k3KQym6+6mch3UT85LKCcz8vK9/oxRpdYKvUpl/KzkYAUWu+S9mEGglgfA2dt/PuDb9egLUJfCbIZqZfpwLYXTH92pW5mS+xTF9REu6YOXPGIkHc2eY95SpHhfJi4pnP+mk8aHI+6GcEW5z+DPn6MpqHwOEGSMPXRaEb5Vz8P5jNooDaR4FtGoZBCJRDrH5U9JvN/vJ18GTlYwD23jJUFVnRhhIrru52I++UJwTA0I+JwXJ4Qz3Dp7RGqrnVfyxJflgp1tSR10cHDpkUx9NDNfs5t5W6rsz2qWSlIrMShkxi+me8BylXRzj6fowP821Nfr83pKJdWVb739CQ7oT9VeMQVqbCfz/Jh9tujSG3eop0Oxp3+tH6R4FIbwz8RCYBrjiJBNf9Xy8SjxNr1wiFiRFRR0t1YUkWmqVUTE/JHh+QDhKxWuTh0EdwephH7Tn+mIAAKdkqyYg9T2irH5r/34h62R6fvFs7yHGyJS9J2aP/CoisDwkN/uZq0M/aT1wKPQp+3SMk6W++ObPbkx+pNWZt2+8Y2MMLhL5Y/L+wM8GEBw7YXs6r+UNf9K55IPLVUEP3fhL8TJqx6N7fxdJ0cVwzdk8q4f01Fgp/8XO/uA+Q+yn1g0tIM/NknZer6U5gZAj8DYzEnBZ08AWP76Hz0sPJlBCNgvHAxicqIs0uilLRGAJiIgFPpXjdAxWcUc8h1lWQxGdRJLZL3/au7DfzwYe+18HZNgcyKR3UMOwLsTwTs7QXUVC+IYRu1YM9Lhr/qVRj8d3Zx5GrJtkbajB4CqNZ8rI8agm6sU2Ulf9ECSWeI2ngVUhKdPZ59RfNjXx 4yStYyHq bXYZQl0O5/q953359fzLdRTTaZ2yTS3CltUvzQ8kNf5gFF+mx/VCQuDROEFgbHQiiYL3nRSawaoj0UEdCmA23Z+EGVpWHSTgEiBv10bLJVbigif2N8izNapgv1FhCR1wzqYlTOYEioUUHGKfsmjLTnn1fPkronh7UOuEwQq9pYKCj/gTLeHv0Zzf/yGzkXPgJ9DGD3QTITjQ02gQCpBMZCfRSpYKwfixBEIFMD9Hf1IRu2PLWJ2uwL8kP/MQ4Wcg4RIYK4Wjcxu9T3VkIHi5lRSReUg== 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 Thu, 24 Oct 2024 11:48:55 +0100 Ryan Roberts wrote: > On 23/10/2024 22:00, Thomas Tai wrote: > >=20 > > On 10/17/2024 8:32 AM, Ryan Roberts wrote: =20 > >> On 17/10/2024 13:27, Petr Tesarik wrote: =20 > >>> On Mon, 14 Oct 2024 11:55:11 +0100 > >>> Ryan Roberts wrote: > >>> =20 > >>>> [...] > >>>> The series is arranged as follows: > >>>> > >>>> =C2=A0=C2=A0 - patch 1:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Add macr= os required for converting non-arch code to support > >>>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 boot-time page size selection > >>>> =C2=A0=C2=A0 - patches 2-36:=C2=A0 Remove PAGE_SIZE compile-time con= stant assumption from all > >>>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 non-arch code =20 > >>> I have just tried to recompile the openSUSE kernel with these patches > >>> applied, and I'm running into this: > >>> > >>> =C2=A0=C2=A0 CC=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 arch/arm64/hyperv/hv_co= re.o > >>> In file included from ../arch/arm64/hyperv/hv_core.c:14:0: > >>> ../include/linux/hyperv.h:158:5: error: variably modified =E2=80=98re= served2=E2=80=99 at file > >>> scope > >>> =C2=A0=C2=A0 u8 reserved2[PAGE_SIZE - 68]; > >>> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ^~~~~~~~~ > >>> > >>> It looks like one more place which needs a patch, right? =20 > >> As mentioned in the cover letter, so far I've only converted enough to= get the > >> defconfig *image* building (i.e. no modules). If you are compiling a d= ifferent > >> config or compiling the modules for defconfig, you will likely run int= o these > >> types of issues. =20 > >=20 > > It would be nice if you could provide the defconfig you are using; I al= so ran > > into build issues when using the arch/arm64/configs/defconfig. =20 >=20 > git clean -xdfq > make defconfig >=20 > # Set CONFIG_ARM64_BOOT_TIME_PAGE_SIZE > ./scripts/config --disable CONFIG_ARM64_4K_PAGES > ./scripts/config --disable CONFIG_ARM64_16K_PAGES > ./scripts/config --disable CONFIG_ARM64_64K_PAGES > ./scripts/config --disable CONFIG_ARM64_BOOT_TIME_PAGE_SIZE > ./scripts/config --enable CONFIG_ARM64_BOOT_TIME_PAGE_SIZE >=20 > # Set ARM64_VA_BITS_48 > ./scripts/config --disable ARM64_VA_BITS_36 > ./scripts/config --disable ARM64_VA_BITS_39 > ./scripts/config --disable ARM64_VA_BITS_42 > ./scripts/config --disable ARM64_VA_BITS_47 > ./scripts/config --disable ARM64_VA_BITS_48 > ./scripts/config --disable ARM64_VA_BITS_52 > ./scripts/config --enable ARM64_VA_BITS_48 >=20 > # Optional: filesystems known to compile with boot-time page size > ./scripts/config --enable CONFIG_SQUASHFS_LZ4 > ./scripts/config --enable CONFIG_SQUASHFS_LZO > ./scripts/config --enable CONFIG_SQUASHFS_XZ > ./scripts/config --enable CONFIG_SQUASHFS_ZSTD > ./scripts/config --enable CONFIG_XFS_FS >=20 > # Optional: trace stuff known to compile with boot-time page size > ./scripts/config --enable CONFIG_FTRACE > ./scripts/config --enable CONFIG_FUNCTION_TRACER > ./scripts/config --enable CONFIG_KPROBES > ./scripts/config --enable CONFIG_HIST_TRIGGERS > ./scripts/config --enable CONFIG_FTRACE_SYSCALLS >=20 > # Optional: misc mm stuff known to compile with boot-time page size > ./scripts/config --enable CONFIG_PTDUMP_DEBUGFS > ./scripts/config --enable CONFIG_READ_ONLY_THP_FOR_FS > ./scripts/config --enable CONFIG_USERFAULTFD >=20 > # Optional: mm debug stuff known compile with boot-time page size > ./scripts/config --enable CONFIG_DEBUG_VM > ./scripts/config --enable CONFIG_DEBUG_VM_MAPLE_TREE > ./scripts/config --enable CONFIG_DEBUG_VM_RB > ./scripts/config --enable CONFIG_DEBUG_VM_PGFLAGS > ./scripts/config --enable CONFIG_DEBUG_VM_PGTABLE > ./scripts/config --enable CONFIG_PAGE_TABLE_CHECK > ./scripts/config --enable CONFIG_PAGE_TABLE_CHECK_ENFORCED >=20 > make olddefconfig > make -s -j`nproc` Image >=20 > So I'm explicitly only building and booting the kernel image, not the mod= ules. > The kernel image contains all the drivers needed to get a VM up and runni= ng > under QEMU/KVM. FWIW with the attached patch I was also able to boot the kernel on Ampere Altra bare metal and using modules. Petr T diff --git a/arch/arm64/mm/pgtable-geometry.c b/arch/arm64/mm/pgtable-geome= try.c index ba50637f1e9d..4eb074b99654 100644 --- a/arch/arm64/mm/pgtable-geometry.c +++ b/arch/arm64/mm/pgtable-geometry.c @@ -15,8 +15,14 @@ */ =20 int ptg_page_shift __read_mostly; +EXPORT_SYMBOL_GPL(ptg_page_shift); + int ptg_pmd_shift __read_mostly; +EXPORT_SYMBOL_GPL(ptg_pmd_shift); + int ptg_pud_shift __read_mostly; +EXPORT_SYMBOL_GPL(ptg_pud_shift); + int ptg_p4d_shift __read_mostly; int ptg_pgdir_shift __read_mostly; int ptg_cont_pte_shift __read_mostly;