From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by lists.ozlabs.org (Postfix) with ESMTP id 3y9qP05HK2zDqv8 for ; Tue, 10 Oct 2017 06:02:11 +1100 (AEDT) Date: Mon, 9 Oct 2017 20:02:13 +0100 From: Will Deacon To: Pavel Tatashin Cc: Mark Rutland , catalin.marinas@arm.com, linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, linux-arm-kernel@lists.infradead.org, x86@kernel.org, kasan-dev@googlegroups.com, borntraeger@de.ibm.com, heiko.carstens@de.ibm.com, davem@davemloft.net, willy@infradead.org, mhocko@kernel.org, Ard Biesheuvel , sam@ravnborg.org, mgorman@techsingularity.net, Steve Sistare , daniel.m.jordan@oracle.com, bob.picco@oracle.com Subject: Re: [PATCH v9 09/12] mm/kasan: kasan specific map populate function Message-ID: <20171009190213.GF30828@arm.com> References: <20170920201714.19817-1-pasha.tatashin@oracle.com> <20170920201714.19817-10-pasha.tatashin@oracle.com> <20171003144845.GD4931@leverpostej> <20171009171337.GE30085@arm.com> <20171009182217.GC30828@arm.com> <20171009184834.GE30828@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Hi Pavel, On Mon, Oct 09, 2017 at 02:59:09PM -0400, Pavel Tatashin wrote: > > We have two table walks even with your patch series applied afaict: one in > > our definition of vmemmap_populate (arch/arm64/mm/mmu.c) and this one > > in the core code. > > I meant to say implementing two new page table walkers, not at runtime. Ok, but I'm still missing why you think that is needed. What would be the second page table walker that needs implementing? > > My worry is that these are actually highly arch-specific, but will likely > > grow more users in mm/ that assume things for all architectures that aren't > > necessarily valid. > > I see, how about moving new kasan_map_populate() implementation into > arch dependent code: > > arch/x86/mm/kasan_init_64.c > arch/arm64/mm/kasan_init.c > > This way we won't need to add pmd_large()/pud_large() macros for arm64? I guess we could implement that on arm64 using our current vmemmap_populate logic and an explicit memset. Will