Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp2331301imm; Sun, 5 Aug 2018 01:43:08 -0700 (PDT) X-Google-Smtp-Source: AAOMgpfZLah4DSMrkVmivOFG3xtpX6BK21Tmg3EGbd8Yo8kUDneCDJjmDxsv17c23OSrwTtPvT/F X-Received: by 2002:a62:6a01:: with SMTP id f1-v6mr12231494pfc.156.1533458588550; Sun, 05 Aug 2018 01:43:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533458588; cv=none; d=google.com; s=arc-20160816; b=mnVGAHjIEe0twG4OCHgTyac8d7ka2i51JQ9giHr/zmBWgDwcSypPMJMCUHmkWzgdY+ FYLFq0tOYZVtnnBuDBGC1vvx2bUkb2k2QwDK1KZC1GikWYsRrCYOZXBk4YdCwSl3nr6P ikR16smDwRKMT/ymQvrGw8KiJzMNZrAjynqG+HPp8FruJ4lK0g25iTkJIk8zoj3x83El ZbAONypOHtAsH6soiLxyXM6wmmt3NogIR+BEewJ93vAXTRuj0E0Hk65iEi3hNiWFTUnh SZIVLnbxqH7JcocRZB2tTzbjmpLEcoIuq9zg664TjJrG1Q9tkaLuWQ6Gan1dRQOYE+AG gy9Q== 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-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=+orMi4qCFgED+6EWil9fQSIZZQQWkxG8t37kIoAhnwA=; b=BVJzqGw5TYApzVy8j5h41mIL6nFlK0Fl1X0BbQLJC1nbrm33pxsemeMVL85tfV6Q8K 5R5V9/9m1YO1sCXVnEqT7n5SmERcg6DPm5cdV+gtySl4xvscQQv8FIE1kGY2QNLZfIOR SZCnhzrrzdU69bjBolULEJ/2sZk70vNTS/hGe2sl+B1V2PeQO2w0FlsPAlmqRTddqX8d cjB2LCEZiFitRstrNXzatgHTzvZf9Vym1IH5eQr7xPkL64DfeGMgpxv+Y4fTRUCRHXBC jMAOSLKs1ZliMesr2Ud2U3JgW4LlElbRW+wf3h//U2rLsd7mQ1fbaeEf4t9rDBABOFSY NO4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=oxCO8Kk0; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u186-v6si9352378pgd.578.2018.08.05.01.42.53; Sun, 05 Aug 2018 01:43:08 -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=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=oxCO8Kk0; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726191AbeHEKpU (ORCPT + 99 others); Sun, 5 Aug 2018 06:45:20 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:54638 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726100AbeHEKpU (ORCPT ); Sun, 5 Aug 2018 06:45:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=+orMi4qCFgED+6EWil9fQSIZZQQWkxG8t37kIoAhnwA=; b=oxCO8Kk0cO18i8cKi3HC8CrL3 TE+Ewf8S952ZHNw/lA7IhGl9K7gJWnyIBwy0lNTTdeyGZ8mPSU/be6i1OjKWoG09a3eCX1L3VrEk2 7cvyvWiqI4AYGKv6AXc+yNh1Mn1mQu1JW4/MXBByCgpZM6vF9nH+lecYWFrNtb9NXrhCByathe0Jn LUXscSZGSU1rAQqeN6jYab8w46VpYLCYGwWNS2xEapB8Jc6lQqDDoNh0N/G+2GwI9XPD1Ue7lnAdx 3nSstoG3t6J46aHVDp3+t/yTBBbQq0fOXF+7mtCUkkJzS15hBLjzKvCXFPdyZtSvjAWM442/zmhiX fluxJ4YyA==; Received: from hch by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1fmEbE-0005J9-Ay; Sun, 05 Aug 2018 08:41:16 +0000 Date: Sun, 5 Aug 2018 01:41:16 -0700 From: Christoph Hellwig To: "Matwey V. Kornilov" Cc: Christoph Hellwig , Alan Stern , Laurent Pinchart , Tomasz Figa , Ezequiel Garcia , Hans de Goede , Hans Verkuil , Mauro Carvalho Chehab , Steven Rostedt , mingo@redhat.com, Mike Isely , Bhumika Goyal , Colin King , Linux Media Mailing List , Linux Kernel Mailing List , Kieran Bingham , keiichiw@chromium.org Subject: Re: [PATCH 2/2] media: usb: pwc: Don't use coherent DMA buffers for ISO transfer Message-ID: <20180805084116.GA15482@infradead.org> References: <20180805074946.GA14119@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.2 (2017-12-15) X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Aug 05, 2018 at 11:33:38AM +0300, Matwey V. Kornilov wrote: > >> Taken together, those measurements look like a pretty good argument for > >> always using dma_sync_single_for_cpu in the driver. Provided results > >> on other platforms aren't too far out of line with these results. > > > > Logically speaking on no-mmio no-swiotlb platforms dma_sync_single_for_cpu > > and dma_unmap should always be identical. With the migration towards > > everyone using dma-direct and dma-noncoherent this is actually going to > > be enforced, and I plan to move that enforcement to common code in the > > next merge window or two. > > > > I think that Alan means that using dma_sync_single_for_cpu() we save > time required for subsequent dma_map() call (which is required when we > do dma_unmap()). The point still stands. By definition for a correct DMA API implementation a dma_sync_single_for_cpu/dma_sync_single_for_device pair is always going to be cheaper than a dma_unmap/dma_map pair, although for many cases the difference might be so small that it is not measureable. If you reuse a buffer using dma_sync_single* is always the right thing to do vs unmapping and remapping it.