Received: by 2002:a25:d7c1:0:0:0:0:0 with SMTP id o184csp4812853ybg; Tue, 29 Oct 2019 12:46:40 -0700 (PDT) X-Google-Smtp-Source: APXvYqwaLMv/3NAu2gcqzjwVvNBAH6KrSHdN00pKuYu3Xi2R3745gj+QiLUT4Az28SAPJ5G/PbS6 X-Received: by 2002:a05:6402:1212:: with SMTP id c18mr28336579edw.166.1572378400139; Tue, 29 Oct 2019 12:46:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572378400; cv=none; d=google.com; s=arc-20160816; b=YfVMaKT1AmlcUdDLglR84YlArR3vMkDvRH4u11B6BiP0kg8nVvlJXwbiLIVMh1s+Qa zg7C6jDCu4qoW7zJHedykrEP1fmhdQkP1mhoAjIRKYMg9ulHhcxqvXMd6OQDoLhGP+Z8 lt2ASqssYNSXYBXqyfh6lMVaAnIHkqwOof9MvN2ZDG/mqYUO6+V35kVNCJl07jqGHFdb ptnmR9dNDNSAH1C67jj/7HQxrW7GjMbwekpeYyP3uQdtl7wma4NvOOL9Z0eI0+yEEqet nHClW/TV8D2dvOOiP9nOZXaBcWmwsVB08bsoNKQ6/1mJqUgIu8MOSwVe4Y1qnsyXiVCO ZHJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=W9Ma28DLhAhSYou0Kym5hF5RHDF83Wkc16w46Iisa8A=; b=jXAvGM/tvliEA14Sl6b6dOt2Fs4tJ/++j3TSgzy+x/dG6rFRHes7Bv35doxH9SzJye bsLcKulrF3n3sJG+Abte+6JYCCL8gOhv8jQUN/6ord/hP/40JBPxXoEdIYE+573MAS89 mooRWiQn+SmiMUJIATTH2ejelyGa2BT4ox1nPbvfAHQ4+TvchtyGCt7Cyn9xN9JtbtAx V3O4bpLTgvnXkZz9cmDqZh+7JiYfkEUvi8/t1PLZ73iOJr8OpzghTLtll3BMhGBniQVo ASuPg8RSmq6rt3w2SYZSi7SpSLBUrlcVBc8sPTKLk9it4U6pHttFQFkwM6zFPFyYoMEu c5Ug== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i20si9262075eja.167.2019.10.29.12.46.00; Tue, 29 Oct 2019 12:46:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=virtuozzo.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2403785AbfJ2RVa (ORCPT + 99 others); Tue, 29 Oct 2019 13:21:30 -0400 Received: from relay.sw.ru ([185.231.240.75]:57476 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2390793AbfJ2RVa (ORCPT ); Tue, 29 Oct 2019 13:21:30 -0400 Received: from [172.16.25.5] by relay.sw.ru with esmtp (Exim 4.92.2) (envelope-from ) id 1iPVBI-0006h5-VT; Tue, 29 Oct 2019 20:21:21 +0300 Subject: Re: [PATCH v10 4/5] x86/kasan: support KASAN_VMALLOC To: Daniel Axtens , kasan-dev@googlegroups.com, linux-mm@kvack.org, x86@kernel.org, glider@google.com, luto@kernel.org, linux-kernel@vger.kernel.org, mark.rutland@arm.com, dvyukov@google.com, christophe.leroy@c-s.fr Cc: linuxppc-dev@lists.ozlabs.org, gor@linux.ibm.com, Andrew Morton References: <20191029042059.28541-1-dja@axtens.net> <20191029042059.28541-5-dja@axtens.net> From: Andrey Ryabinin Message-ID: Date: Tue, 29 Oct 2019 20:21:03 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <20191029042059.28541-5-dja@axtens.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10/29/19 7:20 AM, Daniel Axtens wrote: > In the case where KASAN directly allocates memory to back vmalloc > space, don't map the early shadow page over it. > > We prepopulate pgds/p4ds for the range that would otherwise be empty. > This is required to get it synced to hardware on boot, allowing the > lower levels of the page tables to be filled dynamically. > > Acked-by: Dmitry Vyukov > Signed-off-by: Daniel Axtens > > --- > +static void __init kasan_shallow_populate_pgds(void *start, void *end) > +{ > + unsigned long addr, next; > + pgd_t *pgd; > + void *p; > + int nid = early_pfn_to_nid((unsigned long)start); This doesn't make sense. start is not even a pfn. With linear mapping we try to identify nid to have the shadow on the same node as memory. But in this case we don't have memory or the corresponding shadow (yet), we only install pgd/p4d. I guess we could just use NUMA_NO_NODE. The rest looks ok, so with that fixed: Reviewed-by: Andrey Ryabinin