Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4253971ybb; Mon, 23 Mar 2020 17:02:56 -0700 (PDT) X-Google-Smtp-Source: ADFU+vty8mIgLH764kiW0sA03JbjO9prdXqG00Fif9ZEVkCBqrkrvVMxW8f+5tHgERwjDGUm8sgZ X-Received: by 2002:aca:1201:: with SMTP id 1mr1550498ois.172.1585008176837; Mon, 23 Mar 2020 17:02:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585008176; cv=none; d=google.com; s=arc-20160816; b=u8IlzPBjVx++MjjC6dyZ1tnPBvO4RyReCT2/uy0WEDXwy4gmcDRDM1S/wjZ+HPPfnN lBT8ZJab7xvSiPLJ9fziXFKalikULFqptCGtyx4eP7IafTG2g+88bH0qKusxZK8oA2bi j3rQgqanS9xcRMR5eWBhai/sZT3ggG6/xwOMDTX/W1S/vK+pM8/HvfYdoaC2zgHaioXI 1MBnJhLdZ9FsulHFZAp8X/g54eMGWo6t05XlS4vnAwoJN8NO2KDLh6b0kB66jdt9iecC p5sIStbx66RAJJq7HWl/lxVfsuSdJkZAaqD7W2LVxAzP4YlNylgmGUas8bUsrysbj2Sz 7KnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=FMJ8LYsOHCuxBqPm4WnPrre6tQnfFkDx3c9qEXiQywU=; b=mbKyKu8EIiWDtPrxzptBev/5ZRWj1hEM9wFjqmQikYGocc0qSBElbumfciDJoTN5/A 0n/NOYME+jtfOS9AFHhNdlTX6fb2sJlsJu4v3TY+0JErlO1ec30MmBlgokhJRgNNAaiM xxe16KiT54Hs0675mAptNDpZjWVOHIEJ1ndCDxX1fJIO9pFERRFpkP+jj1iLzfvmuL3y F3KdZG92JQ+5GAwKVSeUqYnMt7AD4dV6NsKQPVr53rzjcSmYS58hwpqB65rhjZ5niP2p ecJsItwQ6Z3XggJmfbibQAUpT9r7OOD/ytp95shIhk2yIb8ZD9CUHbBY7CEHwYUzt5le CkNw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="aO/UHxQd"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f129si8258849oia.243.2020.03.23.17.02.44; Mon, 23 Mar 2020 17:02:56 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="aO/UHxQd"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727414AbgCXACT (ORCPT + 99 others); Mon, 23 Mar 2020 20:02:19 -0400 Received: from mail-pl1-f194.google.com ([209.85.214.194]:37128 "EHLO mail-pl1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727383AbgCXACT (ORCPT ); Mon, 23 Mar 2020 20:02:19 -0400 Received: by mail-pl1-f194.google.com with SMTP id x1so2608406plm.4 for ; Mon, 23 Mar 2020 17:02:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:content-transfer-encoding:in-reply-to :user-agent; bh=FMJ8LYsOHCuxBqPm4WnPrre6tQnfFkDx3c9qEXiQywU=; b=aO/UHxQdGJRQXfe0gajEMy3sGlCxXRCc3f+LSbVWpchMNbVtKZlSBDkpbbwIq1wKKB l5LEj159s+8HKvRrWNsXpJ4o9nzeKqe/Bwt2n2HOwnq6c6ea2JdA304hfC5uwxVTWY3s CvBgDzZy77UyIYQ6nDbajdddwlhO2KtcrgZ9gKvon0KDcq6Rq8l1KDNq1Fak+VeYN7vo rU3ZxVAI4/u+gyyF0rwE+TtBqUlRA4/zknSEDLxE/82GNcxCXf+oUQjbVj3Fj2wsZ5OY mEvRKcuBOyBREANNxCGGIDLP7tR7ggXVT38pM2wvgc6Td4ZMmMXjeIkGmVWRoNuZ9pP7 l7fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:content-transfer-encoding :in-reply-to:user-agent; bh=FMJ8LYsOHCuxBqPm4WnPrre6tQnfFkDx3c9qEXiQywU=; b=QF0VM13XNXg60mDOGpvfuFALowEp5ul2iLw/LsHLpXybSDg2JsAOmrTehjRXzznqBJ FpPIk0qq11HuxllhVWhJB7Q3VE8NuyOQoXwrvuTkJK46bCb/GyoGjNOb/DBJ661k6EmE ncsSkVTlwTLGncHhnV6tEdC3gWqoTX8wInflwuJJZWyoI5pTbdFxEZeJsLiNuDaiSzZ0 cCrTuURr/SEBkTtImgSmjP9iVjB1Jsc6bvZtfxhSYHatBBQ8GLEhE+OwhzXUQTzsl1k+ Cx11DfGcKCmqINsuuYk7EUjtlSLJjrRONo42ugap9dcaWsa2XQDjFmM+fdbdmyTXynyX HLCQ== X-Gm-Message-State: ANhLgQ0bT/HKYhKBSDe8r4jr4faVdr58odBUf2OKfYv+JUXWgGc9P4wE FAZF7f2//lqZY8b/dkj6VYg= X-Received: by 2002:a17:902:a701:: with SMTP id w1mr21873666plq.165.1585008138501; Mon, 23 Mar 2020 17:02:18 -0700 (PDT) Received: from mail.google.com ([149.248.10.52]) by smtp.gmail.com with ESMTPSA id z63sm13434476pgd.12.2020.03.23.17.02.17 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 23 Mar 2020 17:02:17 -0700 (PDT) Date: Tue, 24 Mar 2020 00:02:15 +0000 From: Changbin Du To: Mark Rutland Cc: Changbin Du , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: Two questions about cache coherency on arm platforms Message-ID: <20200324000214.xl7aomdboyby3b4g@mail.google.com> References: <20200323123524.w67fici6oxzdo665@mail.google.com> <20200323131720.GE2597@C02TD0UTHF1T.local> <20200323161537.ptjrihqotgmon7tr@mail.google.com> <20200323164723.GA8652@lakrids.cambridge.arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20200323164723.GA8652@lakrids.cambridge.arm.com> User-Agent: NeoMutt/20180716-508-7c9a6d Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 23, 2020 at 04:47:24PM +0000, Mark Rutland wrote: > On Mon, Mar 23, 2020 at 04:15:40PM +0000, Changbin Du wrote: > > Hi Mark, > > Thanks for your answer. I still don't understand the first question. > > > > On Mon, Mar 23, 2020 at 01:17:20PM +0000, Mark Rutland wrote: > > > On Mon, Mar 23, 2020 at 08:35:26PM +0800, Changbin Du wrote: > > > > Hi, All, > > > > I am not very familiar with ARM processors. I have two questions about > > > > cache coherency. Could anyone help me? > > > > > > > > 1. How is cache coherency maintenanced on ARMv8 big.LITTLE system? > > > > As far as I know, big cores and little cores are in seperate clusters on > > > > big.LITTLE system. > > > > > > This is often true, but not always the case. For example, with DSU big > > > and little cores can be placed within the same cluster. > > > > Yes, it is ture for DynamIQ that bl cores can be placed within the same cluster. > > But I don't understand how linux support big.LITTLE before DynamIQ. > > Multiple clusters can be in the same Inner Shareable domain, and Linux > relies on this being the case for systems it supports. It's possible to > build a system where clusters are in distinct Inner Shareable domains, > but Linux does not support using all cores on such a system. > > Even with CCI, CCN, CMN, etc, Linux requires that all cores (which it is > told about) are in the same Inner Shareable domain. That is what is > commonly built. > Thank you, I see now. I thought clusters must be in distinct Inner Shareable domains. So I was wrong. The mannual is somewhat misleading. > > I read below description in ARM Cortex-A Series Programmer’s Guide for > > ARMv8-A. > > | big.LITTLE software models require transparent and efficient transfer of data between big and LITTLE clusters. > > | Coherency between clusters is provided by a cache-coherent interconnect such as the ARM CoreLink CCI-400 described in Chapter 14. > > > > So I think big cores and little cores are in different clusters in this > > case. Then we are not within the same Inner Shareable domain? > > Linux requires that those clusters are in the same Inner Shareable > domain, and that's what people (mostly) build today. > > Thanks, > Mark. -- Cheers, Changbin Du