Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp811756imm; Fri, 3 Aug 2018 12:01:08 -0700 (PDT) X-Google-Smtp-Source: AAOMgpd9Wq3gcLkXo6NNXz6UJTOQi9k9WcpqkL7vqhVMoMBXwcw8AszL11JoVTtDJrs/4k+zPHn+ X-Received: by 2002:a65:60cf:: with SMTP id r15-v6mr4932417pgv.41.1533322867945; Fri, 03 Aug 2018 12:01:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533322867; cv=none; d=google.com; s=arc-20160816; b=kNAuIKdoL/ElPUGl6RI6+VEQj2oGBRB4+niZa2C0hq0eCPhN60VbTatqNk+3Sc4y5W hSI6MTurx20RkUdpU9lBjHf2eaiux7KVdZonoxAYR0DSQhFZwI2UARwWhBoHHmtlT585 ymIyiNAWBCQ/GuvfBmeaefOjsvcYzVZ85Xb74ENwPDojzc8ntDglqDM/vzi+7CFyYt7V rwENfTdYUvt65gIDpDzQvf+Ejg6lnqVtWQffOZK6Tp0hYCDg01MhJiBobsVInMdOUa0X cMaT64uryJsScqnZTIY32XYIVMf2bvEQ7yE6nDHz0hVTQld/IyGoXwWmiF1yNe5AOuBa k2Dw== 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=Ap8tjyLWp1a0XMcRESvfwF7hVirytSgDV/H+9E9PdVc=; b=zo0UsuGoMiMhgyaQU0mU6XQi6sldKIYxh+mK7/TVeTztF8fp62qfAmqsD/Xd08kHLQ sewgNv4DSNcfxAcCJScDQEPDpbo9bSSdlReOSEQNy9R99WZzgUyBZ6cwfiXrJPkd59yj RVmcaIEuJF8UBqsSY19RNQiBraqVQMfOwf9wmdhtA1Jo45mhFSDQXsXvsKoXZb7rHBYl GPHiPQGZSdlNAsYaMVT8UBShKT/zxSoS4EcPLKQWZakCd9kubGbvGW0dRAMUFJZ4QEEU ytFXINdl2d7HOjle8HVmOTmDA8hXHhGnaoBHBXPrqSkJhxfuvnhNmQawzhG1DcOpP6Uo mhmw== 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 w7-v6si5358232pgf.231.2018.08.03.12.00.52; Fri, 03 Aug 2018 12:01:07 -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 S1731846AbeHCU50 (ORCPT + 99 others); Fri, 3 Aug 2018 16:57:26 -0400 Received: from gate.crashing.org ([63.228.1.57]:53125 "EHLO gate.crashing.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727532AbeHCU50 (ORCPT ); Fri, 3 Aug 2018 16:57:26 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.14.1) with ESMTP id w73Iwk4A008560; Fri, 3 Aug 2018 13:58:47 -0500 Message-ID: <22310f58605169fe9de83abf78b59f593ff7fbb7.camel@kernel.crashing.org> Subject: Re: [RFC 0/4] Virtio uses DMA API for all devices From: Benjamin Herrenschmidt To: Christoph Hellwig Cc: "Michael S. Tsirkin" , 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: Fri, 03 Aug 2018 13:58:46 -0500 In-Reply-To: <20180803160246.GA13794@infradead.org> References: <20180801083639.GF26378@infradead.org> <26c1d3d50d8e081eed44fe9940fbefed34598cbd.camel@kernel.crashing.org> <20180802182959-mutt-send-email-mst@kernel.org> <82ccef6ec3d95ee43f3990a4a2d0aea87eb45e89.camel@kernel.crashing.org> <20180802200646-mutt-send-email-mst@kernel.org> <20180802225738-mutt-send-email-mst@kernel.org> <20180803070507.GA1344@infradead.org> <20180803160246.GA13794@infradead.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 Fri, 2018-08-03 at 09:02 -0700, Christoph Hellwig wrote: > On Fri, Aug 03, 2018 at 10:58:36AM -0500, Benjamin Herrenschmidt wrote: > > On Fri, 2018-08-03 at 00:05 -0700, Christoph Hellwig wrote: > > > > 2- Make virtio use the DMA API with our custom platform-provided > > > > swiotlb callbacks when needed, that is when not using IOMMU *and* > > > > running on a secure VM in our case. > > > > > > And total NAK the customer platform-provided part of this. We need > > > a flag passed in from the hypervisor that the device needs all bus > > > specific dma api treatment, and then just use the normal plaform > > > dma mapping setup. > > > > Christoph, as I have explained already, we do NOT have a way to provide > > such a flag as neither the hypervisor nor qemu knows anything about > > this when the VM is created. > > Well, if your setup is so fucked up I see no way to support it in Linux. > > Let's end the discussion right now then. You are saying something along the lines of "I don't like an instruction in your ISA, let's not support your entire CPU architecture in Linux". Our setup is not fucked. It makes a LOT of sense and it's a very sensible design. It's hitting a problem due to a corner case oddity in virtio bypassing the MMU, we've worked around such corner cases many times in the past without any problem, I fail to see what the problem is here. We aren't going to cancel years of HW and SW development for our security infrastructure bcs you don't like a 2 lines hook into virtio to make things work and aren't willing to even consider the options. Ben.