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=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable 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 01E36C433E1 for ; Tue, 7 Jul 2020 20:12:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id CC584206C3 for ; Tue, 7 Jul 2020 20:12:49 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="i4Wbb9D5" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728514AbgGGUMt (ORCPT ); Tue, 7 Jul 2020 16:12:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49500 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728303AbgGGUMs (ORCPT ); Tue, 7 Jul 2020 16:12:48 -0400 Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 91B91C061755 for ; Tue, 7 Jul 2020 13:12:46 -0700 (PDT) Received: by mail-wr1-x441.google.com with SMTP id q5so46563156wru.6 for ; Tue, 07 Jul 2020 13:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=i4Wbb9D5vWR7ZvrtLwuYGSomQJsW13PdSzmWff3tCkJHGhMCGQ/HSW5yxVH79pV46L tGbdgX4hG3qDBztTT4nSZm/jRw+NGvkWAW3puj/5aI3ocSr0a9lVgHUIRWXjL5Q4bmcC ymy40QVqyUlP61mFf/kASiA4K6cTSnd36TinU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=hH4nOTIOAB8h3fCqw/43S9Ya+0wZqe5d6TfkTbYDn2AiLKpH3NJ0aOG9MyDLqsMWmE 7g0iY9b4aa48RkqZDHBMI7Mp0QwwkreqzzqWRpv/POY+D5kp/a4RzdBc53hSk9LFMZXO 92mRAfskq8p90+UDqBZliB7vFc9sZQ6enVzawWQFQ2dl/djin5JrE6lRPpNKNr5tjwdC BZjogwlsXVYWJfBxJJXPTm3jrTLY6wWMrJFd67tZQY5DIiF1ofWjqOXJfHby7XeC68Pd PS/XUKU+QIk1i271usHzRhEJS8vllcY1HrvTjO9djmoYeE+o8Hw/VHok3pHE6B/kn4LG ZzrA== X-Gm-Message-State: AOAM533Erk2byukRJAzAAP63IYqjGYwlI8et0R28LXBJfOsZqXfaCfgW djRPZe85LqCusvF0mI1BAkVP0w== X-Google-Smtp-Source: ABdhPJw3cwqPDCwSU2yLmYLAHgb/GZDKN9L46jfNXwWcxmwRn2v90lLr2GiOpy9wcdxv9hJWpyyOJQ== X-Received: by 2002:a5d:40cb:: with SMTP id b11mr56759235wrq.263.1594152765245; Tue, 07 Jul 2020 13:12:45 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id q7sm2515262wra.56.2020.07.07.13.12.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jul 2020 13:12:44 -0700 (PDT) From: Daniel Vetter To: DRI Development Cc: Intel Graphics Development , linux-rdma@vger.kernel.org, Daniel Vetter , Jesse Natalie , Steve Pronovost , Jason Ekstrand , Felix Kuehling , Mika Kuoppala , Thomas Hellstrom , linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org, amd-gfx@lists.freedesktop.org, Chris Wilson , Maarten Lankhorst , =?UTF-8?q?Christian=20K=C3=B6nig?= , Daniel Vetter Subject: [PATCH 03/25] dma-buf.rst: Document why idenfinite fences are a bad idea Date: Tue, 7 Jul 2020 22:12:07 +0200 Message-Id: <20200707201229.472834-4-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200707201229.472834-1-daniel.vetter@ffwll.ch> References: <20200707201229.472834-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org Comes up every few years, gets somewhat tedious to discuss, let's write this down once and for all. What I'm not sure about is whether the text should be more explicit in flat out mandating the amdkfd eviction fences for long running compute workloads or workloads where userspace fencing is allowed. v2: Now with dot graph! Cc: Jesse Natalie Cc: Steve Pronovost Cc: Jason Ekstrand Cc: Felix Kuehling Cc: Mika Kuoppala Cc: Thomas Hellstrom Cc: linux-media@vger.kernel.org Cc: linaro-mm-sig@lists.linaro.org Cc: linux-rdma@vger.kernel.org Cc: amd-gfx@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org Cc: Chris Wilson Cc: Maarten Lankhorst Cc: Christian König Signed-off-by: Daniel Vetter --- Documentation/driver-api/dma-buf.rst | 70 ++++++++++++++++++++++++ drivers/gpu/drm/virtio/virtgpu_display.c | 20 ------- 2 files changed, 70 insertions(+), 20 deletions(-) diff --git a/Documentation/driver-api/dma-buf.rst b/Documentation/driver-api/dma-buf.rst index f8f6decde359..037ba0078bb4 100644 --- a/Documentation/driver-api/dma-buf.rst +++ b/Documentation/driver-api/dma-buf.rst @@ -178,3 +178,73 @@ DMA Fence uABI/Sync File .. kernel-doc:: include/linux/sync_file.h :internal: +Idefinite DMA Fences +~~~~~~~~~~~~~~~~~~~~ + +At various times &dma_fence with an indefinite time until dma_fence_wait() +finishes have been proposed. Examples include: + +* Future fences, used in HWC1 to signal when a buffer isn't used by the display + any longer, and created with the screen update that makes the buffer visible. + The time this fence completes is entirely under userspace's control. + +* Proxy fences, proposed to handle &drm_syncobj for which the fence has not yet + been set. Used to asynchronously delay command submission. + +* Userspace fences or gpu futexes, fine-grained locking within a command buffer + that userspace uses for synchronization across engines or with the CPU, which + are then imported as a DMA fence for integration into existing winsys + protocols. + +* Long-running compute command buffers, while still using traditional end of + batch DMA fences for memory management instead of context preemption DMA + fences which get reattached when the compute job is rescheduled. + +Common to all these schemes is that userspace controls the dependencies of these +fences and controls when they fire. Mixing indefinite fences with normal +in-kernel DMA fences does not work, even when a fallback timeout is included to +protect against malicious userspace: + +* Only the kernel knows about all DMA fence dependencies, userspace is not aware + of dependencies injected due to memory management or scheduler decisions. + +* Only userspace knows about all dependencies in indefinite fences and when + exactly they will complete, the kernel has no visibility. + +Furthermore the kernel has to be able to hold up userspace command submission +for memory management needs, which means we must support indefinite fences being +dependent upon DMA fences. If the kernel also support indefinite fences in the +kernel like a DMA fence, like any of the above proposal would, there is the +potential for deadlocks. + +.. kernel-render:: DOT + :alt: Indefinite Fencing Dependency Cycle + :caption: Indefinite Fencing Dependency Cycle + + digraph "Fencing Cycle" { + node [shape=box bgcolor=grey style=filled] + kernel [label="Kernel DMA Fences"] + userspace [label="userspace controlled fences"] + kernel -> userspace [label="memory management"] + userspace -> kernel [label="Future fence, fence proxy, ..."] + + { rank=same; kernel userspace } + } + +This means that the kernel might accidentally create deadlocks +through memory management dependencies which userspace is unaware of, which +randomly hangs workloads until the timeout kicks in. Workloads, which from +userspace's perspective, do not contain a deadlock. In such a mixed fencing +architecture there is no single entity with knowledge of all dependencies. +Thefore preventing such deadlocks from within the kernel is not possible. + +The only solution to avoid dependencies loops is by not allowing indefinite +fences in the kernel. This means: + +* No future fences, proxy fences or userspace fences imported as DMA fences, + with or without a timeout. + +* No DMA fences that signal end of batchbuffer for command submission where + userspace is allowed to use userspace fencing or long running compute + workloads. This also means no implicit fencing for shared buffers in these + cases. diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c index f3ce49c5a34c..af55b334be2f 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -314,25 +314,6 @@ virtio_gpu_user_framebuffer_create(struct drm_device *dev, return &virtio_gpu_fb->base; } -static void vgdev_atomic_commit_tail(struct drm_atomic_state *state) -{ - struct drm_device *dev = state->dev; - - drm_atomic_helper_commit_modeset_disables(dev, state); - drm_atomic_helper_commit_modeset_enables(dev, state); - drm_atomic_helper_commit_planes(dev, state, 0); - - drm_atomic_helper_fake_vblank(state); - drm_atomic_helper_commit_hw_done(state); - - drm_atomic_helper_wait_for_vblanks(dev, state); - drm_atomic_helper_cleanup_planes(dev, state); -} - -static const struct drm_mode_config_helper_funcs virtio_mode_config_helpers = { - .atomic_commit_tail = vgdev_atomic_commit_tail, -}; - static const struct drm_mode_config_funcs virtio_gpu_mode_funcs = { .fb_create = virtio_gpu_user_framebuffer_create, .atomic_check = drm_atomic_helper_check, @@ -346,7 +327,6 @@ void virtio_gpu_modeset_init(struct virtio_gpu_device *vgdev) drm_mode_config_init(vgdev->ddev); vgdev->ddev->mode_config.quirk_addfb_prefer_host_byte_order = true; vgdev->ddev->mode_config.funcs = &virtio_gpu_mode_funcs; - vgdev->ddev->mode_config.helper_private = &virtio_mode_config_helpers; /* modes will be validated against the framebuffer size */ vgdev->ddev->mode_config.min_width = XRES_MIN; -- 2.27.0 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=-9.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable 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 6B63EC4345B for ; Tue, 7 Jul 2020 20:13:03 +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 44D5E206BE for ; Tue, 7 Jul 2020 20:13:03 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="i4Wbb9D5" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 44D5E206BE Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch 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 15EB06E511; Tue, 7 Jul 2020 20:12:50 +0000 (UTC) Received: from mail-wr1-x442.google.com (mail-wr1-x442.google.com [IPv6:2a00:1450:4864:20::442]) by gabe.freedesktop.org (Postfix) with ESMTPS id DD51E6E46E for ; Tue, 7 Jul 2020 20:12:46 +0000 (UTC) Received: by mail-wr1-x442.google.com with SMTP id z2so24324332wrp.2 for ; Tue, 07 Jul 2020 13:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=i4Wbb9D5vWR7ZvrtLwuYGSomQJsW13PdSzmWff3tCkJHGhMCGQ/HSW5yxVH79pV46L tGbdgX4hG3qDBztTT4nSZm/jRw+NGvkWAW3puj/5aI3ocSr0a9lVgHUIRWXjL5Q4bmcC ymy40QVqyUlP61mFf/kASiA4K6cTSnd36TinU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=RfadvMJJk/j77mJYrUF1OAmtxSMLSTkS+PzlaUJ+ik/FTHdRHxyra1R60yVJhqx31J ut4jd8k5uaAPrz/tD9V6ZYZBMJBAfDGICL3updO1e7nuNyA3qjUJu7KEfLDC4DffXndY egatFvlfUByP/rBU8e2pYy5sCvhMw2GSthDkddVXnx3Is+mlx0F01QRporI/aqOlQy50 OCd58OhAFARGrodCer9CqXt2mkrTL7FP7ps7AIyxTq+xKoVHRMRBbr0eRoSLEazPRWsH niHOEW3vtU3upVI9JAvYliSLmQZJQAHSN2ZxkvgpOkUpk5mlIBuk1+Wr5wg3FU7Wu1fL S3Pw== X-Gm-Message-State: AOAM530coyz0iCxlNXBtQwm+pHhHuBVtmBwpCEt3eqhPJxnFcgTbghye xBWV+pQ29nvB4Rib28LD2bnnERD2Jt4= X-Google-Smtp-Source: ABdhPJw3cwqPDCwSU2yLmYLAHgb/GZDKN9L46jfNXwWcxmwRn2v90lLr2GiOpy9wcdxv9hJWpyyOJQ== X-Received: by 2002:a5d:40cb:: with SMTP id b11mr56759235wrq.263.1594152765245; Tue, 07 Jul 2020 13:12:45 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id q7sm2515262wra.56.2020.07.07.13.12.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jul 2020 13:12:44 -0700 (PDT) From: Daniel Vetter To: DRI Development Subject: [PATCH 03/25] dma-buf.rst: Document why idenfinite fences are a bad idea Date: Tue, 7 Jul 2020 22:12:07 +0200 Message-Id: <20200707201229.472834-4-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200707201229.472834-1-daniel.vetter@ffwll.ch> References: <20200707201229.472834-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 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: =?UTF-8?q?Christian=20K=C3=B6nig?= , linux-rdma@vger.kernel.org, Daniel Vetter , Intel Graphics Development , amd-gfx@lists.freedesktop.org, Chris Wilson , linaro-mm-sig@lists.linaro.org, Steve Pronovost , Jason Ekstrand , Jesse Natalie , Daniel Vetter , Thomas Hellstrom , linux-media@vger.kernel.org, Felix Kuehling , Mika Kuoppala Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Q29tZXMgdXAgZXZlcnkgZmV3IHllYXJzLCBnZXRzIHNvbWV3aGF0IHRlZGlvdXMgdG8gZGlzY3Vz cywgbGV0J3MKd3JpdGUgdGhpcyBkb3duIG9uY2UgYW5kIGZvciBhbGwuCgpXaGF0IEknbSBub3Qg c3VyZSBhYm91dCBpcyB3aGV0aGVyIHRoZSB0ZXh0IHNob3VsZCBiZSBtb3JlIGV4cGxpY2l0IGlu CmZsYXQgb3V0IG1hbmRhdGluZyB0aGUgYW1ka2ZkIGV2aWN0aW9uIGZlbmNlcyBmb3IgbG9uZyBy dW5uaW5nIGNvbXB1dGUKd29ya2xvYWRzIG9yIHdvcmtsb2FkcyB3aGVyZSB1c2Vyc3BhY2UgZmVu Y2luZyBpcyBhbGxvd2VkLgoKdjI6IE5vdyB3aXRoIGRvdCBncmFwaCEKCkNjOiBKZXNzZSBOYXRh bGllIDxqZW5hdGFsaUBtaWNyb3NvZnQuY29tPgpDYzogU3RldmUgUHJvbm92b3N0IDxzcHJvbm92 b0BtaWNyb3NvZnQuY29tPgpDYzogSmFzb24gRWtzdHJhbmQgPGphc29uQGpsZWtzdHJhbmQubmV0 PgpDYzogRmVsaXggS3VlaGxpbmcgPEZlbGl4Lkt1ZWhsaW5nQGFtZC5jb20+CkNjOiBNaWthIEt1 b3BwYWxhIDxtaWthLmt1b3BwYWxhQGludGVsLmNvbT4KQ2M6IFRob21hcyBIZWxsc3Ryb20gPHRo b21hcy5oZWxsc3Ryb21AaW50ZWwuY29tPgpDYzogbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3Jn CkNjOiBsaW5hcm8tbW0tc2lnQGxpc3RzLmxpbmFyby5vcmcKQ2M6IGxpbnV4LXJkbWFAdmdlci5r ZXJuZWwub3JnCkNjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogaW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxz b24uY28udWs+CkNjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXgu aW50ZWwuY29tPgpDYzogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29t PgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4K LS0tCiBEb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QgICAgIHwgNzAgKysrKysr KysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfZGlzcGxh eS5jIHwgMjAgLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCAyMCBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1 Zi5yc3QgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QKaW5kZXggZjhmNmRl Y2RlMzU5Li4wMzdiYTAwNzhiYjQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZHJpdmVyLWFw aS9kbWEtYnVmLnJzdAorKysgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QK QEAgLTE3OCwzICsxNzgsNzMgQEAgRE1BIEZlbmNlIHVBQkkvU3luYyBGaWxlCiAuLiBrZXJuZWwt ZG9jOjogaW5jbHVkZS9saW51eC9zeW5jX2ZpbGUuaAogICAgOmludGVybmFsOgogCitJZGVmaW5p dGUgRE1BIEZlbmNlcworfn5+fn5+fn5+fn5+fn5+fn5+fn4KKworQXQgdmFyaW91cyB0aW1lcyAm ZG1hX2ZlbmNlIHdpdGggYW4gaW5kZWZpbml0ZSB0aW1lIHVudGlsIGRtYV9mZW5jZV93YWl0KCkK K2ZpbmlzaGVzIGhhdmUgYmVlbiBwcm9wb3NlZC4gRXhhbXBsZXMgaW5jbHVkZToKKworKiBGdXR1 cmUgZmVuY2VzLCB1c2VkIGluIEhXQzEgdG8gc2lnbmFsIHdoZW4gYSBidWZmZXIgaXNuJ3QgdXNl ZCBieSB0aGUgZGlzcGxheQorICBhbnkgbG9uZ2VyLCBhbmQgY3JlYXRlZCB3aXRoIHRoZSBzY3Jl ZW4gdXBkYXRlIHRoYXQgbWFrZXMgdGhlIGJ1ZmZlciB2aXNpYmxlLgorICBUaGUgdGltZSB0aGlz IGZlbmNlIGNvbXBsZXRlcyBpcyBlbnRpcmVseSB1bmRlciB1c2Vyc3BhY2UncyBjb250cm9sLgor CisqIFByb3h5IGZlbmNlcywgcHJvcG9zZWQgdG8gaGFuZGxlICZkcm1fc3luY29iaiBmb3Igd2hp Y2ggdGhlIGZlbmNlIGhhcyBub3QgeWV0CisgIGJlZW4gc2V0LiBVc2VkIHRvIGFzeW5jaHJvbm91 c2x5IGRlbGF5IGNvbW1hbmQgc3VibWlzc2lvbi4KKworKiBVc2Vyc3BhY2UgZmVuY2VzIG9yIGdw dSBmdXRleGVzLCBmaW5lLWdyYWluZWQgbG9ja2luZyB3aXRoaW4gYSBjb21tYW5kIGJ1ZmZlcgor ICB0aGF0IHVzZXJzcGFjZSB1c2VzIGZvciBzeW5jaHJvbml6YXRpb24gYWNyb3NzIGVuZ2luZXMg b3Igd2l0aCB0aGUgQ1BVLCB3aGljaAorICBhcmUgdGhlbiBpbXBvcnRlZCBhcyBhIERNQSBmZW5j ZSBmb3IgaW50ZWdyYXRpb24gaW50byBleGlzdGluZyB3aW5zeXMKKyAgcHJvdG9jb2xzLgorCisq IExvbmctcnVubmluZyBjb21wdXRlIGNvbW1hbmQgYnVmZmVycywgd2hpbGUgc3RpbGwgdXNpbmcg dHJhZGl0aW9uYWwgZW5kIG9mCisgIGJhdGNoIERNQSBmZW5jZXMgZm9yIG1lbW9yeSBtYW5hZ2Vt ZW50IGluc3RlYWQgb2YgY29udGV4dCBwcmVlbXB0aW9uIERNQQorICBmZW5jZXMgd2hpY2ggZ2V0 IHJlYXR0YWNoZWQgd2hlbiB0aGUgY29tcHV0ZSBqb2IgaXMgcmVzY2hlZHVsZWQuCisKK0NvbW1v biB0byBhbGwgdGhlc2Ugc2NoZW1lcyBpcyB0aGF0IHVzZXJzcGFjZSBjb250cm9scyB0aGUgZGVw ZW5kZW5jaWVzIG9mIHRoZXNlCitmZW5jZXMgYW5kIGNvbnRyb2xzIHdoZW4gdGhleSBmaXJlLiBN aXhpbmcgaW5kZWZpbml0ZSBmZW5jZXMgd2l0aCBub3JtYWwKK2luLWtlcm5lbCBETUEgZmVuY2Vz IGRvZXMgbm90IHdvcmssIGV2ZW4gd2hlbiBhIGZhbGxiYWNrIHRpbWVvdXQgaXMgaW5jbHVkZWQg dG8KK3Byb3RlY3QgYWdhaW5zdCBtYWxpY2lvdXMgdXNlcnNwYWNlOgorCisqIE9ubHkgdGhlIGtl cm5lbCBrbm93cyBhYm91dCBhbGwgRE1BIGZlbmNlIGRlcGVuZGVuY2llcywgdXNlcnNwYWNlIGlz IG5vdCBhd2FyZQorICBvZiBkZXBlbmRlbmNpZXMgaW5qZWN0ZWQgZHVlIHRvIG1lbW9yeSBtYW5h Z2VtZW50IG9yIHNjaGVkdWxlciBkZWNpc2lvbnMuCisKKyogT25seSB1c2Vyc3BhY2Uga25vd3Mg YWJvdXQgYWxsIGRlcGVuZGVuY2llcyBpbiBpbmRlZmluaXRlIGZlbmNlcyBhbmQgd2hlbgorICBl eGFjdGx5IHRoZXkgd2lsbCBjb21wbGV0ZSwgdGhlIGtlcm5lbCBoYXMgbm8gdmlzaWJpbGl0eS4K KworRnVydGhlcm1vcmUgdGhlIGtlcm5lbCBoYXMgdG8gYmUgYWJsZSB0byBob2xkIHVwIHVzZXJz cGFjZSBjb21tYW5kIHN1Ym1pc3Npb24KK2ZvciBtZW1vcnkgbWFuYWdlbWVudCBuZWVkcywgd2hp Y2ggbWVhbnMgd2UgbXVzdCBzdXBwb3J0IGluZGVmaW5pdGUgZmVuY2VzIGJlaW5nCitkZXBlbmRl bnQgdXBvbiBETUEgZmVuY2VzLiBJZiB0aGUga2VybmVsIGFsc28gc3VwcG9ydCBpbmRlZmluaXRl IGZlbmNlcyBpbiB0aGUKK2tlcm5lbCBsaWtlIGEgRE1BIGZlbmNlLCBsaWtlIGFueSBvZiB0aGUg YWJvdmUgcHJvcG9zYWwgd291bGQsIHRoZXJlIGlzIHRoZQorcG90ZW50aWFsIGZvciBkZWFkbG9j a3MuCisKKy4uIGtlcm5lbC1yZW5kZXI6OiBET1QKKyAgIDphbHQ6IEluZGVmaW5pdGUgRmVuY2lu ZyBEZXBlbmRlbmN5IEN5Y2xlCisgICA6Y2FwdGlvbjogSW5kZWZpbml0ZSBGZW5jaW5nIERlcGVu ZGVuY3kgQ3ljbGUKKworICAgZGlncmFwaCAiRmVuY2luZyBDeWNsZSIgeworICAgICAgbm9kZSBb c2hhcGU9Ym94IGJnY29sb3I9Z3JleSBzdHlsZT1maWxsZWRdCisgICAgICBrZXJuZWwgW2xhYmVs PSJLZXJuZWwgRE1BIEZlbmNlcyJdCisgICAgICB1c2Vyc3BhY2UgW2xhYmVsPSJ1c2Vyc3BhY2Ug Y29udHJvbGxlZCBmZW5jZXMiXQorICAgICAga2VybmVsIC0+IHVzZXJzcGFjZSBbbGFiZWw9Im1l bW9yeSBtYW5hZ2VtZW50Il0KKyAgICAgIHVzZXJzcGFjZSAtPiBrZXJuZWwgW2xhYmVsPSJGdXR1 cmUgZmVuY2UsIGZlbmNlIHByb3h5LCAuLi4iXQorCisgICAgICB7IHJhbms9c2FtZTsga2VybmVs IHVzZXJzcGFjZSB9CisgICB9CisKK1RoaXMgbWVhbnMgdGhhdCB0aGUga2VybmVsIG1pZ2h0IGFj Y2lkZW50YWxseSBjcmVhdGUgZGVhZGxvY2tzCit0aHJvdWdoIG1lbW9yeSBtYW5hZ2VtZW50IGRl cGVuZGVuY2llcyB3aGljaCB1c2Vyc3BhY2UgaXMgdW5hd2FyZSBvZiwgd2hpY2gKK3JhbmRvbWx5 IGhhbmdzIHdvcmtsb2FkcyB1bnRpbCB0aGUgdGltZW91dCBraWNrcyBpbi4gV29ya2xvYWRzLCB3 aGljaCBmcm9tCit1c2Vyc3BhY2UncyBwZXJzcGVjdGl2ZSwgZG8gbm90IGNvbnRhaW4gYSBkZWFk bG9jay4gIEluIHN1Y2ggYSBtaXhlZCBmZW5jaW5nCithcmNoaXRlY3R1cmUgdGhlcmUgaXMgbm8g c2luZ2xlIGVudGl0eSB3aXRoIGtub3dsZWRnZSBvZiBhbGwgZGVwZW5kZW5jaWVzLgorVGhlZm9y ZSBwcmV2ZW50aW5nIHN1Y2ggZGVhZGxvY2tzIGZyb20gd2l0aGluIHRoZSBrZXJuZWwgaXMgbm90 IHBvc3NpYmxlLgorCitUaGUgb25seSBzb2x1dGlvbiB0byBhdm9pZCBkZXBlbmRlbmNpZXMgbG9v cHMgaXMgYnkgbm90IGFsbG93aW5nIGluZGVmaW5pdGUKK2ZlbmNlcyBpbiB0aGUga2VybmVsLiBU aGlzIG1lYW5zOgorCisqIE5vIGZ1dHVyZSBmZW5jZXMsIHByb3h5IGZlbmNlcyBvciB1c2Vyc3Bh Y2UgZmVuY2VzIGltcG9ydGVkIGFzIERNQSBmZW5jZXMsCisgIHdpdGggb3Igd2l0aG91dCBhIHRp bWVvdXQuCisKKyogTm8gRE1BIGZlbmNlcyB0aGF0IHNpZ25hbCBlbmQgb2YgYmF0Y2hidWZmZXIg Zm9yIGNvbW1hbmQgc3VibWlzc2lvbiB3aGVyZQorICB1c2Vyc3BhY2UgaXMgYWxsb3dlZCB0byB1 c2UgdXNlcnNwYWNlIGZlbmNpbmcgb3IgbG9uZyBydW5uaW5nIGNvbXB1dGUKKyAgd29ya2xvYWRz LiBUaGlzIGFsc28gbWVhbnMgbm8gaW1wbGljaXQgZmVuY2luZyBmb3Igc2hhcmVkIGJ1ZmZlcnMg aW4gdGhlc2UKKyAgY2FzZXMuCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3Zp cnRncHVfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXku YwppbmRleCBmM2NlNDljNWEzNGMuLmFmNTViMzM0YmUyZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdmly dGlvL3ZpcnRncHVfZGlzcGxheS5jCkBAIC0zMTQsMjUgKzMxNCw2IEBAIHZpcnRpb19ncHVfdXNl cl9mcmFtZWJ1ZmZlcl9jcmVhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlyZXR1cm4gJnZp cnRpb19ncHVfZmItPmJhc2U7CiB9CiAKLXN0YXRpYyB2b2lkIHZnZGV2X2F0b21pY19jb21taXRf dGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCi17Ci0Jc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IHN0YXRlLT5kZXY7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNl dF9kaXNhYmxlcyhkZXYsIHN0YXRlKTsKLQlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNl dF9lbmFibGVzKGRldiwgc3RhdGUpOwotCWRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9wbGFuZXMo ZGV2LCBzdGF0ZSwgMCk7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9mYWtlX3ZibGFuayhzdGF0ZSk7 Ci0JZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X2h3X2RvbmUoc3RhdGUpOwotCi0JZHJtX2F0b21p Y19oZWxwZXJfd2FpdF9mb3JfdmJsYW5rcyhkZXYsIHN0YXRlKTsKLQlkcm1fYXRvbWljX2hlbHBl cl9jbGVhbnVwX3BsYW5lcyhkZXYsIHN0YXRlKTsKLX0KLQotc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fbW9kZV9jb25maWdfaGVscGVyX2Z1bmNzIHZpcnRpb19tb2RlX2NvbmZpZ19oZWxwZXJzID0g ewotCS5hdG9taWNfY29tbWl0X3RhaWwgPSB2Z2Rldl9hdG9taWNfY29tbWl0X3RhaWwsCi19Owot CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9tb2RlX2NvbmZpZ19mdW5jcyB2aXJ0aW9fZ3B1X21v ZGVfZnVuY3MgPSB7CiAJLmZiX2NyZWF0ZSA9IHZpcnRpb19ncHVfdXNlcl9mcmFtZWJ1ZmZlcl9j cmVhdGUsCiAJLmF0b21pY19jaGVjayA9IGRybV9hdG9taWNfaGVscGVyX2NoZWNrLApAQCAtMzQ2 LDcgKzMyNyw2IEBAIHZvaWQgdmlydGlvX2dwdV9tb2Rlc2V0X2luaXQoc3RydWN0IHZpcnRpb19n cHVfZGV2aWNlICp2Z2RldikKIAlkcm1fbW9kZV9jb25maWdfaW5pdCh2Z2Rldi0+ZGRldik7CiAJ dmdkZXYtPmRkZXYtPm1vZGVfY29uZmlnLnF1aXJrX2FkZGZiX3ByZWZlcl9ob3N0X2J5dGVfb3Jk ZXIgPSB0cnVlOwogCXZnZGV2LT5kZGV2LT5tb2RlX2NvbmZpZy5mdW5jcyA9ICZ2aXJ0aW9fZ3B1 X21vZGVfZnVuY3M7Ci0JdmdkZXYtPmRkZXYtPm1vZGVfY29uZmlnLmhlbHBlcl9wcml2YXRlID0g JnZpcnRpb19tb2RlX2NvbmZpZ19oZWxwZXJzOwogCiAJLyogbW9kZXMgd2lsbCBiZSB2YWxpZGF0 ZWQgYWdhaW5zdCB0aGUgZnJhbWVidWZmZXIgc2l6ZSAqLwogCXZnZGV2LT5kZGV2LT5tb2RlX2Nv bmZpZy5taW5fd2lkdGggPSBYUkVTX01JTjsKLS0gCjIuMjcuMAoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== 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=-9.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable 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 59C2AC4345C for ; Tue, 7 Jul 2020 20:13:02 +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 33A3E206C3 for ; Tue, 7 Jul 2020 20:13:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="i4Wbb9D5" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 33A3E206C3 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6DCE86E514; Tue, 7 Jul 2020 20:12:49 +0000 (UTC) Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) by gabe.freedesktop.org (Postfix) with ESMTPS id A7FE06E39E for ; Tue, 7 Jul 2020 20:12:46 +0000 (UTC) Received: by mail-wr1-x441.google.com with SMTP id o11so46634958wrv.9 for ; Tue, 07 Jul 2020 13:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=i4Wbb9D5vWR7ZvrtLwuYGSomQJsW13PdSzmWff3tCkJHGhMCGQ/HSW5yxVH79pV46L tGbdgX4hG3qDBztTT4nSZm/jRw+NGvkWAW3puj/5aI3ocSr0a9lVgHUIRWXjL5Q4bmcC ymy40QVqyUlP61mFf/kASiA4K6cTSnd36TinU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=iCSVZpiaWazW3qlzaKkVn6O5u6jvJRNCtZfK5PBRJghSOHKpW+nVhye3V7nUEPE1wB 4VV5NdO46Ra+9Ilqevn7DZw9tKbOzY7HYNS9hTJCzCMzqiRp162zcV2MK4x30E+h7s/o tuxGTdaIiQ+rjTCpdxWnALOMxfa1ICegOWBEZe4ZDHFdiiLdbqNA7lqM/Sy/1z4J+c+n lqKR6ooSXLiu1bQHhUC2EzK9jgZPm/S1c2VFPsRKAMVFYFXCM4nM3RN6thz9UBm2PEAw tZ7pupNCsddp1nxejKlrdvyruRMfk4ZqjCnxDeIuDTZtbi8Xw3uqyLKPAtoAkh+96L5S /YEQ== X-Gm-Message-State: AOAM532+qTwVjccp2FDZ5wSeVXKkWCyt8Kdn04HSbM2Oyfk4cwUvzYU9 Psluj6TYh1DV+Af+nqbJYqFKWw== X-Google-Smtp-Source: ABdhPJw3cwqPDCwSU2yLmYLAHgb/GZDKN9L46jfNXwWcxmwRn2v90lLr2GiOpy9wcdxv9hJWpyyOJQ== X-Received: by 2002:a5d:40cb:: with SMTP id b11mr56759235wrq.263.1594152765245; Tue, 07 Jul 2020 13:12:45 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id q7sm2515262wra.56.2020.07.07.13.12.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jul 2020 13:12:44 -0700 (PDT) From: Daniel Vetter To: DRI Development Date: Tue, 7 Jul 2020 22:12:07 +0200 Message-Id: <20200707201229.472834-4-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200707201229.472834-1-daniel.vetter@ffwll.ch> References: <20200707201229.472834-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 03/25] dma-buf.rst: Document why idenfinite fences are a bad idea X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Christian=20K=C3=B6nig?= , linux-rdma@vger.kernel.org, Daniel Vetter , Intel Graphics Development , amd-gfx@lists.freedesktop.org, Chris Wilson , linaro-mm-sig@lists.linaro.org, Steve Pronovost , Jesse Natalie , Daniel Vetter , Thomas Hellstrom , linux-media@vger.kernel.org, Felix Kuehling , Mika Kuoppala Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Q29tZXMgdXAgZXZlcnkgZmV3IHllYXJzLCBnZXRzIHNvbWV3aGF0IHRlZGlvdXMgdG8gZGlzY3Vz cywgbGV0J3MKd3JpdGUgdGhpcyBkb3duIG9uY2UgYW5kIGZvciBhbGwuCgpXaGF0IEknbSBub3Qg c3VyZSBhYm91dCBpcyB3aGV0aGVyIHRoZSB0ZXh0IHNob3VsZCBiZSBtb3JlIGV4cGxpY2l0IGlu CmZsYXQgb3V0IG1hbmRhdGluZyB0aGUgYW1ka2ZkIGV2aWN0aW9uIGZlbmNlcyBmb3IgbG9uZyBy dW5uaW5nIGNvbXB1dGUKd29ya2xvYWRzIG9yIHdvcmtsb2FkcyB3aGVyZSB1c2Vyc3BhY2UgZmVu Y2luZyBpcyBhbGxvd2VkLgoKdjI6IE5vdyB3aXRoIGRvdCBncmFwaCEKCkNjOiBKZXNzZSBOYXRh bGllIDxqZW5hdGFsaUBtaWNyb3NvZnQuY29tPgpDYzogU3RldmUgUHJvbm92b3N0IDxzcHJvbm92 b0BtaWNyb3NvZnQuY29tPgpDYzogSmFzb24gRWtzdHJhbmQgPGphc29uQGpsZWtzdHJhbmQubmV0 PgpDYzogRmVsaXggS3VlaGxpbmcgPEZlbGl4Lkt1ZWhsaW5nQGFtZC5jb20+CkNjOiBNaWthIEt1 b3BwYWxhIDxtaWthLmt1b3BwYWxhQGludGVsLmNvbT4KQ2M6IFRob21hcyBIZWxsc3Ryb20gPHRo b21hcy5oZWxsc3Ryb21AaW50ZWwuY29tPgpDYzogbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3Jn CkNjOiBsaW5hcm8tbW0tc2lnQGxpc3RzLmxpbmFyby5vcmcKQ2M6IGxpbnV4LXJkbWFAdmdlci5r ZXJuZWwub3JnCkNjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogaW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxz b24uY28udWs+CkNjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXgu aW50ZWwuY29tPgpDYzogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29t PgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4K LS0tCiBEb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QgICAgIHwgNzAgKysrKysr KysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfZGlzcGxh eS5jIHwgMjAgLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCAyMCBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1 Zi5yc3QgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QKaW5kZXggZjhmNmRl Y2RlMzU5Li4wMzdiYTAwNzhiYjQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZHJpdmVyLWFw aS9kbWEtYnVmLnJzdAorKysgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QK QEAgLTE3OCwzICsxNzgsNzMgQEAgRE1BIEZlbmNlIHVBQkkvU3luYyBGaWxlCiAuLiBrZXJuZWwt ZG9jOjogaW5jbHVkZS9saW51eC9zeW5jX2ZpbGUuaAogICAgOmludGVybmFsOgogCitJZGVmaW5p dGUgRE1BIEZlbmNlcworfn5+fn5+fn5+fn5+fn5+fn5+fn4KKworQXQgdmFyaW91cyB0aW1lcyAm ZG1hX2ZlbmNlIHdpdGggYW4gaW5kZWZpbml0ZSB0aW1lIHVudGlsIGRtYV9mZW5jZV93YWl0KCkK K2ZpbmlzaGVzIGhhdmUgYmVlbiBwcm9wb3NlZC4gRXhhbXBsZXMgaW5jbHVkZToKKworKiBGdXR1 cmUgZmVuY2VzLCB1c2VkIGluIEhXQzEgdG8gc2lnbmFsIHdoZW4gYSBidWZmZXIgaXNuJ3QgdXNl ZCBieSB0aGUgZGlzcGxheQorICBhbnkgbG9uZ2VyLCBhbmQgY3JlYXRlZCB3aXRoIHRoZSBzY3Jl ZW4gdXBkYXRlIHRoYXQgbWFrZXMgdGhlIGJ1ZmZlciB2aXNpYmxlLgorICBUaGUgdGltZSB0aGlz IGZlbmNlIGNvbXBsZXRlcyBpcyBlbnRpcmVseSB1bmRlciB1c2Vyc3BhY2UncyBjb250cm9sLgor CisqIFByb3h5IGZlbmNlcywgcHJvcG9zZWQgdG8gaGFuZGxlICZkcm1fc3luY29iaiBmb3Igd2hp Y2ggdGhlIGZlbmNlIGhhcyBub3QgeWV0CisgIGJlZW4gc2V0LiBVc2VkIHRvIGFzeW5jaHJvbm91 c2x5IGRlbGF5IGNvbW1hbmQgc3VibWlzc2lvbi4KKworKiBVc2Vyc3BhY2UgZmVuY2VzIG9yIGdw dSBmdXRleGVzLCBmaW5lLWdyYWluZWQgbG9ja2luZyB3aXRoaW4gYSBjb21tYW5kIGJ1ZmZlcgor ICB0aGF0IHVzZXJzcGFjZSB1c2VzIGZvciBzeW5jaHJvbml6YXRpb24gYWNyb3NzIGVuZ2luZXMg b3Igd2l0aCB0aGUgQ1BVLCB3aGljaAorICBhcmUgdGhlbiBpbXBvcnRlZCBhcyBhIERNQSBmZW5j ZSBmb3IgaW50ZWdyYXRpb24gaW50byBleGlzdGluZyB3aW5zeXMKKyAgcHJvdG9jb2xzLgorCisq IExvbmctcnVubmluZyBjb21wdXRlIGNvbW1hbmQgYnVmZmVycywgd2hpbGUgc3RpbGwgdXNpbmcg dHJhZGl0aW9uYWwgZW5kIG9mCisgIGJhdGNoIERNQSBmZW5jZXMgZm9yIG1lbW9yeSBtYW5hZ2Vt ZW50IGluc3RlYWQgb2YgY29udGV4dCBwcmVlbXB0aW9uIERNQQorICBmZW5jZXMgd2hpY2ggZ2V0 IHJlYXR0YWNoZWQgd2hlbiB0aGUgY29tcHV0ZSBqb2IgaXMgcmVzY2hlZHVsZWQuCisKK0NvbW1v biB0byBhbGwgdGhlc2Ugc2NoZW1lcyBpcyB0aGF0IHVzZXJzcGFjZSBjb250cm9scyB0aGUgZGVw ZW5kZW5jaWVzIG9mIHRoZXNlCitmZW5jZXMgYW5kIGNvbnRyb2xzIHdoZW4gdGhleSBmaXJlLiBN aXhpbmcgaW5kZWZpbml0ZSBmZW5jZXMgd2l0aCBub3JtYWwKK2luLWtlcm5lbCBETUEgZmVuY2Vz IGRvZXMgbm90IHdvcmssIGV2ZW4gd2hlbiBhIGZhbGxiYWNrIHRpbWVvdXQgaXMgaW5jbHVkZWQg dG8KK3Byb3RlY3QgYWdhaW5zdCBtYWxpY2lvdXMgdXNlcnNwYWNlOgorCisqIE9ubHkgdGhlIGtl cm5lbCBrbm93cyBhYm91dCBhbGwgRE1BIGZlbmNlIGRlcGVuZGVuY2llcywgdXNlcnNwYWNlIGlz IG5vdCBhd2FyZQorICBvZiBkZXBlbmRlbmNpZXMgaW5qZWN0ZWQgZHVlIHRvIG1lbW9yeSBtYW5h Z2VtZW50IG9yIHNjaGVkdWxlciBkZWNpc2lvbnMuCisKKyogT25seSB1c2Vyc3BhY2Uga25vd3Mg YWJvdXQgYWxsIGRlcGVuZGVuY2llcyBpbiBpbmRlZmluaXRlIGZlbmNlcyBhbmQgd2hlbgorICBl eGFjdGx5IHRoZXkgd2lsbCBjb21wbGV0ZSwgdGhlIGtlcm5lbCBoYXMgbm8gdmlzaWJpbGl0eS4K KworRnVydGhlcm1vcmUgdGhlIGtlcm5lbCBoYXMgdG8gYmUgYWJsZSB0byBob2xkIHVwIHVzZXJz cGFjZSBjb21tYW5kIHN1Ym1pc3Npb24KK2ZvciBtZW1vcnkgbWFuYWdlbWVudCBuZWVkcywgd2hp Y2ggbWVhbnMgd2UgbXVzdCBzdXBwb3J0IGluZGVmaW5pdGUgZmVuY2VzIGJlaW5nCitkZXBlbmRl bnQgdXBvbiBETUEgZmVuY2VzLiBJZiB0aGUga2VybmVsIGFsc28gc3VwcG9ydCBpbmRlZmluaXRl IGZlbmNlcyBpbiB0aGUKK2tlcm5lbCBsaWtlIGEgRE1BIGZlbmNlLCBsaWtlIGFueSBvZiB0aGUg YWJvdmUgcHJvcG9zYWwgd291bGQsIHRoZXJlIGlzIHRoZQorcG90ZW50aWFsIGZvciBkZWFkbG9j a3MuCisKKy4uIGtlcm5lbC1yZW5kZXI6OiBET1QKKyAgIDphbHQ6IEluZGVmaW5pdGUgRmVuY2lu ZyBEZXBlbmRlbmN5IEN5Y2xlCisgICA6Y2FwdGlvbjogSW5kZWZpbml0ZSBGZW5jaW5nIERlcGVu ZGVuY3kgQ3ljbGUKKworICAgZGlncmFwaCAiRmVuY2luZyBDeWNsZSIgeworICAgICAgbm9kZSBb c2hhcGU9Ym94IGJnY29sb3I9Z3JleSBzdHlsZT1maWxsZWRdCisgICAgICBrZXJuZWwgW2xhYmVs PSJLZXJuZWwgRE1BIEZlbmNlcyJdCisgICAgICB1c2Vyc3BhY2UgW2xhYmVsPSJ1c2Vyc3BhY2Ug Y29udHJvbGxlZCBmZW5jZXMiXQorICAgICAga2VybmVsIC0+IHVzZXJzcGFjZSBbbGFiZWw9Im1l bW9yeSBtYW5hZ2VtZW50Il0KKyAgICAgIHVzZXJzcGFjZSAtPiBrZXJuZWwgW2xhYmVsPSJGdXR1 cmUgZmVuY2UsIGZlbmNlIHByb3h5LCAuLi4iXQorCisgICAgICB7IHJhbms9c2FtZTsga2VybmVs IHVzZXJzcGFjZSB9CisgICB9CisKK1RoaXMgbWVhbnMgdGhhdCB0aGUga2VybmVsIG1pZ2h0IGFj Y2lkZW50YWxseSBjcmVhdGUgZGVhZGxvY2tzCit0aHJvdWdoIG1lbW9yeSBtYW5hZ2VtZW50IGRl cGVuZGVuY2llcyB3aGljaCB1c2Vyc3BhY2UgaXMgdW5hd2FyZSBvZiwgd2hpY2gKK3JhbmRvbWx5 IGhhbmdzIHdvcmtsb2FkcyB1bnRpbCB0aGUgdGltZW91dCBraWNrcyBpbi4gV29ya2xvYWRzLCB3 aGljaCBmcm9tCit1c2Vyc3BhY2UncyBwZXJzcGVjdGl2ZSwgZG8gbm90IGNvbnRhaW4gYSBkZWFk bG9jay4gIEluIHN1Y2ggYSBtaXhlZCBmZW5jaW5nCithcmNoaXRlY3R1cmUgdGhlcmUgaXMgbm8g c2luZ2xlIGVudGl0eSB3aXRoIGtub3dsZWRnZSBvZiBhbGwgZGVwZW5kZW5jaWVzLgorVGhlZm9y ZSBwcmV2ZW50aW5nIHN1Y2ggZGVhZGxvY2tzIGZyb20gd2l0aGluIHRoZSBrZXJuZWwgaXMgbm90 IHBvc3NpYmxlLgorCitUaGUgb25seSBzb2x1dGlvbiB0byBhdm9pZCBkZXBlbmRlbmNpZXMgbG9v cHMgaXMgYnkgbm90IGFsbG93aW5nIGluZGVmaW5pdGUKK2ZlbmNlcyBpbiB0aGUga2VybmVsLiBU aGlzIG1lYW5zOgorCisqIE5vIGZ1dHVyZSBmZW5jZXMsIHByb3h5IGZlbmNlcyBvciB1c2Vyc3Bh Y2UgZmVuY2VzIGltcG9ydGVkIGFzIERNQSBmZW5jZXMsCisgIHdpdGggb3Igd2l0aG91dCBhIHRp bWVvdXQuCisKKyogTm8gRE1BIGZlbmNlcyB0aGF0IHNpZ25hbCBlbmQgb2YgYmF0Y2hidWZmZXIg Zm9yIGNvbW1hbmQgc3VibWlzc2lvbiB3aGVyZQorICB1c2Vyc3BhY2UgaXMgYWxsb3dlZCB0byB1 c2UgdXNlcnNwYWNlIGZlbmNpbmcgb3IgbG9uZyBydW5uaW5nIGNvbXB1dGUKKyAgd29ya2xvYWRz LiBUaGlzIGFsc28gbWVhbnMgbm8gaW1wbGljaXQgZmVuY2luZyBmb3Igc2hhcmVkIGJ1ZmZlcnMg aW4gdGhlc2UKKyAgY2FzZXMuCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3Zp cnRncHVfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXku YwppbmRleCBmM2NlNDljNWEzNGMuLmFmNTViMzM0YmUyZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdmly dGlvL3ZpcnRncHVfZGlzcGxheS5jCkBAIC0zMTQsMjUgKzMxNCw2IEBAIHZpcnRpb19ncHVfdXNl cl9mcmFtZWJ1ZmZlcl9jcmVhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlyZXR1cm4gJnZp cnRpb19ncHVfZmItPmJhc2U7CiB9CiAKLXN0YXRpYyB2b2lkIHZnZGV2X2F0b21pY19jb21taXRf dGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCi17Ci0Jc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IHN0YXRlLT5kZXY7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNl dF9kaXNhYmxlcyhkZXYsIHN0YXRlKTsKLQlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNl dF9lbmFibGVzKGRldiwgc3RhdGUpOwotCWRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9wbGFuZXMo ZGV2LCBzdGF0ZSwgMCk7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9mYWtlX3ZibGFuayhzdGF0ZSk7 Ci0JZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X2h3X2RvbmUoc3RhdGUpOwotCi0JZHJtX2F0b21p Y19oZWxwZXJfd2FpdF9mb3JfdmJsYW5rcyhkZXYsIHN0YXRlKTsKLQlkcm1fYXRvbWljX2hlbHBl cl9jbGVhbnVwX3BsYW5lcyhkZXYsIHN0YXRlKTsKLX0KLQotc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fbW9kZV9jb25maWdfaGVscGVyX2Z1bmNzIHZpcnRpb19tb2RlX2NvbmZpZ19oZWxwZXJzID0g ewotCS5hdG9taWNfY29tbWl0X3RhaWwgPSB2Z2Rldl9hdG9taWNfY29tbWl0X3RhaWwsCi19Owot CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9tb2RlX2NvbmZpZ19mdW5jcyB2aXJ0aW9fZ3B1X21v ZGVfZnVuY3MgPSB7CiAJLmZiX2NyZWF0ZSA9IHZpcnRpb19ncHVfdXNlcl9mcmFtZWJ1ZmZlcl9j cmVhdGUsCiAJLmF0b21pY19jaGVjayA9IGRybV9hdG9taWNfaGVscGVyX2NoZWNrLApAQCAtMzQ2 LDcgKzMyNyw2IEBAIHZvaWQgdmlydGlvX2dwdV9tb2Rlc2V0X2luaXQoc3RydWN0IHZpcnRpb19n cHVfZGV2aWNlICp2Z2RldikKIAlkcm1fbW9kZV9jb25maWdfaW5pdCh2Z2Rldi0+ZGRldik7CiAJ dmdkZXYtPmRkZXYtPm1vZGVfY29uZmlnLnF1aXJrX2FkZGZiX3ByZWZlcl9ob3N0X2J5dGVfb3Jk ZXIgPSB0cnVlOwogCXZnZGV2LT5kZGV2LT5tb2RlX2NvbmZpZy5mdW5jcyA9ICZ2aXJ0aW9fZ3B1 X21vZGVfZnVuY3M7Ci0JdmdkZXYtPmRkZXYtPm1vZGVfY29uZmlnLmhlbHBlcl9wcml2YXRlID0g JnZpcnRpb19tb2RlX2NvbmZpZ19oZWxwZXJzOwogCiAJLyogbW9kZXMgd2lsbCBiZSB2YWxpZGF0 ZWQgYWdhaW5zdCB0aGUgZnJhbWVidWZmZXIgc2l6ZSAqLwogCXZnZGV2LT5kZGV2LT5tb2RlX2Nv bmZpZy5taW5fd2lkdGggPSBYUkVTX01JTjsKLS0gCjIuMjcuMAoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg== 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=-9.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham 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 1DBBFC43446 for ; Tue, 7 Jul 2020 20:12:59 +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 EAC24206BE for ; Tue, 7 Jul 2020 20:12:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=ffwll.ch header.i=@ffwll.ch header.b="i4Wbb9D5" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EAC24206BE Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ffwll.ch Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=amd-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4554A6E46E; Tue, 7 Jul 2020 20:12:48 +0000 (UTC) Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by gabe.freedesktop.org (Postfix) with ESMTPS id AA9D96E3F3 for ; Tue, 7 Jul 2020 20:12:46 +0000 (UTC) Received: by mail-wr1-x444.google.com with SMTP id f18so38531922wrs.0 for ; Tue, 07 Jul 2020 13:12:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=i4Wbb9D5vWR7ZvrtLwuYGSomQJsW13PdSzmWff3tCkJHGhMCGQ/HSW5yxVH79pV46L tGbdgX4hG3qDBztTT4nSZm/jRw+NGvkWAW3puj/5aI3ocSr0a9lVgHUIRWXjL5Q4bmcC ymy40QVqyUlP61mFf/kASiA4K6cTSnd36TinU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=UGBGWvdQ7uikeFllACLNz+UTtRSJGowmgwCHMdSNNLo=; b=Y9++FzodqbXojP9pixPdooYivHFfRMnSh2t1Nt04hBd4DmyXMxawfeQp23KFQb6TsN vSeBCN7JcQZbaMsKNGoK8/rbdEDoa1pxh0TJD/m5AJsbk4db2/5TAYDtvaPEulhelqsj FDxAKqZQlv+62eMAaHtcUjzYw9/5T7ARjn3fSS0zuEN+mOAfzmhdnaf6hEbtA5OwA0HR 7PEFGzG6sbPVV+2ayFmnnPijBDM+MS6xeBfjgwQVMBCqojiv4jPVGPgFMrTiEu2h0FLS jOG1+8+mXvFcvQ1rBgabTt4XI0l0P+2HTrCEHsQwQ1U4AcPv9+xanP1cWtzkhSUma7HT hh2A== X-Gm-Message-State: AOAM5338kSh4psSXcTBV77oW/SQfonCCdiTdqf3LorbqGKt0bAo3tPpb fGCtC7ff1bJbpcN7TxWQNKFAdw== X-Google-Smtp-Source: ABdhPJw3cwqPDCwSU2yLmYLAHgb/GZDKN9L46jfNXwWcxmwRn2v90lLr2GiOpy9wcdxv9hJWpyyOJQ== X-Received: by 2002:a5d:40cb:: with SMTP id b11mr56759235wrq.263.1594152765245; Tue, 07 Jul 2020 13:12:45 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id q7sm2515262wra.56.2020.07.07.13.12.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jul 2020 13:12:44 -0700 (PDT) From: Daniel Vetter To: DRI Development Subject: [PATCH 03/25] dma-buf.rst: Document why idenfinite fences are a bad idea Date: Tue, 7 Jul 2020 22:12:07 +0200 Message-Id: <20200707201229.472834-4-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200707201229.472834-1-daniel.vetter@ffwll.ch> References: <20200707201229.472834-1-daniel.vetter@ffwll.ch> MIME-Version: 1.0 X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Christian=20K=C3=B6nig?= , linux-rdma@vger.kernel.org, Daniel Vetter , Intel Graphics Development , Maarten Lankhorst , amd-gfx@lists.freedesktop.org, Chris Wilson , linaro-mm-sig@lists.linaro.org, Steve Pronovost , Jason Ekstrand , Jesse Natalie , Daniel Vetter , Thomas Hellstrom , linux-media@vger.kernel.org, Felix Kuehling , Mika Kuoppala Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" Q29tZXMgdXAgZXZlcnkgZmV3IHllYXJzLCBnZXRzIHNvbWV3aGF0IHRlZGlvdXMgdG8gZGlzY3Vz cywgbGV0J3MKd3JpdGUgdGhpcyBkb3duIG9uY2UgYW5kIGZvciBhbGwuCgpXaGF0IEknbSBub3Qg c3VyZSBhYm91dCBpcyB3aGV0aGVyIHRoZSB0ZXh0IHNob3VsZCBiZSBtb3JlIGV4cGxpY2l0IGlu CmZsYXQgb3V0IG1hbmRhdGluZyB0aGUgYW1ka2ZkIGV2aWN0aW9uIGZlbmNlcyBmb3IgbG9uZyBy dW5uaW5nIGNvbXB1dGUKd29ya2xvYWRzIG9yIHdvcmtsb2FkcyB3aGVyZSB1c2Vyc3BhY2UgZmVu Y2luZyBpcyBhbGxvd2VkLgoKdjI6IE5vdyB3aXRoIGRvdCBncmFwaCEKCkNjOiBKZXNzZSBOYXRh bGllIDxqZW5hdGFsaUBtaWNyb3NvZnQuY29tPgpDYzogU3RldmUgUHJvbm92b3N0IDxzcHJvbm92 b0BtaWNyb3NvZnQuY29tPgpDYzogSmFzb24gRWtzdHJhbmQgPGphc29uQGpsZWtzdHJhbmQubmV0 PgpDYzogRmVsaXggS3VlaGxpbmcgPEZlbGl4Lkt1ZWhsaW5nQGFtZC5jb20+CkNjOiBNaWthIEt1 b3BwYWxhIDxtaWthLmt1b3BwYWxhQGludGVsLmNvbT4KQ2M6IFRob21hcyBIZWxsc3Ryb20gPHRo b21hcy5oZWxsc3Ryb21AaW50ZWwuY29tPgpDYzogbGludXgtbWVkaWFAdmdlci5rZXJuZWwub3Jn CkNjOiBsaW5hcm8tbW0tc2lnQGxpc3RzLmxpbmFyby5vcmcKQ2M6IGxpbnV4LXJkbWFAdmdlci5r ZXJuZWwub3JnCkNjOiBhbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogaW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxz b24uY28udWs+CkNjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXgu aW50ZWwuY29tPgpDYzogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29t PgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4K LS0tCiBEb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QgICAgIHwgNzAgKysrKysr KysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfZGlzcGxh eS5jIHwgMjAgLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA3MCBpbnNlcnRpb25zKCspLCAyMCBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1 Zi5yc3QgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QKaW5kZXggZjhmNmRl Y2RlMzU5Li4wMzdiYTAwNzhiYjQgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZHJpdmVyLWFw aS9kbWEtYnVmLnJzdAorKysgYi9Eb2N1bWVudGF0aW9uL2RyaXZlci1hcGkvZG1hLWJ1Zi5yc3QK QEAgLTE3OCwzICsxNzgsNzMgQEAgRE1BIEZlbmNlIHVBQkkvU3luYyBGaWxlCiAuLiBrZXJuZWwt ZG9jOjogaW5jbHVkZS9saW51eC9zeW5jX2ZpbGUuaAogICAgOmludGVybmFsOgogCitJZGVmaW5p dGUgRE1BIEZlbmNlcworfn5+fn5+fn5+fn5+fn5+fn5+fn4KKworQXQgdmFyaW91cyB0aW1lcyAm ZG1hX2ZlbmNlIHdpdGggYW4gaW5kZWZpbml0ZSB0aW1lIHVudGlsIGRtYV9mZW5jZV93YWl0KCkK K2ZpbmlzaGVzIGhhdmUgYmVlbiBwcm9wb3NlZC4gRXhhbXBsZXMgaW5jbHVkZToKKworKiBGdXR1 cmUgZmVuY2VzLCB1c2VkIGluIEhXQzEgdG8gc2lnbmFsIHdoZW4gYSBidWZmZXIgaXNuJ3QgdXNl ZCBieSB0aGUgZGlzcGxheQorICBhbnkgbG9uZ2VyLCBhbmQgY3JlYXRlZCB3aXRoIHRoZSBzY3Jl ZW4gdXBkYXRlIHRoYXQgbWFrZXMgdGhlIGJ1ZmZlciB2aXNpYmxlLgorICBUaGUgdGltZSB0aGlz IGZlbmNlIGNvbXBsZXRlcyBpcyBlbnRpcmVseSB1bmRlciB1c2Vyc3BhY2UncyBjb250cm9sLgor CisqIFByb3h5IGZlbmNlcywgcHJvcG9zZWQgdG8gaGFuZGxlICZkcm1fc3luY29iaiBmb3Igd2hp Y2ggdGhlIGZlbmNlIGhhcyBub3QgeWV0CisgIGJlZW4gc2V0LiBVc2VkIHRvIGFzeW5jaHJvbm91 c2x5IGRlbGF5IGNvbW1hbmQgc3VibWlzc2lvbi4KKworKiBVc2Vyc3BhY2UgZmVuY2VzIG9yIGdw dSBmdXRleGVzLCBmaW5lLWdyYWluZWQgbG9ja2luZyB3aXRoaW4gYSBjb21tYW5kIGJ1ZmZlcgor ICB0aGF0IHVzZXJzcGFjZSB1c2VzIGZvciBzeW5jaHJvbml6YXRpb24gYWNyb3NzIGVuZ2luZXMg b3Igd2l0aCB0aGUgQ1BVLCB3aGljaAorICBhcmUgdGhlbiBpbXBvcnRlZCBhcyBhIERNQSBmZW5j ZSBmb3IgaW50ZWdyYXRpb24gaW50byBleGlzdGluZyB3aW5zeXMKKyAgcHJvdG9jb2xzLgorCisq IExvbmctcnVubmluZyBjb21wdXRlIGNvbW1hbmQgYnVmZmVycywgd2hpbGUgc3RpbGwgdXNpbmcg dHJhZGl0aW9uYWwgZW5kIG9mCisgIGJhdGNoIERNQSBmZW5jZXMgZm9yIG1lbW9yeSBtYW5hZ2Vt ZW50IGluc3RlYWQgb2YgY29udGV4dCBwcmVlbXB0aW9uIERNQQorICBmZW5jZXMgd2hpY2ggZ2V0 IHJlYXR0YWNoZWQgd2hlbiB0aGUgY29tcHV0ZSBqb2IgaXMgcmVzY2hlZHVsZWQuCisKK0NvbW1v biB0byBhbGwgdGhlc2Ugc2NoZW1lcyBpcyB0aGF0IHVzZXJzcGFjZSBjb250cm9scyB0aGUgZGVw ZW5kZW5jaWVzIG9mIHRoZXNlCitmZW5jZXMgYW5kIGNvbnRyb2xzIHdoZW4gdGhleSBmaXJlLiBN aXhpbmcgaW5kZWZpbml0ZSBmZW5jZXMgd2l0aCBub3JtYWwKK2luLWtlcm5lbCBETUEgZmVuY2Vz IGRvZXMgbm90IHdvcmssIGV2ZW4gd2hlbiBhIGZhbGxiYWNrIHRpbWVvdXQgaXMgaW5jbHVkZWQg dG8KK3Byb3RlY3QgYWdhaW5zdCBtYWxpY2lvdXMgdXNlcnNwYWNlOgorCisqIE9ubHkgdGhlIGtl cm5lbCBrbm93cyBhYm91dCBhbGwgRE1BIGZlbmNlIGRlcGVuZGVuY2llcywgdXNlcnNwYWNlIGlz IG5vdCBhd2FyZQorICBvZiBkZXBlbmRlbmNpZXMgaW5qZWN0ZWQgZHVlIHRvIG1lbW9yeSBtYW5h Z2VtZW50IG9yIHNjaGVkdWxlciBkZWNpc2lvbnMuCisKKyogT25seSB1c2Vyc3BhY2Uga25vd3Mg YWJvdXQgYWxsIGRlcGVuZGVuY2llcyBpbiBpbmRlZmluaXRlIGZlbmNlcyBhbmQgd2hlbgorICBl eGFjdGx5IHRoZXkgd2lsbCBjb21wbGV0ZSwgdGhlIGtlcm5lbCBoYXMgbm8gdmlzaWJpbGl0eS4K KworRnVydGhlcm1vcmUgdGhlIGtlcm5lbCBoYXMgdG8gYmUgYWJsZSB0byBob2xkIHVwIHVzZXJz cGFjZSBjb21tYW5kIHN1Ym1pc3Npb24KK2ZvciBtZW1vcnkgbWFuYWdlbWVudCBuZWVkcywgd2hp Y2ggbWVhbnMgd2UgbXVzdCBzdXBwb3J0IGluZGVmaW5pdGUgZmVuY2VzIGJlaW5nCitkZXBlbmRl bnQgdXBvbiBETUEgZmVuY2VzLiBJZiB0aGUga2VybmVsIGFsc28gc3VwcG9ydCBpbmRlZmluaXRl IGZlbmNlcyBpbiB0aGUKK2tlcm5lbCBsaWtlIGEgRE1BIGZlbmNlLCBsaWtlIGFueSBvZiB0aGUg YWJvdmUgcHJvcG9zYWwgd291bGQsIHRoZXJlIGlzIHRoZQorcG90ZW50aWFsIGZvciBkZWFkbG9j a3MuCisKKy4uIGtlcm5lbC1yZW5kZXI6OiBET1QKKyAgIDphbHQ6IEluZGVmaW5pdGUgRmVuY2lu ZyBEZXBlbmRlbmN5IEN5Y2xlCisgICA6Y2FwdGlvbjogSW5kZWZpbml0ZSBGZW5jaW5nIERlcGVu ZGVuY3kgQ3ljbGUKKworICAgZGlncmFwaCAiRmVuY2luZyBDeWNsZSIgeworICAgICAgbm9kZSBb c2hhcGU9Ym94IGJnY29sb3I9Z3JleSBzdHlsZT1maWxsZWRdCisgICAgICBrZXJuZWwgW2xhYmVs PSJLZXJuZWwgRE1BIEZlbmNlcyJdCisgICAgICB1c2Vyc3BhY2UgW2xhYmVsPSJ1c2Vyc3BhY2Ug Y29udHJvbGxlZCBmZW5jZXMiXQorICAgICAga2VybmVsIC0+IHVzZXJzcGFjZSBbbGFiZWw9Im1l bW9yeSBtYW5hZ2VtZW50Il0KKyAgICAgIHVzZXJzcGFjZSAtPiBrZXJuZWwgW2xhYmVsPSJGdXR1 cmUgZmVuY2UsIGZlbmNlIHByb3h5LCAuLi4iXQorCisgICAgICB7IHJhbms9c2FtZTsga2VybmVs IHVzZXJzcGFjZSB9CisgICB9CisKK1RoaXMgbWVhbnMgdGhhdCB0aGUga2VybmVsIG1pZ2h0IGFj Y2lkZW50YWxseSBjcmVhdGUgZGVhZGxvY2tzCit0aHJvdWdoIG1lbW9yeSBtYW5hZ2VtZW50IGRl cGVuZGVuY2llcyB3aGljaCB1c2Vyc3BhY2UgaXMgdW5hd2FyZSBvZiwgd2hpY2gKK3JhbmRvbWx5 IGhhbmdzIHdvcmtsb2FkcyB1bnRpbCB0aGUgdGltZW91dCBraWNrcyBpbi4gV29ya2xvYWRzLCB3 aGljaCBmcm9tCit1c2Vyc3BhY2UncyBwZXJzcGVjdGl2ZSwgZG8gbm90IGNvbnRhaW4gYSBkZWFk bG9jay4gIEluIHN1Y2ggYSBtaXhlZCBmZW5jaW5nCithcmNoaXRlY3R1cmUgdGhlcmUgaXMgbm8g c2luZ2xlIGVudGl0eSB3aXRoIGtub3dsZWRnZSBvZiBhbGwgZGVwZW5kZW5jaWVzLgorVGhlZm9y ZSBwcmV2ZW50aW5nIHN1Y2ggZGVhZGxvY2tzIGZyb20gd2l0aGluIHRoZSBrZXJuZWwgaXMgbm90 IHBvc3NpYmxlLgorCitUaGUgb25seSBzb2x1dGlvbiB0byBhdm9pZCBkZXBlbmRlbmNpZXMgbG9v cHMgaXMgYnkgbm90IGFsbG93aW5nIGluZGVmaW5pdGUKK2ZlbmNlcyBpbiB0aGUga2VybmVsLiBU aGlzIG1lYW5zOgorCisqIE5vIGZ1dHVyZSBmZW5jZXMsIHByb3h5IGZlbmNlcyBvciB1c2Vyc3Bh Y2UgZmVuY2VzIGltcG9ydGVkIGFzIERNQSBmZW5jZXMsCisgIHdpdGggb3Igd2l0aG91dCBhIHRp bWVvdXQuCisKKyogTm8gRE1BIGZlbmNlcyB0aGF0IHNpZ25hbCBlbmQgb2YgYmF0Y2hidWZmZXIg Zm9yIGNvbW1hbmQgc3VibWlzc2lvbiB3aGVyZQorICB1c2Vyc3BhY2UgaXMgYWxsb3dlZCB0byB1 c2UgdXNlcnNwYWNlIGZlbmNpbmcgb3IgbG9uZyBydW5uaW5nIGNvbXB1dGUKKyAgd29ya2xvYWRz LiBUaGlzIGFsc28gbWVhbnMgbm8gaW1wbGljaXQgZmVuY2luZyBmb3Igc2hhcmVkIGJ1ZmZlcnMg aW4gdGhlc2UKKyAgY2FzZXMuCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmlydGlvL3Zp cnRncHVfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXku YwppbmRleCBmM2NlNDljNWEzNGMuLmFmNTViMzM0YmUyZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdmly dGlvL3ZpcnRncHVfZGlzcGxheS5jCkBAIC0zMTQsMjUgKzMxNCw2IEBAIHZpcnRpb19ncHVfdXNl cl9mcmFtZWJ1ZmZlcl9jcmVhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAlyZXR1cm4gJnZp cnRpb19ncHVfZmItPmJhc2U7CiB9CiAKLXN0YXRpYyB2b2lkIHZnZGV2X2F0b21pY19jb21taXRf dGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCi17Ci0Jc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IHN0YXRlLT5kZXY7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNl dF9kaXNhYmxlcyhkZXYsIHN0YXRlKTsKLQlkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNl dF9lbmFibGVzKGRldiwgc3RhdGUpOwotCWRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9wbGFuZXMo ZGV2LCBzdGF0ZSwgMCk7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9mYWtlX3ZibGFuayhzdGF0ZSk7 Ci0JZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X2h3X2RvbmUoc3RhdGUpOwotCi0JZHJtX2F0b21p Y19oZWxwZXJfd2FpdF9mb3JfdmJsYW5rcyhkZXYsIHN0YXRlKTsKLQlkcm1fYXRvbWljX2hlbHBl cl9jbGVhbnVwX3BsYW5lcyhkZXYsIHN0YXRlKTsKLX0KLQotc3RhdGljIGNvbnN0IHN0cnVjdCBk cm1fbW9kZV9jb25maWdfaGVscGVyX2Z1bmNzIHZpcnRpb19tb2RlX2NvbmZpZ19oZWxwZXJzID0g ewotCS5hdG9taWNfY29tbWl0X3RhaWwgPSB2Z2Rldl9hdG9taWNfY29tbWl0X3RhaWwsCi19Owot CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9tb2RlX2NvbmZpZ19mdW5jcyB2aXJ0aW9fZ3B1X21v ZGVfZnVuY3MgPSB7CiAJLmZiX2NyZWF0ZSA9IHZpcnRpb19ncHVfdXNlcl9mcmFtZWJ1ZmZlcl9j cmVhdGUsCiAJLmF0b21pY19jaGVjayA9IGRybV9hdG9taWNfaGVscGVyX2NoZWNrLApAQCAtMzQ2 LDcgKzMyNyw2IEBAIHZvaWQgdmlydGlvX2dwdV9tb2Rlc2V0X2luaXQoc3RydWN0IHZpcnRpb19n cHVfZGV2aWNlICp2Z2RldikKIAlkcm1fbW9kZV9jb25maWdfaW5pdCh2Z2Rldi0+ZGRldik7CiAJ dmdkZXYtPmRkZXYtPm1vZGVfY29uZmlnLnF1aXJrX2FkZGZiX3ByZWZlcl9ob3N0X2J5dGVfb3Jk ZXIgPSB0cnVlOwogCXZnZGV2LT5kZGV2LT5tb2RlX2NvbmZpZy5mdW5jcyA9ICZ2aXJ0aW9fZ3B1 X21vZGVfZnVuY3M7Ci0JdmdkZXYtPmRkZXYtPm1vZGVfY29uZmlnLmhlbHBlcl9wcml2YXRlID0g JnZpcnRpb19tb2RlX2NvbmZpZ19oZWxwZXJzOwogCiAJLyogbW9kZXMgd2lsbCBiZSB2YWxpZGF0 ZWQgYWdhaW5zdCB0aGUgZnJhbWVidWZmZXIgc2l6ZSAqLwogCXZnZGV2LT5kZGV2LT5tb2RlX2Nv bmZpZy5taW5fd2lkdGggPSBYUkVTX01JTjsKLS0gCjIuMjcuMAoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==