Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp1246508ybt; Thu, 25 Jun 2020 01:04:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJznIOSLButdKMZgbniSzOeL8hK64nVzRLIPIrinf2j9IPHTwafaUww04KLp0vjVr1x97gxc X-Received: by 2002:a17:907:94cf:: with SMTP id dn15mr26809914ejc.457.1593072278365; Thu, 25 Jun 2020 01:04:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1593072278; cv=none; d=google.com; s=arc-20160816; b=El5IOi0PnnRtkT2DZmLFpRBfGM+Xb14nlh3Mr6h0ms6jTPRwDmPWwzKF3ZdbHq2b++ YqMKuFHNaWSXEWj8LCwe+Y+j1Pyk3AbxVzAalsAMFLnVcbfxDCsEUVu2N3zbnhv3wq3D Moh9eLJQhiXtfmfiiKp9sH83VOOYnLUPsasTquDBIo3WIWTd1crqpA2aAMG0+Pu5VWaw Gr+D7LWg8baByd5PlL24pX3xaG7Qv+q/OpVbLhfzjxH6t6yM0IUKj+eVgSUfjId0gENb YqZmGzOBbO0AxCw+8b/eT/ZgKXF2X6Nnzf4CcIbHQqt4rmM1Yp6mq6IRTk9MCj09xTL1 BUzQ== 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:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=uipMHWpds0rpE25Oiw6q9VBDhbI1wYUZ57dOX1vSPvc=; b=TuVI1FKRcFvxeNyMLF1JEWOLHug36fO1S5OMb49MEY7PLYgP9Jv+6f73G9qNboBRYz qI91+Ad/DlsLJXAOnvqBudq0Gsp1GRn5vRvBxIWfWNgGi1D/xjFJic0QuPzMcdCrxP3H Y19+jYB/v1EvDiZD+5aJRC4f3t6A8O7VtyoWim/VctMgqEn65VgN3verF7dPNRgl36JK YGOEUGlDcWD4THn5nuJ4JxZP3OOeGQ0QVFX2wZM2pwuiCNJhRfBwFx1U8di4lWuQESnt tszjvo35oOJCQvPwJANqqLrnCfG7XFbgFYUX6qfhAxgxQm/cic0TeWO3EFraemYbVjch GiKg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r25si10002868edo.46.2020.06.25.01.04.15; Thu, 25 Jun 2020 01:04:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2390609AbgFYIDo (ORCPT + 99 others); Thu, 25 Jun 2020 04:03:44 -0400 Received: from szxga07-in.huawei.com ([45.249.212.35]:53550 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S2390556AbgFYIDj (ORCPT ); Thu, 25 Jun 2020 04:03:39 -0400 Received: from DGGEMS413-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 0DDC312E9D91E7029AFE; Thu, 25 Jun 2020 16:03:37 +0800 (CST) Received: from DESKTOP-KKJBAGG.china.huawei.com (10.173.220.25) by DGGEMS413-HUB.china.huawei.com (10.3.19.213) with Microsoft SMTP Server id 14.3.487.0; Thu, 25 Jun 2020 16:03:31 +0800 From: Zhenyu Ye To: , , , , , , , , , , , , , , , , CC: , , , , , , , , , Subject: [RESEND PATCH v5 6/6] arm64: tlb: Set the TTL field in flush_*_tlb_range Date: Thu, 25 Jun 2020 16:03:14 +0800 Message-ID: <20200625080314.230-7-yezhenyu2@huawei.com> X-Mailer: git-send-email 2.22.0.windows.1 In-Reply-To: <20200625080314.230-1-yezhenyu2@huawei.com> References: <20200625080314.230-1-yezhenyu2@huawei.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=US-ASCII X-Originating-IP: [10.173.220.25] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch implement flush_{pmd|pud}_tlb_range() in arm64 by calling __flush_tlb_range() with the corresponding stride and tlb_level values. Signed-off-by: Zhenyu Ye --- arch/arm64/include/asm/pgtable.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h index 758e2d1577d0..d5d3fbe73953 100644 --- a/arch/arm64/include/asm/pgtable.h +++ b/arch/arm64/include/asm/pgtable.h @@ -40,6 +40,16 @@ extern void __pmd_error(const char *file, int line, unsigned long val); extern void __pud_error(const char *file, int line, unsigned long val); extern void __pgd_error(const char *file, int line, unsigned long val); +#ifdef CONFIG_TRANSPARENT_HUGEPAGE +#define __HAVE_ARCH_FLUSH_PMD_TLB_RANGE + +/* Set stride and tlb_level in flush_*_tlb_range */ +#define flush_pmd_tlb_range(vma, addr, end) \ + __flush_tlb_range(vma, addr, end, PMD_SIZE, false, 2) +#define flush_pud_tlb_range(vma, addr, end) \ + __flush_tlb_range(vma, addr, end, PUD_SIZE, false, 1) +#endif /* CONFIG_TRANSPARENT_HUGEPAGE */ + /* * ZERO_PAGE is a global shared page that is always zero: used * for zero-mapped memory areas etc.. -- 2.26.2