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=-23.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_IN_DEF_DKIM_WL 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 A4D54C2B9F4 for ; Thu, 17 Jun 2021 07:09:25 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 869396135C for ; Thu, 17 Jun 2021 07:09:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230205AbhFQHLa (ORCPT ); Thu, 17 Jun 2021 03:11:30 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49672 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230043AbhFQHL3 (ORCPT ); Thu, 17 Jun 2021 03:11:29 -0400 Received: from mail-oi1-x22e.google.com (mail-oi1-x22e.google.com [IPv6:2607:f8b0:4864:20::22e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A31E6C061574 for ; Thu, 17 Jun 2021 00:09:21 -0700 (PDT) Received: by mail-oi1-x22e.google.com with SMTP id q10so5457541oij.5 for ; Thu, 17 Jun 2021 00:09:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Y899QIQlOQvFqET/XGorOZ+F3vK0QdxZBrZzg45qzIs=; b=FQtZTwK4cC4uXfrgpUfeUmm6Siw4e/WbKHpMQAsnI2GuJrbWnfKGVx55CrlKwNW3Yv id9W++OpGmqczrcKmov1LTEXRpsdyADCcXpBqkD3ebXNrue27Wv5udaUtl2dl2J7AQit 2ZDLx7SobVYkJb2Bwi7poyskkgAhFTaR7gPp/EyyS7kgrsdZcS/qwY/6LfDvnh3iCN2V WwCHMNNX9KIRmVZ3KOoIMKnbAUnz92UztTDXuBlQJ2gQoGCeCIK4IFzAku3R+7L7K/l4 m78ITtrlX333pwjx/YWYG2DdGtLJayvmEFV1IjtZ3EiO1Qem80PZN8VEq3YzlCZaW7KP bOCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Y899QIQlOQvFqET/XGorOZ+F3vK0QdxZBrZzg45qzIs=; b=cI2941yp6w2zYV07Umvo40BqLkUOZJBOb+ddYiM5v8/5BSRBhcP27SQsV4FC8i3nJ3 bvQJdzX0MxeX9tPUCprmV1ojyuKyBlO28hdN3zwKg5fjESFFqMp18mVAq49Nai0891r7 ymiwn9UzXXgWD9UeOmLsbgMW9EuOpphz21skm4XsKzmcfjL4ko5ak3tUPkPFqdDsAONd xl2Zql3t1rQDg8/ttKSTObEY7T/Vu1k2Ln18s1h+9lh1tZqCNXdstmN9+Nwqk9FejgBN i+KGaPf5DEM4s0SVnIYU5xGwprscODO4IbN2n6EwFnOZxCeO0bayan6Jje8C799LfPji n/0A== X-Gm-Message-State: AOAM533sLp3nq+Qt8CMY6bnEikevGiItSVo+HSWkwKCpFd3iIxR/ljPm wKnAMoNh14dHEV/dt/XpcaKZOyyKDLEn7f3ogRj3eQ== X-Google-Smtp-Source: ABdhPJztoH0C1/zvKob2TwWK9o3BZ++QjbgLwppAe2djLU6M4cBSQ1jJwElkp2Tz9gErUtDFo+xgFIsfw23ZT5VTMGA= X-Received: by 2002:a05:6808:bd5:: with SMTP id o21mr2275661oik.172.1623913760824; Thu, 17 Jun 2021 00:09:20 -0700 (PDT) MIME-Version: 1.0 References: <20210617063956.94061-1-dja@axtens.net> <20210617063956.94061-5-dja@axtens.net> In-Reply-To: <20210617063956.94061-5-dja@axtens.net> From: Marco Elver Date: Thu, 17 Jun 2021 09:09:09 +0200 Message-ID: Subject: Re: [PATCH v14 4/4] kasan: use MAX_PTRS_PER_* for early shadow tables To: Daniel Axtens Cc: LKML , Linux Memory Management List , kasan-dev , Andrew Morton , Andrey Konovalov , linuxppc-dev@lists.ozlabs.org, Christophe Leroy , aneesh.kumar@linux.ibm.com, Balbir Singh Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 17 Jun 2021 at 08:40, Daniel Axtens wrote: > > powerpc has a variable number of PTRS_PER_*, set at runtime based > on the MMU that the kernel is booted under. > > This means the PTRS_PER_* are no longer constants, and therefore > breaks the build. Switch to using MAX_PTRS_PER_*, which are constant. > > Suggested-by: Christophe Leroy > Suggested-by: Balbir Singh > Reviewed-by: Christophe Leroy > Reviewed-by: Balbir Singh > Signed-off-by: Daniel Axtens Reviewed-by: Marco Elver > --- > include/linux/kasan.h | 6 +++--- > mm/kasan/init.c | 6 +++--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/include/linux/kasan.h b/include/linux/kasan.h > index 768d7d342757..5310e217bd74 100644 > --- a/include/linux/kasan.h > +++ b/include/linux/kasan.h > @@ -41,9 +41,9 @@ struct kunit_kasan_expectation { > #endif > > extern unsigned char kasan_early_shadow_page[PAGE_SIZE]; > -extern pte_t kasan_early_shadow_pte[PTRS_PER_PTE + PTE_HWTABLE_PTRS]; > -extern pmd_t kasan_early_shadow_pmd[PTRS_PER_PMD]; > -extern pud_t kasan_early_shadow_pud[PTRS_PER_PUD]; > +extern pte_t kasan_early_shadow_pte[MAX_PTRS_PER_PTE + PTE_HWTABLE_PTRS]; > +extern pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD]; > +extern pud_t kasan_early_shadow_pud[MAX_PTRS_PER_PUD]; > extern p4d_t kasan_early_shadow_p4d[MAX_PTRS_PER_P4D]; > > int kasan_populate_early_shadow(const void *shadow_start, > diff --git a/mm/kasan/init.c b/mm/kasan/init.c > index 348f31d15a97..cc64ed6858c6 100644 > --- a/mm/kasan/init.c > +++ b/mm/kasan/init.c > @@ -41,7 +41,7 @@ static inline bool kasan_p4d_table(pgd_t pgd) > } > #endif > #if CONFIG_PGTABLE_LEVELS > 3 > -pud_t kasan_early_shadow_pud[PTRS_PER_PUD] __page_aligned_bss; > +pud_t kasan_early_shadow_pud[MAX_PTRS_PER_PUD] __page_aligned_bss; > static inline bool kasan_pud_table(p4d_t p4d) > { > return p4d_page(p4d) == virt_to_page(lm_alias(kasan_early_shadow_pud)); > @@ -53,7 +53,7 @@ static inline bool kasan_pud_table(p4d_t p4d) > } > #endif > #if CONFIG_PGTABLE_LEVELS > 2 > -pmd_t kasan_early_shadow_pmd[PTRS_PER_PMD] __page_aligned_bss; > +pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD] __page_aligned_bss; > static inline bool kasan_pmd_table(pud_t pud) > { > return pud_page(pud) == virt_to_page(lm_alias(kasan_early_shadow_pmd)); > @@ -64,7 +64,7 @@ static inline bool kasan_pmd_table(pud_t pud) > return false; > } > #endif > -pte_t kasan_early_shadow_pte[PTRS_PER_PTE + PTE_HWTABLE_PTRS] > +pte_t kasan_early_shadow_pte[MAX_PTRS_PER_PTE + PTE_HWTABLE_PTRS] > __page_aligned_bss; > > static inline bool kasan_pte_table(pmd_t pmd) > -- > 2.30.2 > 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=-23.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_IN_DEF_DKIM_WL autolearn=ham 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 5B767C2B9F4 for ; Thu, 17 Jun 2021 07:09:23 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 1076761369 for ; Thu, 17 Jun 2021 07:09:23 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1076761369 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id A33BF6B0072; Thu, 17 Jun 2021 03:09:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A0AF56B0073; Thu, 17 Jun 2021 03:09:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8D3796B0074; Thu, 17 Jun 2021 03:09:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0053.hostedemail.com [216.40.44.53]) by kanga.kvack.org (Postfix) with ESMTP id 606656B0072 for ; Thu, 17 Jun 2021 03:09:22 -0400 (EDT) Received: from smtpin40.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 095AB180AD802 for ; Thu, 17 Jun 2021 07:09:22 +0000 (UTC) X-FDA: 78262339764.40.68F9005 Received: from mail-oi1-f172.google.com (mail-oi1-f172.google.com [209.85.167.172]) by imf22.hostedemail.com (Postfix) with ESMTP id 4AF1EC0091AE for ; Thu, 17 Jun 2021 07:09:10 +0000 (UTC) Received: by mail-oi1-f172.google.com with SMTP id h9so5475686oih.4 for ; Thu, 17 Jun 2021 00:09:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Y899QIQlOQvFqET/XGorOZ+F3vK0QdxZBrZzg45qzIs=; b=FQtZTwK4cC4uXfrgpUfeUmm6Siw4e/WbKHpMQAsnI2GuJrbWnfKGVx55CrlKwNW3Yv id9W++OpGmqczrcKmov1LTEXRpsdyADCcXpBqkD3ebXNrue27Wv5udaUtl2dl2J7AQit 2ZDLx7SobVYkJb2Bwi7poyskkgAhFTaR7gPp/EyyS7kgrsdZcS/qwY/6LfDvnh3iCN2V WwCHMNNX9KIRmVZ3KOoIMKnbAUnz92UztTDXuBlQJ2gQoGCeCIK4IFzAku3R+7L7K/l4 m78ITtrlX333pwjx/YWYG2DdGtLJayvmEFV1IjtZ3EiO1Qem80PZN8VEq3YzlCZaW7KP bOCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Y899QIQlOQvFqET/XGorOZ+F3vK0QdxZBrZzg45qzIs=; b=gPUWLd0s5igygaB1gu1ekg8So4OhAz1444akAOhOofxsetUe+F0hyBSKkeOzKovoow JlMOePF6G6WCe01hGGndZpWar9/DS4Z7oxHmHDHKg12gDuCmYVn+PwsNLHqPrqhV9irS 5OKZgIEAP9WWZck74QR/cIReyCui+2+uX/hnAbux9c7p6FQSJspzbfz/K1vCFbz41WZ4 huH4kfPCMy6MBOB13XICQpWfylV+dNyFYZRUE//T69lYlsri6W1QND5DjwO1IuVVXJGQ XI6jy4cL10f2xtR2wO9tsQUr5d2hiOZ8EmUodToadWwKFOXvU8UeHhvlLzcNtagt7dZE EmXw== X-Gm-Message-State: AOAM531qnuU17bstds8Z72EVfiRV13mb0U8m94g9OMd9++j6AeUAyi5k dIeNYza57CXDjmZGdg6biliVxIyzDfczLffykR2sKw== X-Google-Smtp-Source: ABdhPJztoH0C1/zvKob2TwWK9o3BZ++QjbgLwppAe2djLU6M4cBSQ1jJwElkp2Tz9gErUtDFo+xgFIsfw23ZT5VTMGA= X-Received: by 2002:a05:6808:bd5:: with SMTP id o21mr2275661oik.172.1623913760824; Thu, 17 Jun 2021 00:09:20 -0700 (PDT) MIME-Version: 1.0 References: <20210617063956.94061-1-dja@axtens.net> <20210617063956.94061-5-dja@axtens.net> In-Reply-To: <20210617063956.94061-5-dja@axtens.net> From: Marco Elver Date: Thu, 17 Jun 2021 09:09:09 +0200 Message-ID: Subject: Re: [PATCH v14 4/4] kasan: use MAX_PTRS_PER_* for early shadow tables To: Daniel Axtens Cc: LKML , Linux Memory Management List , kasan-dev , Andrew Morton , Andrey Konovalov , linuxppc-dev@lists.ozlabs.org, Christophe Leroy , aneesh.kumar@linux.ibm.com, Balbir Singh Content-Type: text/plain; charset="UTF-8" Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=google.com header.s=20161025 header.b=FQtZTwK4; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf22.hostedemail.com: domain of elver@google.com designates 209.85.167.172 as permitted sender) smtp.mailfrom=elver@google.com X-Stat-Signature: nyrrjhqrpngj3qguao6sr5njzttaw4ef X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 4AF1EC0091AE X-HE-Tag: 1623913750-477399 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: On Thu, 17 Jun 2021 at 08:40, Daniel Axtens wrote: > > powerpc has a variable number of PTRS_PER_*, set at runtime based > on the MMU that the kernel is booted under. > > This means the PTRS_PER_* are no longer constants, and therefore > breaks the build. Switch to using MAX_PTRS_PER_*, which are constant. > > Suggested-by: Christophe Leroy > Suggested-by: Balbir Singh > Reviewed-by: Christophe Leroy > Reviewed-by: Balbir Singh > Signed-off-by: Daniel Axtens Reviewed-by: Marco Elver > --- > include/linux/kasan.h | 6 +++--- > mm/kasan/init.c | 6 +++--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/include/linux/kasan.h b/include/linux/kasan.h > index 768d7d342757..5310e217bd74 100644 > --- a/include/linux/kasan.h > +++ b/include/linux/kasan.h > @@ -41,9 +41,9 @@ struct kunit_kasan_expectation { > #endif > > extern unsigned char kasan_early_shadow_page[PAGE_SIZE]; > -extern pte_t kasan_early_shadow_pte[PTRS_PER_PTE + PTE_HWTABLE_PTRS]; > -extern pmd_t kasan_early_shadow_pmd[PTRS_PER_PMD]; > -extern pud_t kasan_early_shadow_pud[PTRS_PER_PUD]; > +extern pte_t kasan_early_shadow_pte[MAX_PTRS_PER_PTE + PTE_HWTABLE_PTRS]; > +extern pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD]; > +extern pud_t kasan_early_shadow_pud[MAX_PTRS_PER_PUD]; > extern p4d_t kasan_early_shadow_p4d[MAX_PTRS_PER_P4D]; > > int kasan_populate_early_shadow(const void *shadow_start, > diff --git a/mm/kasan/init.c b/mm/kasan/init.c > index 348f31d15a97..cc64ed6858c6 100644 > --- a/mm/kasan/init.c > +++ b/mm/kasan/init.c > @@ -41,7 +41,7 @@ static inline bool kasan_p4d_table(pgd_t pgd) > } > #endif > #if CONFIG_PGTABLE_LEVELS > 3 > -pud_t kasan_early_shadow_pud[PTRS_PER_PUD] __page_aligned_bss; > +pud_t kasan_early_shadow_pud[MAX_PTRS_PER_PUD] __page_aligned_bss; > static inline bool kasan_pud_table(p4d_t p4d) > { > return p4d_page(p4d) == virt_to_page(lm_alias(kasan_early_shadow_pud)); > @@ -53,7 +53,7 @@ static inline bool kasan_pud_table(p4d_t p4d) > } > #endif > #if CONFIG_PGTABLE_LEVELS > 2 > -pmd_t kasan_early_shadow_pmd[PTRS_PER_PMD] __page_aligned_bss; > +pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD] __page_aligned_bss; > static inline bool kasan_pmd_table(pud_t pud) > { > return pud_page(pud) == virt_to_page(lm_alias(kasan_early_shadow_pmd)); > @@ -64,7 +64,7 @@ static inline bool kasan_pmd_table(pud_t pud) > return false; > } > #endif > -pte_t kasan_early_shadow_pte[PTRS_PER_PTE + PTE_HWTABLE_PTRS] > +pte_t kasan_early_shadow_pte[MAX_PTRS_PER_PTE + PTE_HWTABLE_PTRS] > __page_aligned_bss; > > static inline bool kasan_pte_table(pmd_t pmd) > -- > 2.30.2 > 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=-13.6 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS 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 96087C2B9F4 for ; Thu, 17 Jun 2021 07:09:51 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 02079613B9 for ; Thu, 17 Jun 2021 07:09:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 02079613B9 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4G5CqL21f2z3c8f for ; Thu, 17 Jun 2021 17:09:50 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256 header.s=20161025 header.b=FQtZTwK4; dkim-atps=neutral Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=google.com (client-ip=2607:f8b0:4864:20::22c; helo=mail-oi1-x22c.google.com; envelope-from=elver@google.com; receiver=) Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256 header.s=20161025 header.b=FQtZTwK4; dkim-atps=neutral Received: from mail-oi1-x22c.google.com (mail-oi1-x22c.google.com [IPv6:2607:f8b0:4864:20::22c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4G5Cpr3QXFz3c1M for ; Thu, 17 Jun 2021 17:09:24 +1000 (AEST) Received: by mail-oi1-x22c.google.com with SMTP id u11so5473178oiv.1 for ; Thu, 17 Jun 2021 00:09:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Y899QIQlOQvFqET/XGorOZ+F3vK0QdxZBrZzg45qzIs=; b=FQtZTwK4cC4uXfrgpUfeUmm6Siw4e/WbKHpMQAsnI2GuJrbWnfKGVx55CrlKwNW3Yv id9W++OpGmqczrcKmov1LTEXRpsdyADCcXpBqkD3ebXNrue27Wv5udaUtl2dl2J7AQit 2ZDLx7SobVYkJb2Bwi7poyskkgAhFTaR7gPp/EyyS7kgrsdZcS/qwY/6LfDvnh3iCN2V WwCHMNNX9KIRmVZ3KOoIMKnbAUnz92UztTDXuBlQJ2gQoGCeCIK4IFzAku3R+7L7K/l4 m78ITtrlX333pwjx/YWYG2DdGtLJayvmEFV1IjtZ3EiO1Qem80PZN8VEq3YzlCZaW7KP bOCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Y899QIQlOQvFqET/XGorOZ+F3vK0QdxZBrZzg45qzIs=; b=dwER3/nl7YyocJD6MlQmugcx+KmDMcUEwrV+4EBnJcQbVDxVvi/VNL+XQc8MEuaHTD BSCm2z5VRGx0SYJaNUhbwPVobn0r+Hlp93QTcdpUxwl8KbOPPs3k3Fdbq51SxhNUZw/v +zg61KkLpPtI17PeQcCFSY4oxGGPekew2yMGJzf6VhRAYDIROeV6e0ndoUyWjSZzXMqg DTYRFNk4ZLX3aqpNSIV0SZiSGW6126x3POjzcA5ggGDreWYpGJvLpwL4WJLRXLUu8Ejk UQ22gHceV5OwhlawH7Ppu7aE75xHSvV4SGQoe9g3zDjtfPc06/pySTUpzGiaLPwEqdBM YePw== X-Gm-Message-State: AOAM531jI/vy/RXyrxVYGNtXfrlq/tgWojxC+YyrvPeTH44KTQ2X+v12 PjnOfItEG+0etDfMu5bvULbZqWVYwGYTG2XJ4ekduQ== X-Google-Smtp-Source: ABdhPJztoH0C1/zvKob2TwWK9o3BZ++QjbgLwppAe2djLU6M4cBSQ1jJwElkp2Tz9gErUtDFo+xgFIsfw23ZT5VTMGA= X-Received: by 2002:a05:6808:bd5:: with SMTP id o21mr2275661oik.172.1623913760824; Thu, 17 Jun 2021 00:09:20 -0700 (PDT) MIME-Version: 1.0 References: <20210617063956.94061-1-dja@axtens.net> <20210617063956.94061-5-dja@axtens.net> In-Reply-To: <20210617063956.94061-5-dja@axtens.net> From: Marco Elver Date: Thu, 17 Jun 2021 09:09:09 +0200 Message-ID: Subject: Re: [PATCH v14 4/4] kasan: use MAX_PTRS_PER_* for early shadow tables To: Daniel Axtens Content-Type: text/plain; charset="UTF-8" X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: aneesh.kumar@linux.ibm.com, LKML , kasan-dev , Linux Memory Management List , Andrew Morton , linuxppc-dev@lists.ozlabs.org, Andrey Konovalov Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Thu, 17 Jun 2021 at 08:40, Daniel Axtens wrote: > > powerpc has a variable number of PTRS_PER_*, set at runtime based > on the MMU that the kernel is booted under. > > This means the PTRS_PER_* are no longer constants, and therefore > breaks the build. Switch to using MAX_PTRS_PER_*, which are constant. > > Suggested-by: Christophe Leroy > Suggested-by: Balbir Singh > Reviewed-by: Christophe Leroy > Reviewed-by: Balbir Singh > Signed-off-by: Daniel Axtens Reviewed-by: Marco Elver > --- > include/linux/kasan.h | 6 +++--- > mm/kasan/init.c | 6 +++--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/include/linux/kasan.h b/include/linux/kasan.h > index 768d7d342757..5310e217bd74 100644 > --- a/include/linux/kasan.h > +++ b/include/linux/kasan.h > @@ -41,9 +41,9 @@ struct kunit_kasan_expectation { > #endif > > extern unsigned char kasan_early_shadow_page[PAGE_SIZE]; > -extern pte_t kasan_early_shadow_pte[PTRS_PER_PTE + PTE_HWTABLE_PTRS]; > -extern pmd_t kasan_early_shadow_pmd[PTRS_PER_PMD]; > -extern pud_t kasan_early_shadow_pud[PTRS_PER_PUD]; > +extern pte_t kasan_early_shadow_pte[MAX_PTRS_PER_PTE + PTE_HWTABLE_PTRS]; > +extern pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD]; > +extern pud_t kasan_early_shadow_pud[MAX_PTRS_PER_PUD]; > extern p4d_t kasan_early_shadow_p4d[MAX_PTRS_PER_P4D]; > > int kasan_populate_early_shadow(const void *shadow_start, > diff --git a/mm/kasan/init.c b/mm/kasan/init.c > index 348f31d15a97..cc64ed6858c6 100644 > --- a/mm/kasan/init.c > +++ b/mm/kasan/init.c > @@ -41,7 +41,7 @@ static inline bool kasan_p4d_table(pgd_t pgd) > } > #endif > #if CONFIG_PGTABLE_LEVELS > 3 > -pud_t kasan_early_shadow_pud[PTRS_PER_PUD] __page_aligned_bss; > +pud_t kasan_early_shadow_pud[MAX_PTRS_PER_PUD] __page_aligned_bss; > static inline bool kasan_pud_table(p4d_t p4d) > { > return p4d_page(p4d) == virt_to_page(lm_alias(kasan_early_shadow_pud)); > @@ -53,7 +53,7 @@ static inline bool kasan_pud_table(p4d_t p4d) > } > #endif > #if CONFIG_PGTABLE_LEVELS > 2 > -pmd_t kasan_early_shadow_pmd[PTRS_PER_PMD] __page_aligned_bss; > +pmd_t kasan_early_shadow_pmd[MAX_PTRS_PER_PMD] __page_aligned_bss; > static inline bool kasan_pmd_table(pud_t pud) > { > return pud_page(pud) == virt_to_page(lm_alias(kasan_early_shadow_pmd)); > @@ -64,7 +64,7 @@ static inline bool kasan_pmd_table(pud_t pud) > return false; > } > #endif > -pte_t kasan_early_shadow_pte[PTRS_PER_PTE + PTE_HWTABLE_PTRS] > +pte_t kasan_early_shadow_pte[MAX_PTRS_PER_PTE + PTE_HWTABLE_PTRS] > __page_aligned_bss; > > static inline bool kasan_pte_table(pmd_t pmd) > -- > 2.30.2 >