Received: by 2002:a05:6359:c8b:b0:c7:702f:21d4 with SMTP id go11csp4926419rwb; Wed, 21 Sep 2022 00:07:47 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4QWIyUQkuLEke7zqybHmywfk1p0+aWfwSEBSrCh/IkOL4YJ3ZLxsOwU4dkpocFNCsHlq/R X-Received: by 2002:a05:6a00:e1b:b0:537:7c74:c405 with SMTP id bq27-20020a056a000e1b00b005377c74c405mr27657326pfb.43.1663744067756; Wed, 21 Sep 2022 00:07:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1663744067; cv=none; d=google.com; s=arc-20160816; b=0OuKHUk/NX+Vex7FhbKQHLCGvmDH57R1Eemqd3ZmbZZQEfp5lw0yHf3r5nDQCOAAYh BKhp7toustphSAzbCkPmu2kaAMyuShCuythAXaP56uUZ7ILW4CoPVoZv63a4VukbBZdK 6/Sp38Gu+WeW2YYONkbqxyiGnY9BYmanbVhjzQiOdbDkaOLCRK5nWlcAjceVUP3fe5b2 dZq3XM5n7uRe9578gq/FeXFN4alxP7XgKLv7+Q8I5UsgLGX6AnvV4c69nUDWvt+WVJh+ 3G1JFhGgiU5MySAYnJsCYrZ1g+8epMFna9iVHwBN5i/QSe5DZRNFVK/Et8yk9WzdLnpN msfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=ca0WDaabiVM2Q46xO+bvUUiMtrsf1U7Do+JzgsUwcwA=; b=NHygcfbUsKIpbDCiiqtzBzOHp2ZqhvOEYQVtuTTnQ+PgKlaDAt5xSU1op94fXOpRhU 4zRDTGfQtzCr1T08ujwdCNBUelRTZAfFQQUjYHKmOexvonHIIsnhlLegM6mGx4BrqkJO YuP5N1jSPn7Zzbt4x/+TKou1THVtkgTm6fAUhzWR8wMSHIzUDyZLNWcUjPrJwD6DTJmB 7SAEgXNCUA+WDmjFW5jX/aDR8ghvVqFM/VNOrhMI1eaYfK2dxyV9k43U+FE/FT67Ogyx 8hHQjJQKTzb970lHN3WJMDkKL71huC7NgGOpAw7DBcLMiYI6uvB9Pk/vLbx1tGHqDOL2 22UA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x2-20020a170902ea8200b001733f3e79e4si1778385plb.607.2022.09.21.00.07.35; Wed, 21 Sep 2022 00:07:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229687AbiIUGyA (ORCPT + 99 others); Wed, 21 Sep 2022 02:54:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58872 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230107AbiIUGx4 (ORCPT ); Wed, 21 Sep 2022 02:53:56 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 4E8653340C; Tue, 20 Sep 2022 23:53:54 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 16D8C143D; Tue, 20 Sep 2022 23:54:00 -0700 (PDT) Received: from [10.162.41.8] (unknown [10.162.41.8]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 0949D3F73D; Tue, 20 Sep 2022 23:54:11 -0700 (PDT) Message-ID: <888da5f3-104c-3929-c21e-c710922d6f1e@arm.com> Date: Wed, 21 Sep 2022 12:23:40 +0530 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH v3 4/4] arm64: support batched/deferred tlb shootdown during page reclamation Content-Language: en-US To: Yicong Yang , akpm@linux-foundation.org, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, x86@kernel.org, catalin.marinas@arm.com, will@kernel.org, linux-doc@vger.kernel.org Cc: corbet@lwn.net, peterz@infradead.org, arnd@arndb.de, linux-kernel@vger.kernel.org, darren@os.amperecomputing.com, yangyicong@hisilicon.com, huzhanyuan@oppo.com, lipeifeng@oppo.com, zhangshiming@oppo.com, guojian@oppo.com, realmz6@gmail.com, linux-mips@vger.kernel.org, openrisc@lists.librecores.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, Barry Song <21cnbao@gmail.com>, wangkefeng.wang@huawei.com, xhao@linux.alibaba.com, prime.zeng@hisilicon.com, Barry Song , Nadav Amit , Mel Gorman References: <20220822082120.8347-1-yangyicong@huawei.com> <20220822082120.8347-5-yangyicong@huawei.com> From: Anshuman Khandual In-Reply-To: <20220822082120.8347-5-yangyicong@huawei.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-9.1 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_HI,SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 8/22/22 13:51, Yicong Yang wrote: > +static inline void arch_tlbbatch_add_mm(struct arch_tlbflush_unmap_batch *batch, > + struct mm_struct *mm, > + unsigned long uaddr) > +{ > + __flush_tlb_page_nosync(mm, uaddr); > +} > + > +static inline void arch_tlbbatch_flush(struct arch_tlbflush_unmap_batch *batch) > +{ > + dsb(ish); > +} Just wondering if arch_tlbbatch_add_mm() could also detect continuous mapping TLB invalidation requests on a given mm and try to generate a range based TLB invalidation such as flush_tlb_range(). struct arch_tlbflush_unmap_batch via task->tlb_ubc->arch can track continuous ranges while being queued up via arch_tlbbatch_add_mm(), any range formed can later be flushed in subsequent arch_tlbbatch_flush() ? OR It might not be worth the effort and complexity, in comparison to performance improvement, TLB range flush brings in ?