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 13FACD2C542 for ; Thu, 24 Oct 2024 10:49:03 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 82C946B0082; Thu, 24 Oct 2024 06:49:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7B5E26B0083; Thu, 24 Oct 2024 06:49:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 656686B0085; Thu, 24 Oct 2024 06:49:03 -0400 (EDT) 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 44C5D6B0082 for ; Thu, 24 Oct 2024 06:49:03 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 9CDBC141260 for ; Thu, 24 Oct 2024 10:48:43 +0000 (UTC) X-FDA: 82708172946.16.76BC964 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf01.hostedemail.com (Postfix) with ESMTP id 068E44001B for ; Thu, 24 Oct 2024 10:48:45 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf01.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729766902; a=rsa-sha256; cv=none; b=Pgy7CXCVwIMYbVrOaaa3MoEii1Mf9s41nQDqujVR8xLqKq/NqulLSZXO624AJN9bp02iPH obxpGEcIEo6mLb73K5sDVmXxXWPIu8v+PaS1S/Sw9KZ13I0hvxvlU2kO8llmpGS71aNAFd JE4EUAgHZsxZonXvfT/cV5xpR6Sg33o= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf01.hostedemail.com: domain of ryan.roberts@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=ryan.roberts@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729766902; 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=1qkpK6VYra3/QIYrzaMXVMom4EBGPblW7Kk1PkiL1pA=; b=7B0nTQoUEUKr070JVRtS9i6A1i7AAFYL2BIWuHF3v2/jbfG8HKuNFdRmSR1yzUqrggrYuI /tRE2UAwOnBB4SmvrZDuSGBlj4WdZf8kdG0S+BEuUNCjUYln1bMTP0ojIgD6B4pe9p5TJ3 HBd8V4SEqVBfNOiofT0nsg+Lokrapwo= 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 5A7CE339; Thu, 24 Oct 2024 03:49:29 -0700 (PDT) Received: from [10.57.88.37] (unknown [10.57.88.37]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 489843F71E; Thu, 24 Oct 2024 03:48:57 -0700 (PDT) Message-ID: Date: Thu, 24 Oct 2024 11:48:55 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH v1 00/57] Boot-time page size selection for arm64 Content-Language: en-GB To: Thomas Tai , Petr Tesarik Cc: 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 References: <20241014105514.3206191-1-ryan.roberts@arm.com> <20241017142752.17f2c816@mordecai.tesarici.cz> From: Ryan Roberts In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Stat-Signature: zwpczffiea35nkftpo77p39mcyge6t1y X-Rspamd-Queue-Id: 068E44001B X-Rspamd-Server: rspam02 X-HE-Tag: 1729766925-121014 X-HE-Meta: U2FsdGVkX18ffGJzC0U2WNvjwOM+haQc2riBvZ0+4jMKJ3N4NRbcgaZjbTTjNiVLsPSia+5qh8ywmK3qo7JVxf13hJNB0P6hNvO6mhHhkl/yBuJYcKCawEnHhig46AMuUZ+06TU0eXNqHUFOTs9wIRXTSuo6jKd6JmYkB3Hlxew676LPNP1clyHEwIgFHf3cE+/bJkK00RsU4RfKilHl1f0Fs/IjNwaDzDt5vk3+SeXDRBMuNSh8sXIAdvVBV0kvEJpOCVTHk8xpte5Q/jdjmlMfdvLEPE2vMVIUJZZiBDI5nzgHazVdehMjOQEEXZq9PHKxCLMDiuf7NX+EyI2OphxV9rhqBq7dvdcOGexkPD/4ws7J2TwZKUdavkwfNUSFnOQnMjqUk0rQz5ZUa2bgf7tNLovopqSqqWmhYd2ojyT2xIHqBat14C+KHXLshnr2H/JQ93VWsMtd2EZ4//voZ1HJ1GKhCRm+kESQFi4Utu/i8mHwpF0NcpLl30q+e76JdP7jM3N8BbI332dhavLElr8/XjXm+KsfDtoLGDgS/fi/oi2a5YKJc+JSOa8dXmRmwteu4HIOpRDnMXgyA8cB9Xy4Va3bHq4UUhO4ok8zDzK2mFY7uPEucr3fuX9alAG4S+7fQvGKsK9j2IEkdbItJG5HkpV3/5uHvX9f64hNnQLp393St4y62pAcYMAInsPwY9H+O2ipkCRCufgg/1wpTPVvFKpthYVMDWMr33FsZ4tiJgtHkUx3BlN/XkQpqKyg+D4MW1eCFq5M8wJSWXNKfVt8vLzee1P0j5D6SzlscqpV4+k/uOt3zuexpiYU1femWambGIDdCx11KF4oUUh1wS5r3GBXT2yggSQi2s8Hr0NMbKUtpyEvgwf0a2lWxQiHlZbc9Ik8joRpRADG+ZhLYrzIeo60FoGHquVC01X+MRjOSkQGmoINGLnkgjT7zb1OydngFEX4P4tpkaWO6hh /ACFDckG e/gFb4JwTvifrpZqXKr0f/7QkhgaST9X63Ife50/6GsA7mQCDMBZdgRSPK/bxVjTJZzaqAt29lt/QsYjPxoS8f28TOgWPqSjCNlOIjzBB9MCYG2Hn0bfvUdGcU/Mt3SMjf5sDvAtWKlcx8H9igxdgg4ed6rhUoFSJ8OhnA8qzzP3icNZ3clOdeTBVsxLnCsLMDNsDaiGFTz0Gxs4vf+49y0AOkPLXJn4RH9fhRQImGs7z9S4= 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 23/10/2024 22:00, Thomas Tai wrote: > > On 10/17/2024 8:32 AM, Ryan Roberts wrote: >> On 17/10/2024 13:27, Petr Tesarik wrote: >>> On Mon, 14 Oct 2024 11:55:11 +0100 >>> Ryan Roberts wrote: >>> >>>> [...] >>>> The series is arranged as follows: >>>> >>>>    - patch 1:       Add macros required for converting non-arch code to support >>>>               boot-time page size selection >>>>    - patches 2-36:  Remove PAGE_SIZE compile-time constant assumption from all >>>>               non-arch code >>> I have just tried to recompile the openSUSE kernel with these patches >>> applied, and I'm running into this: >>> >>>    CC      arch/arm64/hyperv/hv_core.o >>> In file included from ../arch/arm64/hyperv/hv_core.c:14:0: >>> ../include/linux/hyperv.h:158:5: error: variably modified ‘reserved2’ at file >>> scope >>>    u8 reserved2[PAGE_SIZE - 68]; >>>       ^~~~~~~~~ >>> >>> It looks like one more place which needs a patch, right? >> 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 different >> config or compiling the modules for defconfig, you will likely run into these >> types of issues. > > It would be nice if you could provide the defconfig you are using; I also ran > into build issues when using the arch/arm64/configs/defconfig. git clean -xdfq make defconfig # 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 # 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 # 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 # 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 # 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 # 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 make olddefconfig make -s -j`nproc` Image So I'm explicitly only building and booting the kernel image, not the modules. The kernel image contains all the drivers needed to get a VM up and running under QEMU/KVM. Thanks, Ryan >   > Thank you, > Thomas > >> >> That said, I do have some patches to fix Hyper-V, which Michael Kelley was kind >> enough to send me. >> >> I understand that Suse might be able to help with wider performance testing - if >> that's the reason you are trying to compile, you could send me your config and >> I'll start working on fixing up other drivers? >> >> Thanks, >> Ryan >> >>> Petr T >>