Received: by 10.223.185.116 with SMTP id b49csp884414wrg; Fri, 23 Feb 2018 08:17:26 -0800 (PST) X-Google-Smtp-Source: AH8x225O4f3HR+B5bYBQ/zUDfWyF8IVzwHu6l8RBz6XmeQf7paGvzFnHNSedH03ItmCCBKseoooO X-Received: by 10.99.66.65 with SMTP id p62mr1808537pga.378.1519402646562; Fri, 23 Feb 2018 08:17:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519402646; cv=none; d=google.com; s=arc-20160816; b=wZvFaDOqiu9UumcsZXt8Q17LcamuCZRbOzFzEjJeuvARbu/4sN7EnKtCa5/L7MxmX9 NPLkjaaWhnpFgjr6DmFTNYLl+1CW+V6cQiWgdfDuXeFPhZ/QiY1TeFEiLyeUbcS3TcKs xOaeIBxKxuoWEyTvfvbM1nwvnPtOsFvkMyZzzDxS3nyQLM8fuFWyavoDqYY5w6y2Vz5j mV3iBO5rSUwz3MBE1kB48hVUbbEgGbbaqUBhuUNnzNLeWCZwpAlo9k9x0xMArICPEDD7 rg6esznZShaVGcAmzI6PoEoLM1i29OrwAWxf8M0LnoEG8Uj66NBlsaD1OcasLFuVyQz7 ccTg== 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-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date :arc-authentication-results; bh=9WsxdPBnffRWtNdLbSjTRoXVOqO3DP7lhsX/B920m+k=; b=XkYyYZUvI41nmK0LvTZ706KNSWFvoR9cu2xugpud8SuiD5fszzE0lgKKzhgXm/H202 TBcupGEZVeIlijrKDvkmQrYYgXmx8ah7QBSs3S83JCzAFaxn72kAdMXjF5T8S/4Cc2Va v73gD4d3nN+dHq148q5mTWStgBXTcg/3tLm/eNgX0FS0CLmeUN9zPVpJfQencj1ccaQn mz3nz9O8mMbDKjo3KFccDevHAWYO7YNCqm81+b79q2xx9jQz0u/ZDL/cL29S8GB54Sme g+KG0KzVMISzJ1Jqxx2W5Dmo4rDDOvFg2ATIxwcgdMbWGTP3mYduOjl99V25i5gsZ1ap Pc1A== 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 w12-v6si1956599plp.288.2018.02.23.08.17.11; Fri, 23 Feb 2018 08:17:26 -0800 (PST) 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 S1751469AbeBWQQZ (ORCPT + 99 others); Fri, 23 Feb 2018 11:16:25 -0500 Received: from smtp.eu.citrix.com ([185.25.65.24]:20504 "EHLO SMTP.EU.CITRIX.COM" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751381AbeBWQQY (ORCPT ); Fri, 23 Feb 2018 11:16:24 -0500 X-IronPort-AV: E=Sophos;i="5.47,383,1515456000"; d="scan'208";a="68476018" Date: Fri, 23 Feb 2018 16:15:00 +0000 From: Roger Pau =?iso-8859-1?Q?Monn=E9?= To: Dongwon Kim CC: , , , , , Subject: Re: [Xen-devel] [RFC PATCH v2 2/9] hyper_dmabuf: architecture specification and reference guide Message-ID: <20180223161500.xpbqnpsxihoxi5o4@MacBook-Pro-de-Roger.local> References: <20180214015008.9513-1-dongwon.kim@intel.com> <20180214015008.9513-3-dongwon.kim@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20180214015008.9513-3-dongwon.kim@intel.com> User-Agent: NeoMutt/20171215 X-ClientProxiedBy: AMSPEX02CAS01.citrite.net (10.69.22.112) To AMSPEX02CL02.citrite.net (10.69.22.126) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 13, 2018 at 05:50:01PM -0800, Dongwon Kim wrote: > Reference document for hyper_DMABUF driver > > Documentation/hyper-dmabuf-sharing.txt This should likely be patch 1 in order for reviewers to have the appropriate context. > > Signed-off-by: Dongwon Kim > --- > Documentation/hyper-dmabuf-sharing.txt | 734 +++++++++++++++++++++++++++++++++ > 1 file changed, 734 insertions(+) > create mode 100644 Documentation/hyper-dmabuf-sharing.txt > > diff --git a/Documentation/hyper-dmabuf-sharing.txt b/Documentation/hyper-dmabuf-sharing.txt > new file mode 100644 > index 000000000000..928e411931e3 > --- /dev/null > +++ b/Documentation/hyper-dmabuf-sharing.txt > @@ -0,0 +1,734 @@ > +Linux Hyper DMABUF Driver > + > +------------------------------------------------------------------------------ > +Section 1. Overview > +------------------------------------------------------------------------------ > + > +Hyper_DMABUF driver is a Linux device driver running on multiple Virtual > +achines (VMs), which expands DMA-BUF sharing capability to the VM environment > +where multiple different OS instances need to share same physical data without > +data-copy across VMs. > + > +To share a DMA_BUF across VMs, an instance of the Hyper_DMABUF drv on the > +exporting VM (so called, “exporter”) imports a local DMA_BUF from the original > +producer of the buffer, The usage of export and import in the above sentence makes it almost impossible to understand. > then re-exports it with an unique ID, hyper_dmabuf_id > +for the buffer to the importing VM (so called, “importer”). And this is even worse. Maybe it would help to have some kind of flow diagram of all this import/export operations, but please read below. > + > +Another instance of the Hyper_DMABUF driver on importer registers > +a hyper_dmabuf_id together with reference information for the shared physical > +pages associated with the DMA_BUF to its database when the export happens. > + > +The actual mapping of the DMA_BUF on the importer’s side is done by > +the Hyper_DMABUF driver when user space issues the IOCTL command to access > +the shared DMA_BUF. The Hyper_DMABUF driver works as both an importing and > +exporting driver as is, that is, no special configuration is required. > +Consequently, only a single module per VM is needed to enable cross-VM DMA_BUF > +exchange. IMHO I need a more generic view of the problem you are trying to solve in the overview section. I've read the full overview, and I still have no idea why you need all this. I think the overview should contain at least: 1. A description of the problem you are trying to solve. 2. A high level description of the proposed solution. 3. How the proposed solution deals with the problem described in 1. This overview is not useful for people that don't know which problem you are trying to solve, like myself. Thanks, Roger.