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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 46F92C28B20 for ; Fri, 28 Mar 2025 18:22:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0BAE8280160; Fri, 28 Mar 2025 14:22:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 069B528015F; Fri, 28 Mar 2025 14:22:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E747D280160; Fri, 28 Mar 2025 14:22:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id C63CB28015F for ; Fri, 28 Mar 2025 14:22:43 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 4687156378 for ; Fri, 28 Mar 2025 18:22:44 +0000 (UTC) X-FDA: 83271780648.12.0252C56 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf03.hostedemail.com (Postfix) with ESMTP id 36B3220009 for ; Fri, 28 Mar 2025 18:22:42 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of catalin.marinas@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=catalin.marinas@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1743186162; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GGIl/D/IQlATv1YE3sYc45w/0v7KuPGnvUjACfzSOkA=; b=WeL9z+EO8frhHWF2e7enjLHRWfdONhdo9hUXuVoCQGvjdVGRYVBe9r1oasWTbeoFDDUWUJ OHYRX4Un5UjHYoKpenbcZQgb/PRZNunNBk/SM0zFHU+2PK6r4OhRxj0khDirqRTknkxWq2 AJ2oYdxjDWNw8aW+NkO0JWllLzawSM4= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=none; spf=pass (imf03.hostedemail.com: domain of catalin.marinas@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=catalin.marinas@arm.com; dmarc=pass (policy=none) header.from=arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1743186162; a=rsa-sha256; cv=none; b=non2N12c32YM0H8ybp0ANnIbdTJgiZkCT25K5jQ438MoGG03aBfxIIl/h4DMYwyjbAtDi2 n9wp/f/gxXOhuIRjRM14TO9cfvEQ7jA6ebRS5bIyNkkM1rDCQDu871iaNALjVCY/dTzHXt ZPE1TKe95klvKgP/l9zkrKNl78ZSKBc= 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 EE997FEC; Fri, 28 Mar 2025 11:22:45 -0700 (PDT) Received: from arm.com (usa-sjc-mx-foss1.foss.arm.com [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 43F0D3F694; Fri, 28 Mar 2025 11:22:39 -0700 (PDT) Date: Fri, 28 Mar 2025 18:22:36 +0000 From: Catalin Marinas To: Jonathan Cameron Cc: linux-cxl@vger.kernel.org, linux-arm-kernel@lists.infradead.org, james.morse@arm.com, conor@kernel.org, Yicong Yang , linux-acpi@vger.kernel.org, linux-arch@vger.kernel.org, linuxarm@huawei.com, Yushan Wang , linux-mm@kvack.org, gregkh@linuxfoundation.org, Lorenzo Pieralisi , Mark Rutland , Will Deacon , Dan Williams Subject: Re: [RFC PATCH 2/6] arm64: Support ARCH_HAS_CPU_CACHE_INVALIDATE_MEMREGION Message-ID: References: <20250320174118.39173-1-Jonathan.Cameron@huawei.com> <20250320174118.39173-3-Jonathan.Cameron@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250320174118.39173-3-Jonathan.Cameron@huawei.com> X-Rspamd-Queue-Id: 36B3220009 X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: qcneo1jjcgpii5eet1kx93c3a6u3t8k3 X-HE-Tag: 1743186162-86120 X-HE-Meta: U2FsdGVkX19AEMvVKU8cVyteBEzqw2daBseqj+3cHUZnnZnW5DB+RD0buap3QKVNF1xr3jMJivD0Li7HocBUcd5okb+hQzyG3tfmXwQECPLlvE7Fh4BOpr287e6Q8ZfMlCW2ZidnJBLB5FGUkTjlA7bzbokjiU+7Ni/k8QxQMHc01j187CFkuYWDYlE0bOhfNk6CiwWrxU9u/nb7G8gitp0Ta+81gZYWjs86wfhNytJD/uWuSipc0Poa7Oiqr6dqLEYuiXcScbAE+Wh9IzRBzPeSn74Olu6ODjyDZIp1Y0Q6v5EsOU6Qd7n8vr6THxvRzr5EfYQfdfxC6fhiAMwvuoaROQv31ClABYX99wBEY4QjpnsUW/1hPHikFvFd0AFuCXL0PcbtAPSRmnVJija8FrvKq8QIv6u41GqBbS4cM1dDGl1EJcD9ux201QufpoLHQ9ETBtzQeR32Nqo3jDhW7wFFOGd8lAFSox3gVwt3nVU/j7uhBtXoHbUtGifAKTUurA3OaSewCY4tGUAR6kKjWCj8FiJHkyZuOqzDPxyaKdO/EEv4af0CRvbYOfIfnFGFcMC39rrofsDkFyl2F+7JtLe1zZMtoiGVh3WGC+MJiHcGdq0PAQcTCo9Xn/pErNQkoaxt9mlLf2/T2zQQVXJ1C2pdlKl0Uo86uv/jmj/9TrgMECiKFEBlyseM49NAloID7ozPPXrXNdREXov2KTRzJa+ctUgLXBwEgDT0hqG3lNZpAQbIiC5nRFpTlorLoclqpmvJNRJUB1cDClA/GpFoES6YREhYYquWxdU7bfLSFpN56wbUL7TxxWSS75EbeQWRioNUWmwiBbaZbyW9Fd7/QkGYv7FOp5taprnRsNEsgFPUm3F85CW8A67mRAVDVT8zSYCjhyO9OFztGxMlkYcSM7gZgfno76jZwWch4tPan4iUBt/p1nYrzE2m/QSdmAZDCGOLWPR53F4n9AZIQkh Vajx0dBM GZQ1aaG4QXgaYUIaPMAFuWy77XKQyZzqE/zJLQG7KxPj4ogPnMog0XyjPCpAUVNaOI9JL6kihos0tgJd3M+d/xAdezWBlM9jRqYeOmPO91Uwpy2oeleNU5NOVtPgqj2D497gQLjCwI8MiMJxSzm1YlX+PL1oqsxab7gWAOBz9QPRpEZy42hxKVWPKDH8vJPs5xnPs 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: List-Subscribe: List-Unsubscribe: On Thu, Mar 20, 2025 at 05:41:14PM +0000, Jonathan Cameron wrote: > +struct system_cache_flush_method { > + int (*invalidate_memregion)(int res_desc, > + phys_addr_t start, size_t len); > +}; [...] > +int cpu_cache_invalidate_memregion(int res_desc, phys_addr_t start, size_t len) > +{ > + guard(spinlock_irqsave)(&scfm_lock); > + if (!scfm_data) > + return -EOPNOTSUPP; > + > + return scfm_data->invalidate_memregion(res_desc, start, len); > +} WBINVD on x86 deals with the CPU caches as well. Even the API naming in Linux implies CPU caches. IIUC, devices registering to the above on Arm SoCs can only deal with system caches. Is it sufficient? -- Catalin