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 X-Spam-Level: X-Spam-Status: No, score=-5.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C733BC433DF for ; Tue, 18 Aug 2020 08:30:29 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 874962067C for ; Tue, 18 Aug 2020 08:30:29 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="onBLPtpi"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="EXk37qGM" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 874962067C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject: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=yVIGk/KklNPMrtno+RRWbQjIosEooRoBLEyqTcH+s40=; b=onBLPtpi7MKYs+VuBJyCHGz/q nB3iNiV+jVHjVJ6Llu5yqvyj2LLX4m8p5xOhJ/3NnjETlEpeTVGDsXdSPzA8d2S5amJ2yJLsG/Idx 1Q97UPTiJrc/nwUKDNfUMWNbTv9eN4oT+fMQAyY32F0afj26LhJ+HQerFH6l9BSdngu63shXxfcpM x8OSxldi1+Q9Z/wXhN6I+oT7hgHpkbqWUmn6GNxzrokrbxt9s9QMMCWMMWeDq9jueW+bcqJ6MlJbH tr8OW41NaVJ86KOJZ94mue0HAZvjc1ld3sISXa5/VO23bpXhGmADosUyzcPXbVOEtXPD9KrlA3jYB YYzOufwkg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k7wzQ-0005gG-Ln; Tue, 18 Aug 2020 08:29:04 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k7wzN-0005fF-6Y for linux-arm-kernel@lists.infradead.org; Tue, 18 Aug 2020 08:29:02 +0000 Received: from willie-the-truck (236.31.169.217.in-addr.arpa [217.169.31.236]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 06C49206B5; Tue, 18 Aug 2020 08:28:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1597739339; bh=gPFyLTIegbMbhCl/SHxbZho1NDgw4y9nB98xI43nArc=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=EXk37qGMQptQYYGyQs1hk7neeMhgMHNghUpk6hUZihonCozzdkwOKG/6057M2UhZO YMAVfOdBg7mFDBkFTd7Xa6ugS61m006dGMSQb6JbFBJj5oL4C+XIOVHwxPo7EKFFDA Vg8I8t7hE6jCa1Bu62ua4ap0lhEvXhFZ2im2dcc8= Date: Tue, 18 Aug 2020 09:28:53 +0100 From: Will Deacon To: Cho KyongHo Subject: Re: [PATCH 1/2] dma-mapping: introduce relaxed version of dma sync Message-ID: <20200818082852.GA15145@willie-the-truck> References: <1597736591-20457-1-git-send-email-pullip.cho@samsung.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1597736591-20457-1-git-send-email-pullip.cho@samsung.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200818_042901_333391_71B4C73A X-CRM114-Status: GOOD ( 15.08 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: janghyuck.kim@samsung.com, catalin.marinas@arm.com, joro@8bytes.org, linux-kernel@vger.kernel.org, hyesoo.yu@samsung.com, iommu@lists.linux-foundation.org, robin.murphy@arm.com, linux-arm-kernel@lists.infradead.org, m.szyprowski@samsung.com 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 On Tue, Aug 18, 2020 at 04:43:10PM +0900, Cho KyongHo wrote: > Cache maintenance operations in the most of CPU architectures needs > memory barrier after the cache maintenance for the DMAs to view the > region of the memory correctly. The problem is that memory barrier is > very expensive and dma_[un]map_sg() and dma_sync_sg_for_{device|cpu}() > involves the memory barrier per every single cache sg entry. In some > CPU micro-architecture, a single memory barrier consumes more time than > cache clean on 4KiB. It becomes more serious if the number of CPU cores > are larger. Have you got higher-level performance data for this change? It's more likely that the DSB is what actually forces the prior cache maintenance to complete, so it's important to look at the bigger picture, not just the apparent relative cost of these instructions. Also, it's a miracle that non-coherent DMA even works, so I'm not sure that we should be complicating the implementation like this to try to make it "fast". Will _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel