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 X-Spam-Level: X-Spam-Status: No, score=-17.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 32562C43333 for ; Fri, 22 Jan 2021 19:35:07 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0B3D823B00 for ; Fri, 22 Jan 2021 19:35:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730118AbhAVTYG (ORCPT ); Fri, 22 Jan 2021 14:24:06 -0500 Received: from mail.kernel.org ([198.145.29.99]:43664 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729954AbhAVTFt (ORCPT ); Fri, 22 Jan 2021 14:05:49 -0500 Received: by mail.kernel.org (Postfix) with ESMTPSA id DCB2023AC1; Fri, 22 Jan 2021 19:05:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1611342308; bh=+qH3gg6Meer9DE4CWsvTMl0NEy6N7sOI6C6cFplb2Ok=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=UAhzpczDkGt+4Q3wMOMG4ZZXBOvrjUmqZqNB6yHgubCMaaFUJ6/FOXNv20BtOGbEL y+0kx3bop4iL/FKIG8N8x6obiAHhfyoeT2tZwJkqqiMHoV3Ll5eanEyHXSq61pADAo KuCY+6gOu7i7M+fEjba1vK0mXIcdQFNTowLMDJ2h3KdJDBgGUZAyd0pY8nUG9Iaota bsOyCWRnhpVW/I2fYed0GkkovQdB2bQ5IzATRdp2a8isQwbRqwA50nvq+AtGfCzZ4g gCHP89gVZ0e6MmQ0GnM4WiYyK3n6kurG0uNXOXYFvnWOjXbiNt/EOJg3yhrdYXOZgU Vko9JDUN8/sgA== Date: Fri, 22 Jan 2021 19:05:01 +0000 From: Will Deacon To: Andrey Konovalov Cc: LKML , Linux Memory Management List , kasan-dev , Linux ARM , Dan Williams , Andrey Ryabinin , Alexander Potapenko , Dmitry Vyukov , Andrew Morton , "moderated list:ARM/Mediatek SoC..." , yj.chiang@mediatek.com, Catalin Marinas , Ard Biesheuvel , Mark Brown , Guenter Roeck , rppt@kernel.org, tyhicks@linux.microsoft.com, Robin Murphy , Vincenzo Frascino , gustavoars@kernel.org, Lecopzer Chen , Lecopzer Chen Subject: Re: [PATCH v2 0/4] arm64: kasan: support CONFIG_KASAN_VMALLOC Message-ID: <20210122190501.GA25471@willie-the-truck> References: <20210109103252.812517-1-lecopzer@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jan 21, 2021 at 06:44:14PM +0100, Andrey Konovalov wrote: > On Sat, Jan 9, 2021 at 11:33 AM Lecopzer Chen wrote: > > > > Linux supports KAsan for VMALLOC since commit 3c5c3cfb9ef4da9 > > ("kasan: support backing vmalloc space with real shadow memory") > > > > Acroding to how x86 ported it [1], they early allocated p4d and pgd, > > but in arm64 I just simulate how KAsan supports MODULES_VADDR in arm64 > > by not to populate the vmalloc area except for kimg address. > > > > Test environment: > > 4G and 8G Qemu virt, > > 39-bit VA + 4k PAGE_SIZE with 3-level page table, > > test by lib/test_kasan.ko and lib/test_kasan_module.ko > > > > It also works in Kaslr with CONFIG_RANDOMIZE_MODULE_REGION_FULL > > and randomize module region inside vmalloc area. > > > > > > [1]: commit 0609ae011deb41c ("x86/kasan: support KASAN_VMALLOC") > > > > Signed-off-by: Lecopzer Chen > > Acked-by: Andrey Konovalov > > Tested-by: Andrey Konovalov > > > > > > v2 -> v1 > > 1. kasan_init.c tweak indent > > 2. change Kconfig depends only on HAVE_ARCH_KASAN > > 3. support randomized module region. > > > > v1: > > https://lore.kernel.org/lkml/20210103171137.153834-1-lecopzer@gmail.com/ > > > > Lecopzer Chen (4): > > arm64: kasan: don't populate vmalloc area for CONFIG_KASAN_VMALLOC > > arm64: kasan: abstract _text and _end to KERNEL_START/END > > arm64: Kconfig: support CONFIG_KASAN_VMALLOC > > arm64: kaslr: support randomized module area with KASAN_VMALLOC > > > > arch/arm64/Kconfig | 1 + > > arch/arm64/kernel/kaslr.c | 18 ++++++++++-------- > > arch/arm64/kernel/module.c | 16 +++++++++------- > > arch/arm64/mm/kasan_init.c | 29 +++++++++++++++++++++-------- > > 4 files changed, 41 insertions(+), 23 deletions(-) > > > > -- > > 2.25.1 > > > > Hi Will, > > Could you PTAL at the arm64 changes? Sorry, wanted to get to this today but I ran out of time in the end. On the list for next week! Will