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=-14.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,HK_RANDOM_FROM,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 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 54671C4707F for ; Thu, 27 May 2021 15:01:32 +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 18EAA6128D for ; Thu, 27 May 2021 15:01:32 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 18EAA6128D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com 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 4EC6B6F3FD; Thu, 27 May 2021 15:01:26 +0000 (UTC) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 83A966E7DD; Thu, 27 May 2021 15:01:24 +0000 (UTC) IronPort-SDR: QhwtIUGWJK6VH+SmWp8oQHQUaAiFQi1Z8J8KlKl7+K6gwJpKyEcQxEUKeoddH8w63XOStof59+ xpfDxS+3DiKQ== X-IronPort-AV: E=McAfee;i="6200,9189,9996"; a="266641664" X-IronPort-AV: E=Sophos;i="5.82,334,1613462400"; d="scan'208";a="266641664" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 May 2021 08:01:13 -0700 IronPort-SDR: VaMqt0T4ci2OaEAWwgOHGv9Wte7r1lt1cswe3MBKnddHYjQqCO8tVe69gXJfZGElFPsm9iB3Ma Gr/OKYKIgCDw== X-IronPort-AV: E=Sophos;i="5.82,334,1613462400"; d="scan'208";a="547941040" Received: from amoses-mobl1.ger.corp.intel.com (HELO [10.213.211.53]) ([10.213.211.53]) by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 May 2021 08:01:10 -0700 To: Matthew Brost , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org References: <20210526233357.9165-1-matthew.brost@intel.com> <20210526233357.9165-3-matthew.brost@intel.com> From: Tvrtko Ursulin Organization: Intel Corporation UK Plc Message-ID: <5d46472d-3dc2-0484-5a1f-4b36eecc11f6@linux.intel.com> Date: Thu, 27 May 2021 16:01:08 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 MIME-Version: 1.0 In-Reply-To: <20210526233357.9165-3-matthew.brost@intel.com> Content-Language: en-US Subject: Re: [Intel-gfx] [RFC PATCH 2/2] drm/doc/rfc: i915 new parallel submission uAPI plan 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: jason.ekstrand@intel.com, mesa-dev@lists.freedesktop.org, christian.koenig@amd.com, daniel.vetter@intel.com, carl.zhang@intel.com Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Ck9uIDI3LzA1LzIwMjEgMDA6MzMsIE1hdHRoZXcgQnJvc3Qgd3JvdGU6Cj4gQWRkIGVudHJ5IGZv ciBpOTE1IG5ldyBwYXJhbGxlbCBzdWJtaXNzaW9uIHVBUEkgcGxhbi4KPiAKPiB2MjoKPiAgIChE YW5pZWwgVmV0dGVyKToKPiAgICAtIEV4cGFuZCBsb2dpY2FsIG9yZGVyIGV4cGxhaW5hdGlvbgo+ ICAgIC0gQWRkIGR1bW15IGhlYWRlcgo+ICAgIC0gT25seSBhbGxvdyBOIEJCcyBpbiBleGVjYnVm IElPQ1RMCj4gICAgLSBDb25maWd1cmUgcGFyYWxsZWwgc3VibWlzc2lvbiBwZXIgc2xvdCBub3Qg cGVyIGdlbSBjb250ZXh0Cj4gdjM6Cj4gICAoTWFyY2luIMWabHVzYXJ6KToKPiAgICAtIExvdCdz IG9mIHR5cG9zIC8gYmFkIGVuZ2xpc2ggZml4ZWQKPiAgIChUdnJ0a28gVXJzdWxpbik6Cj4gICAg LSBDb25zaXN0ZW50IHBzZXVkbyBjb2RlLCBjbGVhbiB1cCB3b3JkaW5nIGluIGRlc2NyaXB0aW9u cwo+IAo+IENjOiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+IENj OiBUb255IFllIDx0b255LnllQGludGVsLmNvbT4KPiBDQzogQ2FybCBaaGFuZyA8Y2FybC56aGFu Z0BpbnRlbC5jb20+Cj4gQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAaW50ZWwuY29t Pgo+IENjOiBKYXNvbiBFa3N0cmFuZCA8amFzb25Aamxla3N0cmFuZC5uZXQ+Cj4gU2lnbmVkLW9m Zi1ieTogTWF0dGhldyBCcm9zdCA8bWF0dGhldy5icm9zdEBpbnRlbC5jb20+Cj4gLS0tCj4gICBE b2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9wYXJhbGxlbF9leGVjYnVmLmggfCAxNDUgKysrKysr KysrKysrKysrKysrCj4gICBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9zY2hlZHVsZXIucnN0 ICAgICAgfCAgNTUgKysrKysrLQo+ICAgMiBmaWxlcyBjaGFuZ2VkLCAxOTggaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0aW9uL2dw dS9yZmMvaTkxNV9wYXJhbGxlbF9leGVjYnVmLmgKPiAKPiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRh dGlvbi9ncHUvcmZjL2k5MTVfcGFyYWxsZWxfZXhlY2J1Zi5oIGIvRG9jdW1lbnRhdGlvbi9ncHUv cmZjL2k5MTVfcGFyYWxsZWxfZXhlY2J1Zi5oCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRl eCAwMDAwMDAwMDAwMDAuLjIwZGUyMDZlM2FiNAo+IC0tLSAvZGV2L251bGwKPiArKysgYi9Eb2N1 bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9wYXJhbGxlbF9leGVjYnVmLmgKPiBAQCAtMCwwICsxLDE0 NSBAQAo+ICsjZGVmaW5lIEk5MTVfQ09OVEVYVF9FTkdJTkVTX0VYVF9QQVJBTExFTF9TVUJNSVQg MiAvKiBzZWUgaTkxNV9jb250ZXh0X2VuZ2luZXNfcGFyYWxsZWxfc3VibWl0ICovCj4gKwo+ICsv Kgo+ICsgKiBpOTE1X2NvbnRleHRfZW5naW5lc19wYXJhbGxlbF9zdWJtaXQ6Cj4gKyAqCj4gKyAq IFNldHVwIGEgc2xvdCBpbiB0aGUgY29udGV4dCBlbmdpbmUgbWFwIHRvIGFsbG93IG11bHRpcGxl IEJCcyB0byBiZSBzdWJtaXR0ZWQKPiArICogaW4gYSBzaW5nbGUgZXhlY2J1ZiBJT0NUTC4gVGhv c2UgQkJzIHdpbGwgdGhlbiBiZSBzY2hlZHVsZWQgdG8gcnVuIG9uIHRoZSBHUFUKPiArICogaW4g cGFyYWxsZWwuIE11bHRpcGxlIGhhcmR3YXJlIGNvbnRleHRzIGFyZSBjcmVhdGVkIGludGVybmFs bHkgaW4gdGhlIGk5MTUKPiArICogcnVuIHRoZXNlIEJCcy4gT25jZSBhIHNsb3QgaXMgY29uZmln dXJlZCBmb3IgTiBCQnMgb25seSBOIEJCcyBjYW4gYmUKPiArICogc3VibWl0dGVkIGluIGVhY2gg ZXhlY2J1ZiBJT0NUTCBhbmQgdGhpcyBpcyBpbXBsaWNpdCBiZWhhdmlvciBlLmcuIFRoZSB1c2Vy CgoiaS5lLiB0aGUgdXNlciIgSSB0aGluay4KCj4gKyAqIGRvZXNuJ3QgdGVsbCB0aGUgZXhlY2J1 ZiBJT0NUTCB0aGVyZSBhcmUgTiBCQnMsIHRoZSBleGVjYnVmIElPQ1RMIGtub3cgaG93Cgprbm93 cwoKPiArICogbWFueSBCQnMgdGhlcmUgYXJlIGJhc2VkIG9uIHRoZSBzbG90cyBjb25maWd1cmF0 aW9uLiBUaGUgTiBCQnMgYXJlIHRoZSBsYXN0IE4KCiJzbG90J3MiID8gT3IgbWF5YmUgYmV0dGVy IGZ1bGx5IHF1YWxpZmllZCBhcyAiZW5naW5lIG1hcCBzbG90Ij8KCj4gKyAqIGJ1ZmZlciBvYmpl Y3RzIGZvciBmaXJzdCBOIGlmIEk5MTVfRVhFQ19CQVRDSF9GSVJTVCBpcyBzZXQuCgpzL2Zvci9v ci8KCj4gKyAqCj4gKyAqIFRoZXJlIGFyZSB0d28gY3VycmVudGx5IGRlZmluZWQgd2F5cyB0byBj b250cm9sIHRoZSBwbGFjZW1lbnQgb2YgdGhlCj4gKyAqIGhhcmR3YXJlIGNvbnRleHRzIG9uIHBo eXNpY2FsIGVuZ2luZXM6IGRlZmF1bHQgYmVoYXZpb3IgKG5vIGZsYWdzKSBhbmQKPiArICogSTkx NV9QQVJBTExFTF9JTVBMSUNJVF9CT05EUyAoYSBmbGFnKS4gTW9yZSBmbGFncyBtYXkgYmUgYWRk ZWQgdGhlIGluIHRoZQo+ICsgKiBmdXR1cmUgYXMgbmV3IGhhcmR3YXJlIC8gdXNlIGNhc2VzIGFy aXNlLiBEZXRhaWxzIG9mIGhvdyB0byB1c2UgdGhpcwo+ICsgKiBpbnRlcmZhY2UgYWJvdmUgdGhl IGZsYWdzIGZpZWxkIGluIHRoaXMgc3RydWN0dXJlLgoKImFyZSBhYm92ZSIsICJjYW4gYmUgZm91 bmQgYWJvdmUiID8KCj4gKyAqCj4gKyAqIFJldHVybnMgLUVJTlZBTCBpZiBoYXJkd2FyZSBjb250 ZXh0IHBsYWNlbWVudCBjb25maWd1cmF0aW9uIGlzIGludmFsaWQgb3IgaWYKPiArICogdGhlIHBs YWNlbWVudCBjb25maWd1cmF0aW9uIGlzbid0IHN1cHBvcnRlZCBvbiB0aGUgcGxhdGZvcm0gLyBz dWJtaXNzaW9uCj4gKyAqIGludGVyZmFjZS4KPiArICogUmV0dXJucyAtRU5PREVWIGlmIGV4dGVu c2lvbiBpc24ndCBzdXBwb3J0ZWQgb24gdGhlIHBsYXRmb3JtIC8gc3VibWlzc2lvbgo+ICsgKiBp bnRlZmFjZS4KPiArICovCj4gK3N0cnVjdCBpOTE1X2NvbnRleHRfZW5naW5lc19wYXJhbGxlbF9z dWJtaXQgewo+ICsJc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24gYmFzZTsKPiArCj4gKwlfX3Ux NiBlbmdpbmVfaW5kZXg7CS8qIHNsb3QgZm9yIHBhcmFsbGVsIGVuZ2luZSAqLwo+ICsJX191MTYg d2lkdGg7CQkvKiBudW1iZXIgb2YgY29udGV4dHMgcGVyIHBhcmFsbGVsIGVuZ2luZSAqLwo+ICsJ X191MTYgbnVtX3NpYmxpbmdzOwkvKiBudW1iZXIgb2Ygc2libGluZ3MgcGVyIGNvbnRleHQgKi8K PiArCV9fdTE2IG1iejE2Owo+ICsvKgo+ICsgKiBEZWZhdWx0IHBsYWNlbWVudCBiZWhhdmlvciAo Y3VycmVudGx5IHVuc3VwcG9ydGVkKToKPiArICoKPiArICogQWxsb3cgQkJzIHRvIGJlIHBsYWNl ZCBvbiBhbnkgYXZhaWxhYmxlIGVuZ2luZSBpbnN0YW5jZS4gSW4gdGhpcyBjYXNlIGVhY2gKPiAr ICogY29udGV4dCdzIGVuZ2luZSBtYXNrIGluZGljYXRlcyB3aGVyZSB0aGF0IGNvbnRleHQgY2Fu IGJlIHBsYWNlZC4gSXQgaXMKCkNvbnRleHQgZG9lcyBub3QgaGF2ZSBhbiBlbmdpbmUgbWFzayBp biB0aGUgdWFwaSBzbyBJJ2QgZXhwbGFpbiB0aGlzIGluIAp0ZXJtcyBvZiBsaXN0IG9mIGVuZ2lu ZXMuCgo+ICsgKiBpbXBsaWVkIGluIHRoaXMgbW9kZSB0aGF0IGFsbCBjb250ZXh0cyBoYXZlIG11 dHVhbCBleGNsdXNpdmUgcGxhY2VtZW50LgoKbXV0dWFsbHkKCj4gKyAqIGUuZy4gSWYgb25lIGNv bnRleHQgaXMgcnVubmluZyBDU1hbMF0gbm8gb3RoZXIgY29udGV4dHMgY2FuIHJ1biBvbiBDU1hb MF0pLgoKcy9JZi9pZiwgSSB0aGluay4KCkkgZG9uJ3QgZmluZCBDU1hbMF0gcmVhZGFibGUgbm9y IEkgdGhpbmsgaW50cm9kdWNpbmcgY3N4IGFzIGEgdGVybSBpcyAKZGVzaXJhYmxlLiBMb3dlcmNh c2UgY3M8bj4gKGxpa2UgY3MwKSBpcyB3aGF0IEkgd291bGQgcHJlZmVyIGZvciBib3RoIApyZWFk YWJpbGl0eSBhbmQgbGlrZWx5IGNzID0gY29tbWFuZCBzdHJlYW1lciBjb3VsZCBiZSBtb3JlIG9i dmlvdXMgd2hhdCAKaXQgaXMuIE5hbWluZyBsaWtlIHJjczAgKHByZWZpeC1jcy1udW1iZXIpIGFu ZCBzaW1pbGFyIGFyZSBleHBvc2VkIGluIAprZXJuZWwgbG9ncyBhbmQgZXJyb3Igc3RhdGUgd2hp bGUgY3N4W10gKGNzLXN1ZmZpeC1udW1iZXIpIGFyZSBub3QgYXQgYWxsLgoKSW4gcGxhY2VtZW50 IGV4YW1wbGVzIEkgd291bGQgcmVmcmFpbiBmcm9tIHVzaW5nIGFueSBwcmVmaXhlcy9zdWZmaXhl cyAKdG8gZGVzaWduYXRlIGVuZ2luZSBjbGFzc2VzIGFuZCBqdXN0IHNheSBjczAvY3MxLCBtZW50 aW9uaW5nIHRoZSAKc2FtZS9taXhlZCBjbGFzcyByZXF1aXJlbWVudCBzZXBhcmF0ZWx5IGluIHRo ZSBub3RlcyBpZiBhcHBsaWNhYmxlLgoKPiArICoKPiArICogRXhhbXBsZSAxIHBzZXVkbyBjb2Rl Ogo+ICsgKiBDU1gsWVtOXSA9IGdlbmVyaWMgZW5naW5lIGNsYXNzIFggb3IgWSwgbG9naWNhbCBp bnN0YW5jZSBOCj4gKyAqIElOVkFMSUQgPSBJOTE1X0VOR0lORV9DTEFTU19JTlZBTElELCBJOTE1 X0VOR0lORV9DTEFTU19JTlZBTElEX05PTkUKPiArICogc2V0X2VuZ2luZXMoSU5WQUxJRCkKPiAr ICogc2V0X3BhcmFsbGVsKGVuZ2luZV9pbmRleD0wLCB3aWR0aD0yLCBudW1fc2libGluZ3M9MiwK PiArICoJCWVuZ2luZXM9Q1NYWzBdLENTWFsxXSxDU1lbMF0sQ1NZWzFdKQo+ICsgKgo+ICsgKiBS ZXN1bHRzIGluIHRoZSBmb2xsb3dpbmcgdmFsaWQgcGxhY2VtZW50czoKPiArICogQ1NYWzBdLCBD U1lbMF0KPiArICogQ1NYWzBdLCBDU1lbMV0KPiArICogQ1NYWzFdLCBDU1lbMF0KPiArICogQ1NY WzFdLCBDU1lbMV0KPiArICoKPiArICogVGhpcyBjYW4gYWxzbyBiZSB0aG91Z2h0IG9mIGFzIDIg dmlydHVhbCBlbmdpbmVzIGRlc2NyaWJlZCBieSAyLUQgYXJyYXkgaW4KPiArICogdGhlIGVuZ2lu ZXMgdGhlIGZpZWxkOgoKT25lIHRoZSB0b28gbWFueS4KCj4gKyAqIFZFWzBdID0gQ1NYWzBdLCBD U1hbMV0KPiArICogVkVbMV0gPSBDU1lbMF0sIENTWVsxXQo+ICsgKgo+ICsgKiBFeGFtcGxlIDIg cHNldWRvIGNvZGU6Cj4gKyAqIENTWFtZXSA9IGdlbmVyaWMgZW5naW5lIG9mIHNhbWUgY2xhc3Mg WCwgbG9naWNhbCBpbnN0YW5jZSBOCj4gKyAqIElOVkFMSUQgPSBJOTE1X0VOR0lORV9DTEFTU19J TlZBTElELCBJOTE1X0VOR0lORV9DTEFTU19JTlZBTElEX05PTkUKPiArICogc2V0X2VuZ2luZXMo SU5WQUxJRCkKPiArICogc2V0X3BhcmFsbGVsKGVuZ2luZV9pbmRleD0wLCB3aWR0aD0yLCBudW1f c2libGluZ3M9MywKPiArICoJCWVuZ2luZXM9Q1NYWzBdLENTWFsxXSxDU1hbMl0sQ1NYWzBdLENT WFsxXSxDU1hbMl0pCj4gKyAqCj4gKyAqIFJlc3VsdHMgaW4gdGhlIGZvbGxvd2luZyB2YWxpZCBw bGFjZW1lbnRzOgo+ICsgKiBDU1hbMF0sIENTWFsxXQo+ICsgKiBDU1hbMF0sIENTWFsyXQo+ICsg KiBDU1hbMV0sIENTWFswXQo+ICsgKiBDU1hbMV0sIENTWFsyXQo+ICsgKiBDU1hbMl0sIENTWFsw XQo+ICsgKiBDU1hbMl0sIENTWFsxXQo+ICsgKgo+ICsgKiBUaGlzIGNhbiBhbHNvIGJlIHRob3Vn aHQgb2YgYXMgMiB2aXJ0dWFsIGVuZ2luZXMgZGVzY3JpYmVkIGJ5IDItRCBhcnJheSBpbgo+ICsg KiB0aGUgZW5naW5lcyB0aGUgZmllbGQ6Cj4gKyAqIFZFWzBdID0gQ1NYWzBdLCBDU1hbMV0sIENT WFsyXQo+ICsgKiBWRVsxXSA9IENTWFswXSwgQ1NYWzFdLCBDU1hbMl0KPiArCj4gKyAqIFRoaXMg ZW5hYmxlcyBhIHVzZSBjYXNlIHdoZXJlIGFsbCBlbmdpbmVzIGFyZSBjcmVhdGVkIGVxdWFsbHks IHdlIGRvbid0IGNhcmUKPiArICogd2hlcmUgdGhleSBhcmUgc2NoZWR1bGVkLCB3ZSBqdXN0IHdh bnQgYSBjZXJ0YWluIG51bWJlciBvZiByZXNvdXJjZXMsIGZvcgo+ICsgKiB0aG9zZSByZXNvdXJj ZXMgdG8gYmUgc2NoZWR1bGVkIGluIHBhcmFsbGVsLCBhbmQgcG9zc2libHkgYWNyb3NzIG11bHRp cGxlCj4gKyAqIGVuZ2luZSBjbGFzc2VzLgo+ICsgKi8KPiArCj4gKy8qCj4gKyAqIEk5MTVfUEFS QUxMRUxfSU1QTElDSVRfQk9ORFMgLSBDcmVhdGUgaW1wbGljaXQgYm9uZHMgYmV0d2VlbiBlYWNo IGNvbnRleHQuCj4gKyAqIEVhY2ggY29udGV4dCBtdXN0IGhhdmUgdGhlIHNhbWUgbnVtYmVyIG9m IHNpYmxpbmcgYW5kIGJvbmRzIGFyZSBpbXBsaWNpdGx5CgpzaWJsaW5ncwoKPiArICogY3JlYXRl ZCBiZXR3ZWVuIGVhY2ggc2V0IG9mIHNpYmxpbmdzLgo+ICsgKgo+ICsgKiBFeGFtcGxlIDEgcHNl dWRvIGNvZGU6Cj4gKyAqIENTWFtOXSA9IGdlbmVyaWMgZW5naW5lIG9mIHNhbWUgY2xhc3MgWCwg bG9naWNhbCBpbnN0YW5jZSBOCj4gKyAqIElOVkFMSUQgPSBJOTE1X0VOR0lORV9DTEFTU19JTlZB TElELCBJOTE1X0VOR0lORV9DTEFTU19JTlZBTElEX05PTkUKPiArICogc2V0X2VuZ2luZXMoSU5W QUxJRCkKPiArICogc2V0X3BhcmFsbGVsKGVuZ2luZV9pbmRleD0wLCB3aWR0aD0yLCBudW1fc2li bGluZ3M9MSwKPiArICoJCWVuZ2luZXM9Q1NYWzBdLENTWFsxXSwgZmxhZ3M9STkxNV9QQVJBTExF TF9JTVBMSUNJVF9CT05EUykKPiArICoKPiArICogUmVzdWx0cyBpbiB0aGUgZm9sbG93aW5nIHZh bGlkIHBsYWNlbWVudHM6Cj4gKyAqIENTWFswXSwgQ1NYWzFdCj4gKyAqCj4gKyAqIEV4YW1wbGUg MiBwc2V1ZG8gY29kZToKPiArICogQ1NYW05dID0gZ2VuZXJpYyBlbmdpbmUgb2Ygc2FtZSBjbGFz cyBYLCBsb2dpY2FsIGluc3RhbmNlIE4KPiArICogSU5WQUxJRCA9IEk5MTVfRU5HSU5FX0NMQVNT X0lOVkFMSUQsIEk5MTVfRU5HSU5FX0NMQVNTX0lOVkFMSURfTk9ORQo+ICsgKiBzZXRfZW5naW5l cyhJTlZBTElEKQo+ICsgKiBzZXRfcGFyYWxsZWwoZW5naW5lX2luZGV4PTAsIHdpZHRoPTIsIG51 bV9zaWJsaW5ncz0yLAo+ICsgKgkJZW5naW5lcz1DU1hbMF0sQ1NYWzJdLENTWFsxXSxDU1hbM10s Cj4gKyAqCQlmbGFncz1JOTE1X1BBUkFMTEVMX0lNUExJQ0lUX0JPTkRTKQo+ICsgKgo+ICsgKiBS ZXN1bHRzIGluIHRoZSBmb2xsb3dpbmcgdmFsaWQgcGxhY2VtZW50czoKPiArICogQ1NYWzBdLCBD U1hbMV0KPiArICogQ1NYWzJdLCBDU1hbM10KPiArICoKPiArICogVGhpcyBjYW4gYWxzbyBiZSB0 aG91Z2h0IG9mIGFzIDIgdmlydHVhbCBlbmdpbmVzIGRlc2NyaWJlZCBieSAyLUQgYXJyYXkgaW4K PiArICogdGhlIGVuZ2luZXMgdGhlIGZpZWxkIHdpdGggYm9uZHMgcGxhY2VkIGJldHdlZW4gZWFj aCBpbmRleCBvZiB0aGUgdmlydHVhbAo+ICsgKiBlbmdpbmVzLiBlLmcuIENTWFswXSBpcyBib25k ZWQgdG8gQ1NYWzFdLCBDU1hbMl0gaXMgYm9uZGVkIHRvIENTWFszXS4KPiArICogVkVbMF0gPSBD U1hbMF0sIENTWFsyXQo+ICsgKiBWRVsxXSA9IENTWFsxXSwgQ1NYWzNdCj4gKyAqCj4gKyAqIFRo aXMgZW5hYmxlcyBhIHVzZSBjYXNlIHdoZXJlIGFsbCBlbmdpbmVzIGFyZSBub3QgZXF1YWwgYW5k IGNlcnRhaW4gcGxhY2VtZW50Cj4gKyAqIHJ1bGVzIGFyZSByZXF1aXJlZCAoaS5lLiBzcGxpdC1m cmFtZSByZXF1aXJlcyBhbGwgY29udGV4dHMgdG8gYmUgcGxhY2VkIGluIGEKPiArICogbG9naWNh bGx5IGNvbnRpZ3VvdXMgb3JkZXIgb24gdGhlIFZDUyBlbmdpbmVzIG9uIGdlbjExKyBwbGF0Zm9y bXMpLiBUaGlzIHVzZQo+ICsgKiBjYXNlIChsb2dpY2FsbHkgY29udGlndW91cyBwbGFjZW1lbnQs IHdpdGhpbiBhIHNpbmdsZSBlbmdpbmUgY2xhc3MpIGlzCgpBZ2FpbiwgSSB3b3VsZG4ndCB1c2Ug dGhlIHRlcm0gbG9naWNhbGx5IGNvbnRpZ3VvdXMgaGVyZSBiZWNhdXNlIGxvZ2ljYWwgCmluc3Rh bmNlIG51bWJlcmluZyBpc24ndCB1c2VkIGluIGNsYXNzOmluc3RhbmNlIGFkZHJlc3NpbmcgYXMg dXNlZCBpbiAKZW5naW5lIG1hcHMuCgo+ICsgKiBzdXBwb3J0ZWQgd2hlbiB1c2luZyBHdUMgc3Vi bWlzc2lvbi4gRXhlY2xpc3QgbW9kZSBjb3VsZCBzdXBwb3J0IGFsbCBwb3NzaWJsZQo+ICsgKiBi b25kaW5nIGNvbmZpZ3VyYXRpb25zIGJ1dCBjdXJyZW50bHkgZG9lc24ndCBzdXBwb3J0IHRoaXMg ZXh0ZW5zaW9uLgo+ICsgKi8KPiArI2RlZmluZSBJOTE1X1BBUkFMTEVMX0lNUExJQ0lUX0JPTkRT CQkJKDEgPDwgMCkKPiArLyoKPiArICogRG8gbm90IGFsbG93IEJCcyB0byBiZSBwcmVlbXB0ZWQg bWlkIEJCIHJhdGhlciBpbnNlcnQgY29vcmRpbmF0ZWQgcHJlZW1wdGlvbgo+ICsgKiBwb2ludHMg b24gYWxsIGhhcmR3YXJlIGNvbnRleHRzIGJldHdlZW4gZWFjaCBzZXQgb2YgQkJzLiBBbiBleGFt cGxlIHVzZSBjYXNlCj4gKyAqIG9mIHRoaXMgZmVhdHVyZSBpcyBzcGxpdC1mcmFtZSBvbiBnZW4x MSsgaGFyZHdhcmUuCj4gKyAqLwo+ICsjZGVmaW5lIEk5MTVfUEFSQUxMRUxfTk9fUFJFRU1QVF9N SURfQkFUQ0gJCSgxIDw8IDEpCj4gKyNkZWZpbmUgX19JOTE1X1BBUkFMTEVMX1VOS05PV05fRkxB R1MJKC0oSTkxNV9QQVJBTExFTF9OT19QUkVFTVBUX01JRF9CQVRDSCA8PCAxKSkKPiArCV9fdTY0 IGZsYWdzOwkJLyogYWxsIHVuZGVmaW5lZCBmbGFncyBtdXN0IGJlIHplcm8gKi8KPiArCV9fdTY0 IG1iejY0WzNdOwkJLyogcmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2U7IG11c3QgYmUgemVybyAqLwo+ ICsKPiArCS8qCj4gKwkgKiAyLUQgYXJyYXkgb2YgZW5naW5lcwo+ICsJICoKPiArCSAqIHdpZHRo IChpKSAqIG51bV9zaWJsaW5ncyAoaikgaW4gbGVuZ3RoCj4gKwkgKiBpbmRleCA9IGogKyBpICog bnVtX3NpYmxpbmdzCgplbmdpbmVzW11bXSA9IHsKICAgLyogQ2hhbm5lbCAwIHBvc3NpYmxlIGVu Z2luZXM6ICovIHsgY3MwLCBjczIgfSwKICAgLyogQ2hhbm5lbCAxIHBvc3NpYmxlIGVuZ2luZXM6 ICovIHsgY3MxLCBjczMgfSwKfTsKCldvdWxkIHRoaXMgYmUgYWNjdXJhdGUgYW5kIGRlc2NyaXB0 aXZlIG9uIHRvcCBvZiB0aGUgZm9ybXVsYT8gQWx0aG91Z2ggSSAKYW0gbm90IHRvbyBoYXBweSB3 aXRoIHRoZSB0ZXJtIGNoYW5uZWwgd2l0aG91dCBmaXJzdCBleHBsYWluaW5nIGhvdyB3ZSAKYXJl IGdvaW5nIHRvIGNhbGwgcGFyYWxsZWwgc3RyZWFtcyB3aXRoaW4gYSB3aWRlIGNvbnRleHQuCgo+ ICsJICovCj4gKwlzdHJ1Y3QgaTkxNV9lbmdpbmVfY2xhc3NfaW5zdGFuY2UgZW5naW5lc1swXTsK PiArfSBfX2F0dHJpYnV0ZV9fICgocGFja2VkKSk7Cj4gKwo+IGRpZmYgLS1naXQgYS9Eb2N1bWVu dGF0aW9uL2dwdS9yZmMvaTkxNV9zY2hlZHVsZXIucnN0IGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZj L2k5MTVfc2NoZWR1bGVyLnJzdAo+IGluZGV4IDdmYWE0NmNkZTA4OC4uMDI1NGMwNGQzNGJlIDEw MDY0NAo+IC0tLSBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X3NjaGVkdWxlci5yc3QKPiAr KysgYi9Eb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9zY2hlZHVsZXIucnN0Cj4gQEAgLTIzLDcg KzIzLDcgQEAgaTkxNSB3aXRoIHRoZSBEUk0gc2NoZWR1bGVyIGlzOgo+ICAgCSAgc2V2ZXJlIGRl c2lnbiBpc3N1ZXMgaW4gZ2VuZXJhbCwgd2hpY2ggaXMgd2h5IHdlIHdhbnQgdG8gcmV0aXJlIGl0 IG5vCj4gICAJICBtYXR0ZXIgd2hhdAo+ICAgCSogTmV3IHVBUEkgYWRkcyBJOTE1X0NPTlRFWFRf RU5HSU5FU19FWFRfUEFSQUxMRUwgY29udGV4dCBzZXR1cCBzdGVwCj4gLQkgIHdoaWNoIGNvbmZp Z3VyZXMgYSBzbG90IHdpdGggTiBjb250ZXh0cwo+ICsJICB3aGljaCBjb25maWd1cmVzIGEgc2xv dCB3aXRoIE4gY29udGV4dHMKPiAgIAkqIEFmdGVyIEk5MTVfQ09OVEVYVF9FTkdJTkVTX0VYVF9Q QVJBTExFTCBhIHVzZXIgY2FuIHN1Ym1pdCBOIGJhdGNoZXMgdG8KPiAgIAkgIGEgc2xvdCBpbiBh IHNpbmdsZSBleGVjYnVmIElPQ1RMIGFuZCB0aGUgYmF0Y2hlcyBydW4gb24gdGhlIEdQVSBpbgo+ ICAgCSAgcGFyYWxsbGVsCj4gQEAgLTgyLDQgKzgyLDU1IEBAIGh0dHBzOi8vc3BlYy5vbmVhcGku Y29tL2xldmVsLXplcm8vbGF0ZXN0L2NvcmUvYXBpLmh0bWwjemUtY29tbWFuZC1xdWV1ZS1wcmlv cml0Cj4gICAKPiAgIE5ldyBwYXJhbGxlbCBzdWJtaXNzaW9uIHVBUEkKPiAgID09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KPiAtRGV0YWlscyB0byBjb21lIGluIGEgZm9sbG93aW5nIHBhdGNo Lgo+ICtUaGUgZXhpc3RpbmcgYm9uZGluZyB1QVBJIGlzIGNvbXBsZXRlbHkgYnJva2VuIHdpdGgg R3VDIHN1Ym1pc3Npb24gYmVjYXVzZQo+ICt3aGV0aGVyIGEgc3VibWlzc2lvbiBpcyBhIHNpbmds ZSBjb250ZXh0IHN1Ym1pdCBvciBwYXJhbGxlbCBzdWJtaXQgaXNuJ3Qga25vd24KPiArdW50aWwg ZXhlY2J1ZiB0aW1lIGFjdGl2YXRlZCB2aWEgdGhlIEk5MTVfU1VCTUlUX0ZFTkNFLiBUbyBzdWJt aXQgbXVsdGlwbGUKPiArY29udGV4dHMgaW4gcGFyYWxsZWwgd2l0aCB0aGUgR3VDIHRoZSBjb250 ZXh0IG11c3QgYmUgZXhwbGljaXRseSByZWdpc3RlcmVkIHdpdGgKPiArTiBjb250ZXh0cyBhbmQg YWxsIE4gY29udGV4dHMgbXVzdCBiZSBzdWJtaXR0ZWQgaW4gYSBzaW5nbGUgY29tbWFuZCB0byB0 aGUgR3VDLgo+ICtUaGUgR3VDIGludGVyZmFjZXMgZG8gbm90IHN1cHBvcnQgZHluYW1pY2FsbHkg Y2hhbmdpbmcgYmV0d2VlbiBOIGNvbnRleHRzIGFzIHRoZQo+ICtib25kaW5nIHVBUEkgZG9lcy4g SGVuY2UgdGhlIG5lZWQgZm9yIGEgbmV3IHBhcmFsbGVsIHN1Ym1pc3Npb24gaW50ZXJmYWNlLiBB bHNvCj4gK3RoZSBsZWdhY3kgYm9uZGluZyB1QVBJIGlzIHF1aXRlIGNvbmZ1c2luZyBhbmQgbm90 IGludHVpdGl2ZSBhdCBhbGwuCgpJdCdzIG5vdCB0aGF0IGNvbmZ1c2luZyByZWFsbHkuIElmIHdl IGhhZCBhZGRlZCBtdWx0aS1iYXRjaCBleGVjYnVmIGZyb20gCnRoZSBzdGFydCBubyBvbmUgd291 bGQgYmUgdGFsa2luZyBhYm91dCBib25kcyB0b2RheS4KCj4gKwo+ICtUaGUgbmV3IHBhcmFsbGVs IHN1Ym1pc3Npb24gdUFQSSBjb25zaXN0cyBvZiAzIHBhcnRzOgo+ICsKPiArKiBFeHBvcnQgZW5n aW5lcyBsb2dpY2FsIG1hcHBpbmcKPiArKiBBICdzZXRfcGFyYWxsZWwnIGV4dGVuc2lvbiB0byBj b25maWd1cmUgY29udGV4dHMgZm9yIHBhcmFsbGVsCj4gKyAgc3VibWlzc2lvbgo+ICsqIEV4dGVu ZCBleGVjYnVmMiBJT0NUTCB0byBzdXBwb3J0IHN1Ym1pdHRpbmcgTiBCQnMgaW4gYSBzaW5nbGUg SU9DVEwKPiArCj4gK0V4cG9ydCBlbmdpbmVzIGxvZ2ljYWwgbWFwcGluZwo+ICstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KPiArQ2VydGFpbiB1c2UgY2FzZXMgcmVxdWlyZSBCQnMgdG8g YmUgcGxhY2VkIG9uIGVuZ2luZSBpbnN0YW5jZXMgaW4gbG9naWNhbCBvcmRlcgo+ICsoZS5nLiBz cGxpdC1mcmFtZSBvbiBnZW4xMSspLiBUaGUgbG9naWNhbCBtYXBwaW5nIG9mIGVuZ2luZSBpbnN0 YW5jZXMgY2FuIGNoYW5nZQo+ICtiYXNlZCBvbiBmdXNpbmcuIFJhdGhlciB0aGFuIG1ha2luZyBV TURzIGJlIGF3YXJlIG9mIGZ1c2luZywgc2ltcGx5IGV4cG9zZSB0aGUKPiArbG9naWNhbCBtYXBw aW5nIHdpdGggdGhlIGV4aXN0aW5nIHF1ZXJ5IGVuZ2luZSBpbmZvIElPQ1RMLiBBbHNvIHRoZSBH dUMKPiArc3VibWlzc2lvbiBpbnRlcmZhY2UgY3VycmVudGx5IG9ubHkgc3VwcG9ydHMgc3VibWl0 dGluZyBtdWx0aXBsZSBjb250ZXh0cyB0bwo+ICtlbmdpbmVzIGluIGxvZ2ljYWwgb3JkZXIgd2hp Y2ggaXMgYSBuZXcgcmVxdWlyZW1lbnQgY29tcGFyZWQgdG8gZXhlY2xpc3RzLgo+ICtMYXN0bHks IGFsbCBjdXJyZW50IHBsYXRmb3JtcyBoYXZlIGF0IG1vc3QgMiBlbmdpbmUgaW5zdGFuY2VzIGFu ZCB0aGUgbG9naWNhbAo+ICtvcmRlciBpcyB0aGUgc2FtZSBhcyB1QVBJIG9yZGVyLiBUaGlzIHdp bGwgY2hhbmdlIG9uIHBsYXRmb3JtcyB3aXRoIG1vcmUgdGhhbiAyCj4gK2VuZ2luZSBpbnN0YW5j ZXMuCj4gKwo+ICtBIHNpbmdsZSBiaXQgd2lsbCBiZSBhZGRlZCB0byBkcm1faTkxNV9lbmdpbmVf aW5mby5mbGFncyBpbmRpY2F0aW5nIHRoYXQgdGhlCj4gK2xvZ2ljYWwgaW5zdGFuY2UgaGFzIGJl ZW4gcmV0dXJuZWQgYW5kIGEgbmV3IGZpZWxkLAo+ICtkcm1faTkxNV9lbmdpbmVfaW5mby5sb2dp Y2FsX2luc3RhbmNlLCByZXR1cm5zIHRoZSBsb2dpY2FsIGluc3RhbmNlLgo+ICsKPiArQSAnc2V0 X3BhcmFsbGVsJyBleHRlbnNpb24gdG8gY29uZmlndXJlIGNvbnRleHRzIGZvciBwYXJhbGxlbCBz dWJtaXNzaW9uCj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICtUaGUgJ3NldF9wYXJhbGxlbCcgZXh0ZW5z aW9uIGNvbmZpZ3VyZXMgYSBzbG90IGZvciBwYXJhbGxlbCBzdWJtaXNzaW9uIG9mIE4gQkJzLgo+ ICtJdCBpcyBzZXR1cCBzdGVwIHRoYXQgc2hvdWxkIGJlIGNhbGxlZCBiZWZvcmUgdXNpbmcgYW55 IG9mIHRoZSBjb250ZXh0cy4gU2VlCgphIHNldHVwIHN0ZXAKCnMvYW55IG9mIHRoZSBjb250ZXh0 L3RoZSBjb250ZXh0LyA/Cgo+ICtJOTE1X0NPTlRFWFRfRU5HSU5FU19FWFRfTE9BRF9CQUxBTkNF IG9yIEk5MTVfQ09OVEVYVF9FTkdJTkVTX0VYVF9CT05EIGZvcgo+ICtzaW1pbGFyIGV4aXN0aW5n IGV4YW1wbGVzLiBPbmNlIGEgc2xvdCBpcyBjb25maWd1cmVkIGZvciBwYXJhbGxlbCBzdWJtaXNz aW9uIHRoZQo+ICtleGVjYnVmMiBJT0NUTCBjYW4gYmUgY2FsbGVkIHN1Ym1pdHRpbmcgTiBCQnMg aW4gYSBzaW5nbGUgSU9DVEwuIEluaXRpYWxseSBvbmx5Cj4gK3N1cHBvcnQgR3VDIHN1Ym1pc3Np b24uIEV4ZWNsaXN0IHN1cHBvcnQgY2FuIGJlIGFkZGVkIGxhdGVyIGlmIG5lZWRlZC4KCnN1cHBv cnRzCgpleGVjbGlzdHMKCj4gKwo+ICtBZGQgSTkxNV9DT05URVhUX0VOR0lORVNfRVhUX1BBUkFM TEVMX1NVQk1JVCBhbmQKPiAraTkxNV9jb250ZXh0X2VuZ2luZXNfcGFyYWxsZWxfc3VibWl0IHRv IHRoZSB1QVBJIHRvIGltcGxlbWVudCB0aGlzIGV4dGVuc2lvbi4KPiArCj4gK0V4dGVuZCBleGVj YnVmMiBJT0NUTCB0byBzdXBwb3J0IHN1Ym1pdHRpbmcgTiBCQnMgaW4gYSBzaW5nbGUgSU9DVEwK PiArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQo+ICtDb250ZXh0cyB0aGF0IGhhdmUgYmVlbiBjb25maWd1cmVkIHdpdGgg dGhlICdzZXRfcGFyYWxsZWwnIGV4dGVuc2lvbiBhcmUgYWxsb3dlZAoKcy9hcmUgYWxsb3dlZC9j YW4gb25seS8KCj4gK3RvIHN1Ym1pdCBOIEJCcyBpbiBhIHNpbmdsZSBleGVjYnVmMiBJT0NUTC4g VGhlIEJCcyBhcmUgZWl0aGVyIHRoZSBsYXN0IE4KPiArb2JqZWN0cyBpbiB0aGUgZHJtX2k5MTVf Z2VtX2V4ZWNfb2JqZWN0MiBsaXN0IG9yIHRoZSBmaXJzdCBOIGlmCj4gK0k5MTVfRVhFQ19CQVRD SF9GSVJTVCBpcyBzZXQuIFRoZSBudW1iZXIgb2YgQkJzIGlzIGltcGxpY3QgYmFzZWQgb24gdGhl IHNsb3QKCmltcGxpY2l0Cgo+ICtzdWJtaXR0ZWQgYW5kIGhvdyBpdCBoYXMgYmVlbiBjb25maWd1 cmVkIGJ5ICdzZXRfcGFyYWxsZWwnIG9yIG90aGVyIGV4dGVuc2lvbnMuCj4gK05vIHVBUEkgY2hh bmdlcyBhcmUgcmVxdWlyZWQgdG8gZXhlY2J1ZjIgSU9DVEwuCj4gCgpSZWdhcmRzLAoKVHZydGtv Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=