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=-3.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED 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 9F6B6C433DB for ; Thu, 14 Jan 2021 09:46:33 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 2020A205CA for ; Thu, 14 Jan 2021 09:46:33 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2020A205CA Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=chris-wilson.co.uk Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6215B6E16D; Thu, 14 Jan 2021 09:46:32 +0000 (UTC) Received: from fireflyinternet.com (unknown [77.68.26.236]) by gabe.freedesktop.org (Postfix) with ESMTPS id 932066E16D; Thu, 14 Jan 2021 09:46:30 +0000 (UTC) X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=78.156.65.138; Received: from localhost (unverified [78.156.65.138]) by fireflyinternet.com (Firefly Internet (M1)) with ESMTP (TLS) id 23592316-1500050 for multiple; Thu, 14 Jan 2021 09:45:38 +0000 MIME-Version: 1.0 In-Reply-To: References: <20210113140604.3615437-1-daniel.vetter@ffwll.ch> <161055261490.6195.7986280621869334351@build.alporthouse.com> <161057213487.6195.581396740566956696@build.alporthouse.com> <161061619887.19482.10606780107376365239@build.alporthouse.com> Subject: Re: [Intel-gfx] [PATCH] drm-buf: Add debug option From: Chris Wilson To: Daniel Vetter Date: Thu, 14 Jan 2021 09:45:37 +0000 Message-ID: <161061753732.19482.13146900597152116822@build.alporthouse.com> User-Agent: alot/0.9 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Intel Graphics Development , DRI Development , DMA BUFFER SHARING FRAMEWORK Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Quoting Daniel Vetter (2021-01-14 09:30:32) > On Thu, Jan 14, 2021 at 10:23 AM Chris Wilson wrote: > > The only other problem I see with the implementation is that there's > > nothing that says that each dmabuf->ops->map_dma_buf() returns a new > > sg_table, so we may end up undoing the xor. Or should each dma-buf > > return a fresh dma-mapping for iommu isolation? > > Maybe I screwed it up, but that's why I extracted the little helpers: > We scramble when we get the sgtable from exporter, and unscramble > before we pass it back. dma-buf.c does some caching and will hand back > the same sgtable, but for that case we don't re-scramble. The attachment is only mapped once, but there can be more than one attachment, and the backend could return the same sg_table for each mapping. Conceivably, it could return its own private sg_table where it wants to maintain the struct page. Seems like just adding a sentence to @map_dma_buf to clarify that each call should return a new sg_table will suffice. -Chris _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel