Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1495774imm; Wed, 8 Aug 2018 19:03:02 -0700 (PDT) X-Google-Smtp-Source: AA+uWPw6UAt0EfdOANWkGqJS1Jh+rTw2w17Lv+jCe6qX4oRSzfqXjr9nCIu5rUpZHh00SS8w94Wj X-Received: by 2002:a17:902:9883:: with SMTP id s3-v6mr188129plp.194.1533780182249; Wed, 08 Aug 2018 19:03:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533780182; cv=none; d=google.com; s=arc-20160816; b=iuA83rpDzUKSoG8k+wiVeicvHpZG5V4JusUsgQruPVDVZyLd60DeoDFNARWG6/bFvc 6yeps5LSCT6MI2G0rpl8gB8JeP/t2qZZ1v68tROev2f/NfeLreK4y0SJtrPYhoTOMaTB CEubPWM1bFZDQDZlayEQhtQqI3b5+AwIMUp9hJFG+iZ5YckORI7KjwHqhDl35pwSptMY I+1Vtn+mB7zjIsY9ovx6N9wO+Po41qOO8djeYxGYdb0H+SztW/x/J7Y4bKIVSCuIHivt kc7y6dR6Z6Q4G3LdBZJenNysGZ4mR7Z0KTJKnRErd9siR00CDPigAQa7ECsZWOE0nVBY Y7Mg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :arc-authentication-results; bh=zWiP6gih1rtQDhAzCvr38bkyMW0XvkWQa5LftzPTLpA=; b=jyF9LYhHSj7RxWMycFL7zzaRAfRcTD9LUVdh4F15WpxScwv5RCQFh9hXy5gNqoxt+K S7QlhdF40G9kfByvUeHsa6o/foeOGKltiiobtHBi1o80joeze8B5jKZLiwP/Z37zz4BB ReNamUSdNkawRSfSSwBxdr3dljkLmgLf3fg5g/0pl/+nAJC4f0CAvPr/P/RvSWz+bhc7 bJyiaCxJaLtyrp5bluzBFvWksA4TEESPTeaxcZWhvNYd/VdPYYO/E7/FV8vrjjeMjqNN HrYS4BQtDX2lcl7AtwZhrX2QDO6KI06izuNENk1UVxdEiq4mtpdsFH0xN5VMcSwRVpC9 rcfw== ARC-Authentication-Results: i=1; mx.google.com; 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 32-v6si5522772plf.0.2018.08.08.19.02.47; Wed, 08 Aug 2018 19:03:02 -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; 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 S1727129AbeHIEYT (ORCPT + 99 others); Thu, 9 Aug 2018 00:24:19 -0400 Received: from gate.crashing.org ([63.228.1.57]:36647 "EHLO gate.crashing.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725757AbeHIEYT (ORCPT ); Thu, 9 Aug 2018 00:24:19 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id w7920mf5018458; Wed, 8 Aug 2018 21:00:49 -0500 Message-ID: <7995ee537c416e30d0aac57042cb36f84c6edef9.camel@kernel.crashing.org> Subject: Re: [RFC 0/4] Virtio uses DMA API for all devices From: Benjamin Herrenschmidt To: "Michael S. Tsirkin" Cc: Christoph Hellwig , Will Deacon , Anshuman Khandual , virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, aik@ozlabs.ru, robh@kernel.org, joe@perches.com, elfring@users.sourceforge.net, david@gibson.dropbear.id.au, jasowang@redhat.com, mpe@ellerman.id.au, linuxram@us.ibm.com, haren@linux.vnet.ibm.com, paulus@samba.org, srikar@linux.vnet.ibm.com, robin.murphy@arm.com, jean-philippe.brucker@arm.com, marc.zyngier@arm.com Date: Thu, 09 Aug 2018 12:00:47 +1000 In-Reply-To: <98eb367ce322ad84baa31e3c7beffc4a42be8458.camel@kernel.crashing.org> References: <20180806094243.GA16032@infradead.org> <6c707d6d33ac25a42265c2e9b521c2416d72c739.camel@kernel.crashing.org> <20180807062117.GD32709@infradead.org> <20180807135505.GA29034@infradead.org> <2103ecfe52d23cec03f185d08a87bfad9c9d82b5.camel@kernel.crashing.org> <20180808063158.GA2474@infradead.org> <4b596883892b5cb5560bef26fcd249e7107173ac.camel@kernel.crashing.org> <20180808123036.GA2525@infradead.org> <20180808232210-mutt-send-email-mst@kernel.org> <98eb367ce322ad84baa31e3c7beffc4a42be8458.camel@kernel.crashing.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.28.4 (3.28.4-1.fc28) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 2018-08-09 at 08:13 +1000, Benjamin Herrenschmidt wrote: > > For completeness, virtio could also have its own bounce buffer > > outside of DMA API one. I don't see lots of benefits to this > > though. > > Not fan of that either... To elaborate a bit ... For our secure VMs, we will need bounce buffering for everything anyway. virtio, emulated PCI, or vfio. By ensuring that we create an identity mapping in the IOMMU for the bounce buffering pool, we enable virtio "legacy/direct" to use the same mapping ops as things using the iommu. That said, we still need somewhere in arch/powerpc a set of dma ops which we'll attach to all PCI devices of a secure VM to force bouncing always, rather than just based on address (which is what the standard swiotlb ones do)... Unless we can tweak the swiotlb "threshold" for example by using an empty mask. We'll need the same set of DMA ops for VIO devices too, not just PCI. Cheers, Ben.