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.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT 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 A1821C433DB for ; Wed, 17 Mar 2021 06:25:46 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 4248164F8C for ; Wed, 17 Mar 2021 06:25:46 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4248164F8C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id CFE046B0074; Wed, 17 Mar 2021 02:25:45 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CDB946B0083; Wed, 17 Mar 2021 02:25:45 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B4F4C6B0085; Wed, 17 Mar 2021 02:25:45 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0144.hostedemail.com [216.40.44.144]) by kanga.kvack.org (Postfix) with ESMTP id 9A6A16B0074 for ; Wed, 17 Mar 2021 02:25:45 -0400 (EDT) Received: from smtpin30.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 622D2181AF5F7 for ; Wed, 17 Mar 2021 06:25:45 +0000 (UTC) X-FDA: 77928380250.30.6252538 Received: from mail-pf1-f180.google.com (mail-pf1-f180.google.com [209.85.210.180]) by imf04.hostedemail.com (Postfix) with ESMTP id 0622E12E for ; Wed, 17 Mar 2021 06:25:44 +0000 (UTC) Received: by mail-pf1-f180.google.com with SMTP id l3so408293pfc.7 for ; Tue, 16 Mar 2021 23:25:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=xD9CZCqfp6oOH0TENXfs67JbMzL04aaTtGQqYYdMF/Y=; b=ABPFYdpLbjkf6zwF7B72Zaoi9pvfhFCoeGzDoVnTUKtm1yxN+kjAmc19B52QXi3lvF wyZ8mEa7+Z+XStechgQYeu68Oxg3e6YrtrwlsgauDrOgV9/dLSYi6EFh0iLlvJi+xK1c kemMMu3Tm1xpoSPk3gB/phos27rP+OAcxHQ7tcFYNsjL2aTUapJFt6H4vDw+e4jgSoVh P1wUghjc6pah1T5/sOy26izKRVqvDKRh/l814l9hBzcXarn1BgQaL9gXxk9vF27KrvXd mAk8GKmMdZJbjov4CW8U/FxCgsvHMrxt70JhlVODRNo20Owg2NoTAnmKZfgZjc9cIdVf axog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=xD9CZCqfp6oOH0TENXfs67JbMzL04aaTtGQqYYdMF/Y=; b=FnrGVYnOtIvfmPqxlOMIokhc8W3P/fcSA8Mz+gEpSACrexk8NgMYMuNG43OBU/OowY ZctYFicJhYPq8mIFCO4BGvHl5R4Z1Rir8BFVGVitQegEpDe/s2dD6IaOyBEtomQSK2dB FpCbiQ/NYjIzqDZ/HPDts8dTPxdynmVPKe7WWjiqBltgoXdEIB0T9v+yH1q8GwwAQbL2 xF8lDN0qkLealtsLXCHhKcQDcOR3H+h+m4XOnwNORrsWWXb9FxVoSajL30wkFe5VF3/j PcuUUMMEP/jiuAPyh0FRdkqnrJaSOJSw2+nB1YE8hhs2M1swZNt5QZ77n05dHwzMDdGu Cw0g== X-Gm-Message-State: AOAM530892/AHr2sCc5OL/H4AjLlAEdQiLjnARPWqjMA/didPXhtH/Jc Smry8sO9h5p1TbWKkLCSx9dvKuSSZRg= X-Google-Smtp-Source: ABdhPJwLFoYHkHHTweADUvQkyZeGoreDRgE78Md0c3eS25/BwdXU+gAdtbvWckprWOjaLchflfPI+A== X-Received: by 2002:aa7:991a:0:b029:201:b736:c556 with SMTP id z26-20020aa7991a0000b0290201b736c556mr2961901pff.8.1615962343854; Tue, 16 Mar 2021 23:25:43 -0700 (PDT) Received: from bobo.ozlabs.ibm.com (58-6-239-121.tpgi.com.au. [58.6.239.121]) by smtp.gmail.com with ESMTPSA id s19sm17959620pfh.168.2021.03.16.23.25.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 16 Mar 2021 23:25:43 -0700 (PDT) From: Nicholas Piggin To: linux-mm@kvack.org, Andrew Morton Cc: Nicholas Piggin , linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, Jonathan Cameron , Christoph Hellwig , Christophe Leroy , Rick Edgecombe , Ding Tianhong , Christoph Hellwig Subject: [PATCH v13 12/14] mm/vmalloc: add vmap_range_noflush variant Date: Wed, 17 Mar 2021 16:24:00 +1000 Message-Id: <20210317062402.533919-13-npiggin@gmail.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20210317062402.533919-1-npiggin@gmail.com> References: <20210317062402.533919-1-npiggin@gmail.com> MIME-Version: 1.0 X-Stat-Signature: 3u9yfymgc3tu7m7zrsik6iab3xbi777j X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 0622E12E Received-SPF: none (gmail.com>: No applicable sender policy available) receiver=imf04; identity=mailfrom; envelope-from=""; helo=mail-pf1-f180.google.com; client-ip=209.85.210.180 X-HE-DKIM-Result: pass/pass X-HE-Tag: 1615962344-864686 Content-Transfer-Encoding: quoted-printable 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: As a side-effect, the order of flush_cache_vmap() and arch_sync_kernel_mappings() calls are switched, but that now matches the other callers in this file. Reviewed-by: Christoph Hellwig Signed-off-by: Nicholas Piggin --- mm/vmalloc.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 53414959845d..9455dba58b0e 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c @@ -240,7 +240,7 @@ static int vmap_p4d_range(pgd_t *pgd, unsigned long a= ddr, unsigned long end, return 0; } =20 -int vmap_range(unsigned long addr, unsigned long end, +static int vmap_range_noflush(unsigned long addr, unsigned long end, phys_addr_t phys_addr, pgprot_t prot, unsigned int max_page_shift) { @@ -263,14 +263,24 @@ int vmap_range(unsigned long addr, unsigned long en= d, break; } while (pgd++, phys_addr +=3D (next - addr), addr =3D next, addr !=3D = end); =20 - flush_cache_vmap(start, end); - if (mask & ARCH_PAGE_TABLE_SYNC_MASK) arch_sync_kernel_mappings(start, end); =20 return err; } =20 +int vmap_range(unsigned long addr, unsigned long end, + phys_addr_t phys_addr, pgprot_t prot, + unsigned int max_page_shift) +{ + int err; + + err =3D vmap_range_noflush(addr, end, phys_addr, prot, max_page_shift); + flush_cache_vmap(addr, end); + + return err; +} + static void vunmap_pte_range(pmd_t *pmd, unsigned long addr, unsigned lo= ng end, pgtbl_mod_mask *mask) { --=20 2.23.0