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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3B44BC43334 for ; Wed, 13 Jul 2022 04:08:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Subject:References: In-Reply-To:Message-ID:Cc:To:From:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=0L//RLOKzZ3zKaZh11lEyrAxgt1iN2vKHIADWJDeU6I=; b=Lid+mfdCc78BLFCCwn/Pwif2nF 0ynly8NeujJt8FKfInqaxoBuaCByGj+akTWhRX2W0iBuNCR9QTGwhdnBwKnpsQbKwr6Cv3mDv3f2X awsTpC2+ouQ77isqAco4IRH6/lj2kAANWgX157HDICRQUbxjhHTHXfym9bhyiL1cwXg8bCjk3mvdO mnVwzH6JGJiL5IYS/rhVd5BK2BPBJWckpKmRaazaS371FogIuojjAj/DpDf8BTGXft/ovxWLJIVWc lFnG158NndUQnr/XvDnbaSx6INrOpi8s/79qimRH3YedBAtORuvnkHkjEp0IbBN98uyOMSKq7Tk+X zvfz4grw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oBTf1-00026o-P9; Wed, 13 Jul 2022 04:07:39 +0000 Received: from sender4-op-o13.zoho.com ([136.143.188.13]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oBTey-00025M-Hj for linux-arm-kernel@lists.infradead.org; Wed, 13 Jul 2022 04:07:38 +0000 ARC-Seal: i=1; a=rsa-sha256; t=1657685252; cv=none; d=zohomail.com; s=zohoarc; b=Kr+WXduIwXqP1FchdEQQvFu/J5WlySRWpTa9mobVUluR6CDnF4BBl3D5ghRCBjbgdhBKF28efY1xI0spWZhSAmp4I4YbkECQI0Pk3x4Y9SyXueKvoEqqLgnvJT3fEo5bfzp6Qqx2dwLDzfbWp4JlsfXhb0KNm8/srcGyaYx6aKo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1657685252; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=HP4aRErVhchqXMI2PHDRJRR0y0REVvZDtqnkrfw1Eec=; b=P4S2+7BTerPxJbftUdeNAi9EUB8g0htt/EijdqYRHlxGLumj+QdlOQHaEwyObfqJuCUEpbo/OM64nOsgvSznX418QN1MTw11A4dOjf/jfwu61pkgjog+DITvVb9YGMBxxSB5JoeGmhPI6TyXb+Xs26dtt+KcntRPZmVlMfW1OWw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=linux.beauty; spf=pass smtp.mailfrom=me@linux.beauty; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1657685252; s=zmail; d=linux.beauty; i=me@linux.beauty; h=Date:Date:From:From:To:To:Cc:Cc:Message-ID:In-Reply-To:References:Subject:Subject:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To; bh=HP4aRErVhchqXMI2PHDRJRR0y0REVvZDtqnkrfw1Eec=; b=nlmPKnoTeK2x3FHXekisQhZQR9OPHFY/kLyf4OW5yosRn6r/4lKCM62viOOSYItp rN/1tJ77wh62rGqPj5HUTQvPJLzGLUqxLEkUCub2sBEucSjH1fm/QqsDbgxO7Y4LINP T58+NHWj8PoCms7SHwC4/F7ivF8gOgiAgkDK+V44= Received: from mail.zoho.com by mx.zohomail.com with SMTP id 1657685252191248.63442223554102; Tue, 12 Jul 2022 21:07:32 -0700 (PDT) Date: Wed, 13 Jul 2022 12:07:32 +0800 From: Li Chen To: "Arnd Bergmann" Cc: "linux-arm-kernel" Message-ID: <181f5bd983e.122f756bd814300.5928916659582225801@linux.beauty> In-Reply-To: References: <181f2eeeda0.e0e88feb706179.5112306564526283358@linux.beauty> Subject: Re: Is it possible to run a linux on multiple clusters if CCI is missing MIME-Version: 1.0 Importance: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220712_210736_680754_5599DCCA X-CRM114-Status: GOOD ( 29.49 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi Arnd, ---- On Tue, 12 Jul 2022 23:43:06 +0800 Arnd Bergmann wrote --- > On Tue, Jul 12, 2022 at 5:02 PM Li Chen wrote: > > > > Hi all, > > > > Say that if one SoC has 4 clusters, and each cluster has an A78. Every A78 has its own SCU to maintain cache coherence, > > but this SoC doesn't have CCI, so there is no hardware to maintain cache coherence between the 4 clusters. > > > > My question: is it possible to run a single Linux kernel on 4 clusters? > > If so, how to do it and how can the cluster cache coherence be maintained? > > Hi Li, > > Please note that sending an open question like this to the linux-arm-kernel list > probably doesn't get you a reply, since almost nobody reads all the emails sent > to the list, it's more common to just Cc the list to have an archive of the > discussion but have other recipients. A better place for this might be the > #armlinux IRC channel on irc.libera.chat. > > I did get your email in my inbox since I recently replied to another thread > of yours. Got it. I will come to #armlinux after fixing the IRC connection issue with my company network. But I prefer mailing list over IRC in that most IRC channels don't have archives available, so they are searchable on google. > Regarding your question, I'm pretty sure that you cannot run Linux across > multiple clusters without a CCI, as the kernel among other things on behavior > documented in Documentation/memory-barriers.txt that is not guaranteed > otherwise. Good point, but I don't know how CCI deals with the memory barrier, can you share more about it? Apart from memory barriers and coherence, can TLB invalidation not also work properly among four clusters without CCI? > The only way I can think of for using that kind of system would be to run > a separate kernel on each cluster, and assigning each device to one of the > instances, and use explicit cache management for a communication > channel between them. Sorry for my three noob questions: 1. How to assign each devices to one of the instances? Can NIC do it? 2. When you say "explicit cache management", do you mean flush/invalidate cache in kernel manually with flush_cache* and fush_tlb*? 3. What kind of communication channel? share a region of memory as communication and monitor it with PMU? Regards, Li _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel