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=-13.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS 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 18892C433ED for ; Mon, 26 Apr 2021 16:25:28 +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 B05EA60C3D for ; Mon, 26 Apr 2021 16:25:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B05EA60C3D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=jlekstrand.net 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 8AE9989F49; Mon, 26 Apr 2021 16:25:24 +0000 (UTC) Received: from mail-ed1-x532.google.com (mail-ed1-x532.google.com [IPv6:2a00:1450:4864:20::532]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0411B89F49 for ; Mon, 26 Apr 2021 16:25:22 +0000 (UTC) Received: by mail-ed1-x532.google.com with SMTP id z5so29954814edr.11 for ; Mon, 26 Apr 2021 09:25:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jlekstrand-net.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=8ieHkhAXrhTOxO14b/sZllUkX8uRhuG2aJLMqVvjxeE=; b=rpytPN0PPXYhPVrenf2QMGYeEugw+gCR44z9WneQd3hcJB/p7uJnUL4GsIKsJ9beo6 WARjGdRoPAIGQjLm5HoeVzIyB1A3ZzXnkX3wBAqyOAEdf4YWvd+3yyv3iwcsHw0Q3BjQ BMgQdjOKosjnYPDxgkMExMhJCHMswCxw/rXFaYon2+YCl/2pPxVjCK5gJO4IRT7owQAQ SHpBJIH/oNUa9i1p9pJu4vwrH0+ssaCKT0ZymZJHDZ7nC29wVDSxcHJYT+3/uhPY71MX EghIVV1CH/RBsNwEO8dQai/ENafoIfEbBNawBbrskJcw8uAQSTDe5AIcpMQCaVaUjf1K TY2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=8ieHkhAXrhTOxO14b/sZllUkX8uRhuG2aJLMqVvjxeE=; b=MKAa6mhfKC5Zo13P9DVULZNg+1U3uFXN2vDHqGdj0/wYtSsrdBHR3W20CLPd6iFIZj b3QwvytRXwVKYkAmSP9+Ilyj9yDvvwZQ96zcHrh9/qsGVPVmlxbuAyIEnUprNsX7Xtso Xa//eX1+0VNhy0aXYyveJsWbwdNd7mJv38uwR7ZGnX5DTc2FE33kSSHq7XgBOnm6r0hg 6X6v4RmCir7nEjXti9MIecHzoXOc4ctJcr14DjY23yEF945PcFAUPODkf0rzEOsEuDD9 r00uyr1PQ8mz1hav/QPxMWSyF5AmWlSasispJIbDzpRLcwpA3HJG9RQ9ebeIyyxrRzcG wJHg== X-Gm-Message-State: AOAM5312sf5xqEsdJBo1kDySVxmtzxdV6/3Mpp7v00Zv8iXSjWDqUCjS JLBGLFMHPD5H+jt2l5Kr/IOgS3oLc+/s49bmdNLf1w== X-Google-Smtp-Source: ABdhPJwQe+8fT0G8guKwRl+qU0m4XcOZeofCrFI8OgMQX7ADhAE3RkU3RDpDLqxiIwfUBg5Qt3RlW7n9oFmhJtkPqEk= X-Received: by 2002:a05:6402:22a4:: with SMTP id cx4mr22218486edb.232.1619454321361; Mon, 26 Apr 2021 09:25:21 -0700 (PDT) MIME-Version: 1.0 References: <20210426093901.28937-1-matthew.auld@intel.com> In-Reply-To: From: Jason Ekstrand Date: Mon, 26 Apr 2021 11:25:09 -0500 Message-ID: Subject: Re: [PATCH 1/9] drm/doc/rfc: i915 DG1 uAPI To: Matthew Auld 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: Lionel Landwerlin , =?UTF-8?Q?Thomas_Hellstr=C3=B6m?= , Dave Airlie , Jordan Justen , Intel GFX , Maling list - DRI developers , Daniel Vetter , Kenneth Graunke , Daniele Ceraolo Spurio , Jon Bloomfield , ML mesa-dev , Daniel Vetter Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gTW9uLCBBcHIgMjYsIDIwMjEgYXQgMTA6MzEgQU0gTWF0dGhldyBBdWxkIDxtYXR0aGV3LmF1 bGRAaW50ZWwuY29tPiB3cm90ZToKPgo+IE9uIDI2LzA0LzIwMjEgMTY6MTEsIEphc29uIEVrc3Ry YW5kIHdyb3RlOgo+ID4gT24gTW9uLCBBcHIgMjYsIDIwMjEgYXQgNDo0MiBBTSBNYXR0aGV3IEF1 bGQgPG1hdHRoZXcuYXVsZEBpbnRlbC5jb20+IHdyb3RlOgo+ID4+Cj4gPj4gQWRkIGFuIGVudHJ5 IGZvciB0aGUgbmV3IHVBUEkgbmVlZGVkIGZvciBERzEuIEFsc28gYWRkIHRoZSBvdmVyYWxsCj4g Pj4gdXBzdHJlYW0gcGxhbiwgaW5jbHVkaW5nIHNvbWUgbm90ZXMgZm9yIHRoZSBUVE0gY29udmVy c2lvbi4KPiA+Pgo+ID4+IHYyKERhbmllbCk6Cj4gPj4gICAgLSBpbmNsdWRlIHRoZSBvdmVyYWxs IHVwc3RyZWFtaW5nIHBsYW4KPiA+PiAgICAtIGFkZCBhIG5vdGUgZm9yIG1tYXAsIHRoZXJlIGFy ZSBkaWZmZXJlbmNlcyBoZXJlIGZvciBUVE0gdnMgaTkxNQo+ID4+ICAgIC0gYnVuY2ggb2Ygb3Ro ZXIgc3VnZ2VzdGlvbnMgZnJvbSBEYW5pZWwKPiA+PiB2MzoKPiA+PiAgIChEYW5pZWwpCj4gPj4g ICAgLSBhZGQgYSBub3RlIGZvciBzZXQvZ2V0IGNhY2hpbmcgc3R1ZmYKPiA+PiAgICAtIGFkZCBz b21lIG1vcmUgZG9jcyBmb3IgZXhpc3RpbmcgcXVlcnkgYW5kIGV4dGVuc2lvbnMgc3R1ZmYKPiA+ PiAgICAtIGFkZCBhbiBhY3R1YWwgY29kZSBleGFtcGxlIGZvciByZWdpb25zIHF1ZXJ5Cj4gPj4g ICAgLSBidW5jaCBvZiBvdGhlciBzdHVmZgo+ID4+ICAgKEphc29uKQo+ID4+ICAgIC0gdUFQSSBj aGFuZ2UoISk6Cj4gPj4gICAgICAgICAgLSB0cnkgYSBzaW1wbGVyIGRlc2lnbiB3aXRoIHRoZSBw bGFjZW1lbnRzIGV4dGVuc2lvbgo+ID4+ICAgICAgICAgIC0gcmF0aGVyIHRoYW4gaGF2ZSBhIGdl bmVyaWMgc2V0cGFyYW0gd2hpY2ggY2FuIGNvdmVyIG11bHRpcGxlCj4gPj4gICAgICAgICAgICB1 c2UgY2FzZXMsIGhhdmUgZWFjaCBleHRlbnNpb24gYmUgcmVzcG9uc2libGUgZm9yIG9uZSB0aGlu Zwo+ID4+ICAgICAgICAgICAgb25seQo+ID4+IHY0Ogo+ID4+ICAgKERhbmllbCkKPiA+PiAgICAt IGFkZCBzb21lIG1vcmUgbm90ZXMgZm9yIHR0bSBjb252ZXJzaW9uCj4gPj4gICAgLSBidW5jaCBv ZiBvdGhlciBzdHVmZgo+ID4+ICAgKEphc29uKQo+ID4+ICAgIC0gdUFQSSBjaGFuZ2UoISk6Cj4g Pj4gICAgICAgICAgLSBkcm9wIGFsbCB0aGUgZXh0cmEgcnN2ZCBtZW1iZXJzIGZvciB0aGUgcmVn aW9uX3F1ZXJ5IGFuZAo+ID4+ICAgICAgICAgICAgcmVnaW9uX2luZm8sIGp1c3Qga2VlcCB0aGUg YmFyZSBtaW5pbXVtIG5lZWRlZCBmb3IgcGFkZGluZwo+ID4+Cj4gPj4gU2lnbmVkLW9mZi1ieTog TWF0dGhldyBBdWxkIDxtYXR0aGV3LmF1bGRAaW50ZWwuY29tPgo+ID4+IENjOiBKb29uYXMgTGFo dGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Cj4gPj4gQ2M6IFRob21hcyBI ZWxsc3Ryw7ZtIDx0aG9tYXMuaGVsbHN0cm9tQGxpbnV4LmludGVsLmNvbT4KPiA+PiBDYzogRGFu aWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNvbT4KPiA+ PiBDYzogTGlvbmVsIExhbmR3ZXJsaW4gPGxpb25lbC5nLmxhbmR3ZXJsaW5AbGludXguaW50ZWwu Y29tPgo+ID4+IENjOiBKb24gQmxvb21maWVsZCA8am9uLmJsb29tZmllbGRAaW50ZWwuY29tPgo+ ID4+IENjOiBKb3JkYW4gSnVzdGVuIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPgo+ID4+IENj OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KPiA+PiBDYzogS2VubmV0 aCBHcmF1bmtlIDxrZW5uZXRoQHdoaXRlY2FwZS5vcmc+Cj4gPj4gQ2M6IEphc29uIEVrc3RyYW5k IDxqYXNvbkBqbGVrc3RyYW5kLm5ldD4KPiA+PiBDYzogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAZ21h aWwuY29tPgo+ID4+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPj4gQ2M6 IG1lc2EtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4+IEFja2VkLWJ5OiBEYW5pZWwgVmV0 dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+ID4+IEFja2VkLWJ5OiBEYXZlIEFpcmxpZSA8 YWlybGllZEByZWRoYXQuY29tPgo+ID4+IC0tLQo+ID4+ICAgRG9jdW1lbnRhdGlvbi9ncHUvcmZj L2k5MTVfZ2VtX2xtZW0uaCAgIHwgMjEyICsrKysrKysrKysrKysrKysrKysrKysrKwo+ID4+ICAg RG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0ucnN0IHwgMTMwICsrKysrKysrKysr KysrKwo+ID4+ICAgRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2luZGV4LnJzdCAgICAgICAgIHwgICA0 ICsKPiA+PiAgIDMgZmlsZXMgY2hhbmdlZCwgMzQ2IGluc2VydGlvbnMoKykKPiA+PiAgIGNyZWF0 ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9nZW1fbG1lbS5oCj4gPj4g ICBjcmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0u cnN0Cj4gPj4KPiA+PiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2Vt X2xtZW0uaCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLmgKPiA+PiBuZXcg ZmlsZSBtb2RlIDEwMDY0NAo+ID4+IGluZGV4IDAwMDAwMDAwMDAwMC4uN2VkNTliNjIwMmQ1Cj4g Pj4gLS0tIC9kZXYvbnVsbAo+ID4+ICsrKyBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dl bV9sbWVtLmgKPiA+PiBAQCAtMCwwICsxLDIxMiBAQAo+ID4+ICsvKioKPiA+PiArICogZW51bSBk cm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzIC0gU3VwcG9ydGVkIG1lbW9yeSBjbGFzc2VzCj4gPj4g KyAqLwo+ID4+ICtlbnVtIGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3Mgewo+ID4+ICsgICAgICAg LyoqIEBJOTE1X01FTU9SWV9DTEFTU19TWVNURU06IFN5c3RlbSBtZW1vcnkgKi8KPiA+PiArICAg ICAgIEk5MTVfTUVNT1JZX0NMQVNTX1NZU1RFTSA9IDAsCj4gPj4gKyAgICAgICAvKiogQEk5MTVf TUVNT1JZX0NMQVNTX0RFVklDRTogRGV2aWNlIGxvY2FsLW1lbW9yeSAqLwo+ID4+ICsgICAgICAg STkxNV9NRU1PUllfQ0xBU1NfREVWSUNFLAo+ID4+ICt9Owo+ID4+ICsKPiA+PiArLyoqCj4gPj4g KyAqIHN0cnVjdCBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzX2luc3RhbmNlIC0gSWRlbnRpZnkg cGFydGljdWxhciBtZW1vcnkgcmVnaW9uCj4gPj4gKyAqLwo+ID4+ICtzdHJ1Y3QgZHJtX2k5MTVf Z2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZSB7Cj4gPj4gKyAgICAgICAvKiogQG1lbW9yeV9jbGFz czogU2VlIGVudW0gZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzcyAqLwo+ID4+ICsgICAgICAgX191 MTYgbWVtb3J5X2NsYXNzOwo+ID4+ICsKPiA+PiArICAgICAgIC8qKiBAbWVtb3J5X2luc3RhbmNl OiBXaGljaCBpbnN0YW5jZSAqLwo+ID4+ICsgICAgICAgX191MTYgbWVtb3J5X2luc3RhbmNlOwo+ ID4+ICt9Owo+ID4+ICsKPiA+PiArLyoqCj4gPj4gKyAqIHN0cnVjdCBkcm1faTkxNV9tZW1vcnlf cmVnaW9uX2luZm8gLSBEZXNjcmliZXMgb25lIHJlZ2lvbiBhcyBrbm93biB0byB0aGUKPiA+PiAr ICogZHJpdmVyLgo+ID4+ICsgKgo+ID4+ICsgKiBOb3RlIHRoYXQgd2UgcmVzZXJ2ZSBzb21lIHN0 dWZmIGhlcmUgZm9yIHBvdGVudGlhbCBmdXR1cmUgd29yay4gQXMgYW4gZXhhbXBsZQo+ID4+ICsg KiB3ZSBtaWdodCB3YW50IGV4cG9zZSB0aGUgY2FwYWJpbGl0aWVzKHNlZSBAY2FwcykgZm9yIGEg Z2l2ZW4gcmVnaW9uLCB3aGljaAo+ID4+ICsgKiBjb3VsZCBpbmNsdWRlIHRoaW5ncyBsaWtlIGlm IHRoZSByZWdpb24gaXMgQ1BVIG1hcHBhYmxlL2FjY2Vzc2libGUsIHdoYXQgYXJlCj4gPj4gKyAq IHRoZSBzdXBwb3J0ZWQgbWFwcGluZyB0eXBlcyBldGMuCj4gPj4gKyAqCj4gPj4gKyAqIE5vdGUg dGhpcyBpcyB1c2luZyBib3RoIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVtIGFuZCBzdHJ1Y3Qg ZHJtX2k5MTVfcXVlcnkuCj4gPj4gKyAqIEZvciB0aGlzIG5ldyBxdWVyeSB3ZSBhcmUgYWRkaW5n IHRoZSBuZXcgcXVlcnkgaWQgRFJNX0k5MTVfUVVFUllfTUVNT1JZX1JFR0lPTlMKPiA+PiArICog YXQgJmRybV9pOTE1X3F1ZXJ5X2l0ZW0ucXVlcnlfaWQuCj4gPj4gKyAqLwo+ID4+ICtzdHJ1Y3Qg ZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHsKPiA+PiArICAgICAgIC8qKiBAcmVnaW9uOiBU aGUgY2xhc3M6aW5zdGFuY2UgcGFpciBlbmNvZGluZyAqLwo+ID4+ICsgICAgICAgc3RydWN0IGRy bV9pOTE1X2dlbV9tZW1vcnlfY2xhc3NfaW5zdGFuY2UgcmVnaW9uOwo+ID4+ICsKPiA+PiArICAg ICAgIC8qKiBAcGFkOiBNQlogKi8KPiA+PiArICAgICAgIF9fdTMyIHBhZDsKPiA+PiArCj4gPj4g KyAgICAgICAvKiogQGNhcHM6IE1CWiAqLwo+ID4+ICsgICAgICAgX191NjQgY2FwczsKPiA+PiAr Cj4gPj4gKyAgICAgICAvKiogQHByb2JlZF9zaXplOiBNZW1vcnkgcHJvYmVkIGJ5IHRoZSBkcml2 ZXIgKC0xID0gdW5rbm93bikgKi8KPiA+PiArICAgICAgIF9fdTY0IHByb2JlZF9zaXplOwo+ID4+ ICsKPiA+PiArICAgICAgIC8qKiBAdW5hbGxvY2F0ZWRfc2l6ZTogRXN0aW1hdGUgb2YgbWVtb3J5 IHJlbWFpbmluZyAoLTEgPSB1bmtub3duKSAqLwo+ID4+ICsgICAgICAgX191NjQgdW5hbGxvY2F0 ZWRfc2l6ZTsKPiA+PiArfTsKPiA+PiArCj4gPj4gKy8qKgo+ID4+ICsgKiBzdHJ1Y3QgZHJtX2k5 MTVfcXVlcnlfbWVtb3J5X3JlZ2lvbnMKPiA+PiArICoKPiA+PiArICogVGhlIHJlZ2lvbiBpbmZv IHF1ZXJ5IGVudW1lcmF0ZXMgYWxsIHJlZ2lvbnMga25vd24gdG8gdGhlIGRyaXZlciBieSBmaWxs aW5nCj4gPj4gKyAqIGluIGFuIGFycmF5IG9mIHN0cnVjdCBkcm1faTkxNV9tZW1vcnlfcmVnaW9u X2luZm8gc3RydWN0dXJlcy4KPiA+PiArICoKPiA+PiArICogRXhhbXBsZSBmb3IgZ2V0dGluZyB0 aGUgbGlzdCBvZiBzdXBwb3J0ZWQgcmVnaW9uczoKPiA+PiArICoKPiA+PiArICogLi4gY29kZS1i bG9jazo6IEMKPiA+PiArICoKPiA+PiArICogICAgIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9tZW1v cnlfcmVnaW9ucyAqaW5mbzsKPiA+PiArICogICAgIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVt IGl0ZW0gPSB7Cj4gPj4gKyAqICAgICAgICAgICAgIC5xdWVyeV9pZCA9IERSTV9JOTE1X1FVRVJZ X01FTU9SWV9SRUdJT05TOwo+ID4+ICsgKiAgICAgfTsKPiA+PiArICogICAgIHN0cnVjdCBkcm1f aTkxNV9xdWVyeSBxdWVyeSA9IHsKPiA+PiArICogICAgICAgICAgICAgLm51bV9pdGVtcyA9IDEs Cj4gPj4gKyAqICAgICAgICAgICAgIC5pdGVtc19wdHIgPSAodWludHB0cl90KSZpdGVtLAo+ID4+ ICsgKiAgICAgfTsKPiA+PiArICogICAgIGludCBlcnIsIGk7Cj4gPj4gKyAqCj4gPj4gKyAqICAg ICAvLyBGaXJzdCBxdWVyeSB0aGUgc2l6ZSBvZiB0aGUgYmxvYiB3ZSBuZWVkLCB0aGlzIG5lZWRz IHRvIGJlIGxhcmdlCj4gPj4gKyAqICAgICAvLyBlbm91Z2ggdG8gaG9sZCBvdXIgYXJyYXkgb2Yg cmVnaW9ucy4gVGhlIGtlcm5lbCB3aWxsIGZpbGwgb3V0IHRoZQo+ID4+ICsgKiAgICAgLy8gaXRl bS5sZW5ndGggZm9yIHVzLCB3aGljaCBpcyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHdlIG5lZWQuCj4g Pj4gKyAqICAgICBlcnIgPSBpb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfUVVFUlksICZxdWVyeSk7 Cj4gPj4gKyAqICAgICBpZiAoZXJyKSAuLi4KPiA+PiArICoKPiA+PiArICogICAgIGluZm8gPSBj YWxsb2MoMSwgaXRlbS5sZW5ndGgpOwo+ID4+ICsgKiAgICAgLy8gTm93IHRoYXQgd2UgYWxsb2Nh dGVkIHRoZSByZXF1aXJlZCBudW1iZXIgb2YgYnl0ZXMsIHdlIGNhbGwgdGhlIGlvY3RsCj4gPj4g KyAqICAgICAvLyBhZ2FpbiwgdGhpcyB0aW1lIHdpdGggdGhlIGRhdGFfcHRyIHBvaW50aW5nIHRv IG91ciBuZXdseSBhbGxvY2F0ZWQKPiA+PiArICogICAgIC8vIGJsb2IsIHdoaWNoIHRoZSBrZXJu ZWwgY2FuIHRoZW4gcG9wdWxhdGUgd2l0aCB0aGUgYWxsIHRoZSByZWdpb24gaW5mby4KPiA+PiAr ICogICAgIGl0ZW0uZGF0YV9wdHIgPSAodWludHB0cl90KSZpbmZvLAo+ID4+ICsgKgo+ID4+ICsg KiAgICAgZXJyID0gaW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X1FVRVJZLCAmcXVlcnkpOwo+ID4+ ICsgKiAgICAgaWYgKGVycikgLi4uCj4gPj4gKyAqCj4gPj4gKyAqICAgICAvLyBXZSBjYW4gbm93 IGFjY2VzcyBlYWNoIHJlZ2lvbiBpbiB0aGUgYXJyYXkKPiA+PiArICogICAgIGZvciAoaSA9IDA7 IGkgPCBpbmZvLT5udW1fcmVnaW9uczsgaSsrKSB7Cj4gPj4gKyAqICAgICAgICAgICAgIHN0cnVj dCBkcm1faTkxNV9tZW1vcnlfcmVnaW9uX2luZm8gbXIgPSBpbmZvLT5yZWdpb25zW2ldOwo+ID4+ ICsgKiAgICAgICAgICAgICB1MTYgY2xhc3MgPSBtci5yZWdpb24uY2xhc3M7Cj4gPj4gKyAqICAg ICAgICAgICAgIHUxNiBpbnN0YW5jZSA9IG1yLnJlZ2lvbi5pbnN0YW5jZTsKPiA+PiArICoKPiA+ PiArICogICAgICAgICAgICAgLi4uLgo+ID4+ICsgKiAgICAgfQo+ID4+ICsgKgo+ID4+ICsgKiAg ICAgZnJlZShpbmZvKTsKPiA+PiArICovCj4gPj4gK3N0cnVjdCBkcm1faTkxNV9xdWVyeV9tZW1v cnlfcmVnaW9ucyB7Cj4gPj4gKyAgICAgICAvKiogQG51bV9yZWdpb25zOiBOdW1iZXIgb2Ygc3Vw cG9ydGVkIHJlZ2lvbnMgKi8KPiA+PiArICAgICAgIF9fdTMyIG51bV9yZWdpb25zOwo+ID4+ICsK PiA+PiArICAgICAgIC8qKiBAcGFkOiBNQlogKi8KPiA+PiArICAgICAgIF9fdTMyIHBhZDsKPiA+ PiArCj4gPj4gKyAgICAgICAvKiogQHJlZ2lvbnM6IEluZm8gYWJvdXQgZWFjaCBzdXBwb3J0ZWQg cmVnaW9uICovCj4gPj4gKyAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZv IHJlZ2lvbnNbXTsKPiA+PiArfTsKPiA+PiArCj4gPj4gKyNkZWZpbmUgRFJNX0k5MTVfR0VNX0NS RUFURV9FWFQgICAgICAgICAgICAgICAgMHhkZWFkYmVhZgo+ID4+ICsjZGVmaW5lIERSTV9JT0NU TF9JOTE1X0dFTV9DUkVBVEVfRVhUICBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5 MTVfR0VNX0NSRUFURV9FWFQsIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dCkKPiA+Cj4g PiBIZXJlJ3MgYW5vdGhlciB0aG91Z2h0OiAgSW5zdGVhZCBvZiBidXJuaW5nIGEgbmV3IElPQ1RM IG51bWJlciwgc2hvdWxkCj4gPiB3ZSBqdXN0IHJlLXVzZSBEUk1fSTkxNV9HRU1fQ1JFQVRFPyAg VGhlIGRpZmZlcmVudCBzdHJ1Y3R1cmUgc2l6ZQo+ID4gc2hvdWxkIGxldCB1cyB0ZWxsIHRoZSB0 d28gYXBhcnQuCj4KPiBZZWFoLCBpdCB3YXMgZXhhY3RseSBsaWtlIHRoYXQgaW4gdGhlIG9yaWdp bmFsIHZlcnNpb25bMV0uIFNjcm9sbGluZwo+IHRocm91Z2ggdGhlIHJldmlldyBjb21tZW50cywg SSB0aGluayB0aGUgY29uY2VybiB3YXMgd2l0aCBhbiBvbGRlcgo+IGtlcm5lbCBqdXN0IHNpbGVu dGx5IGlnbm9yaW5nIHRoZSBleHRlbnNpb25zIHdpdGggbmV3IHVzZXJzcGFjZS4KPgo+IFsxXSBo dHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5vcmcvcGF0Y2gvNDA0NDU1Lz9zZXJpZXM9ODQz NDQmcmV2PTEKClllYWgsIEkgdGhpbmsgQ2hyaXMgaXMgcmlnaHQuICBJIGp1c3QgZHVnIHRocm91 Z2ggdGhlIGNvZGUgYW5kIHRoZXJlCnJlYWxseSBpcyBubyB3YXkgZm9yIHVzIHRvIHJlamVjdCBk aWZmZXJlbnQgc2l6ZWQgc3RydWN0czsgdGhleSBqdXN0CnNob3cgdXAgemVyby1leHRlbmRlZC4g IFRoYXQncyBhZ2dyYXZhdGluZy4KCi0tSmFzb24KCj4gPgo+ID4gLS1KYXNvbgo+ID4KPiA+Cj4g Pj4gKwo+ID4+ICsvKioKPiA+PiArICogc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0IC0g RXhpc3RpbmcgZ2VtX2NyZWF0ZSBiZWhhdmlvdXIsIHdpdGggYWRkZWQKPiA+PiArICogZXh0ZW5z aW9uIHN1cHBvcnQgdXNpbmcgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uCj4gPj4gKyAqCj4g Pj4gKyAqIE5vdGUgdGhhdCBpbiB0aGUgZnV0dXJlIHdlIHdhbnQgdG8gaGF2ZSBvdXIgYnVmZmVy IGZsYWdzIGhlcmUsIGF0IGxlYXN0IGZvcgo+ID4+ICsgKiB0aGUgc3R1ZmYgdGhhdCBpcyBpbW11 dGFibGUuIFByZXZpb3VzbHkgd2Ugd291bGQgaGF2ZSB0d28gaW9jdGxzLCBvbmUgdG8KPiA+PiAr ICogY3JlYXRlIHRoZSBvYmplY3Qgd2l0aCBnZW1fY3JlYXRlLCBhbmQgYW5vdGhlciB0byBhcHBs eSB2YXJpb3VzIHBhcmFtZXRlcnMsCj4gPj4gKyAqIGhvd2V2ZXIgdGhpcyBjcmVhdGVzIHNvbWUg YW1iaWd1aXR5IGZvciB0aGUgcGFyYW1zIHdoaWNoIGFyZSBjb25zaWRlcmVkCj4gPj4gKyAqIGlt bXV0YWJsZS4gQWxzbyBpbiBnZW5lcmFsIHdlJ3JlIHBoYXNpbmcgb3V0IHRoZSB2YXJpb3VzIFNF VC9HRVQgaW9jdGxzLgo+ID4+ICsgKi8KPiA+PiArc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVf ZXh0IHsKPiA+PiArICAgICAgIC8qKgo+ID4+ICsgICAgICAgICogQHNpemU6IFJlcXVlc3RlZCBz aXplIGZvciB0aGUgb2JqZWN0Lgo+ID4+ICsgICAgICAgICoKPiA+PiArICAgICAgICAqIFRoZSAo cGFnZS1hbGlnbmVkKSBhbGxvY2F0ZWQgc2l6ZSBmb3IgdGhlIG9iamVjdCB3aWxsIGJlIHJldHVy bmVkLgo+ID4+ICsgICAgICAgICoKPiA+PiArICAgICAgICAqIE5vdGUgdGhhdCBmb3Igc29tZSBk ZXZpY2VzIHdlIGhhdmUgbWlnaHQgaGF2ZSBmdXJ0aGVyIG1pbmltdW0KPiA+PiArICAgICAgICAq IHBhZ2Utc2l6ZSByZXN0cmljdGlvbnMobGFyZ2VyIHRoYW4gNEspLCBsaWtlIGZvciBkZXZpY2Ug bG9jYWwtbWVtb3J5Lgo+ID4+ICsgICAgICAgICogSG93ZXZlciBpbiBnZW5lcmFsIHRoZSBmaW5h bCBzaXplIGhlcmUgc2hvdWxkIGFsd2F5cyByZWZsZWN0IGFueQo+ID4+ICsgICAgICAgICogcm91 bmRpbmcgdXAsIGlmIGZvciBleGFtcGxlIHVzaW5nIHRoZSBJOTE1X0dFTV9DUkVBVEVfRVhUX01F TU9SWV9SRUdJT05TCj4gPj4gKyAgICAgICAgKiBleHRlbnNpb24gdG8gcGxhY2UgdGhlIG9iamVj dCBpbiBkZXZpY2UgbG9jYWwtbWVtb3J5Lgo+ID4+ICsgICAgICAgICovCj4gPj4gKyAgICAgICBf X3U2NCBzaXplOwo+ID4+ICsgICAgICAgLyoqCj4gPj4gKyAgICAgICAgKiBAaGFuZGxlOiBSZXR1 cm5lZCBoYW5kbGUgZm9yIHRoZSBvYmplY3QuCj4gPj4gKyAgICAgICAgKgo+ID4+ICsgICAgICAg ICogT2JqZWN0IGhhbmRsZXMgYXJlIG5vbnplcm8uCj4gPj4gKyAgICAgICAgKi8KPiA+PiArICAg ICAgIF9fdTMyIGhhbmRsZTsKPiA+PiArICAgICAgIC8qKiBAZmxhZ3M6IE1CWiAqLwo+ID4+ICsg ICAgICAgX191MzIgZmxhZ3M7Cj4gPj4gKyAgICAgICAvKioKPiA+PiArICAgICAgICAqIEBleHRl bnNpb25zOiBUaGUgY2hhaW4gb2YgZXh0ZW5zaW9ucyB0byBhcHBseSB0byB0aGlzIG9iamVjdC4K PiA+PiArICAgICAgICAqCj4gPj4gKyAgICAgICAgKiBUaGlzIHdpbGwgYmUgdXNlZnVsIGluIHRo ZSBmdXR1cmUgd2hlbiB3ZSBuZWVkIHRvIHN1cHBvcnQgc2V2ZXJhbAo+ID4+ICsgICAgICAgICog ZGlmZmVyZW50IGV4dGVuc2lvbnMsIGFuZCB3ZSBuZWVkIHRvIGFwcGx5IG1vcmUgdGhhbiBvbmUg d2hlbgo+ID4+ICsgICAgICAgICogY3JlYXRpbmcgdGhlIG9iamVjdC4gU2VlIHN0cnVjdCBpOTE1 X3VzZXJfZXh0ZW5zaW9uLgo+ID4+ICsgICAgICAgICoKPiA+PiArICAgICAgICAqIElmIHdlIGRv bid0IHN1cHBseSBhbnkgZXh0ZW5zaW9ucyB0aGVuIHdlIGdldCB0aGUgc2FtZSBvbGQgZ2VtX2Ny ZWF0ZQo+ID4+ICsgICAgICAgICogYmVoYXZpb3VyLgo+ID4+ICsgICAgICAgICoKPiA+PiArICAg ICAgICAqIEZvciBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9SWV9SRUdJT05TIHVzYWdlIHNlZQo+ ID4+ICsgICAgICAgICogc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0X21lbW9yeV9yZWdp b25zLgo+ID4+ICsgICAgICAgICovCj4gPj4gKyNkZWZpbmUgSTkxNV9HRU1fQ1JFQVRFX0VYVF9N RU1PUllfUkVHSU9OUyAwCj4gPj4gKyAgICAgICBfX3U2NCBleHRlbnNpb25zOwo+ID4+ICt9Owo+ ID4+ICsKPiA+PiArLyoqCj4gPj4gKyAqIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9t ZW1vcnlfcmVnaW9ucyAtIFRoZQo+ID4+ICsgKiBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9SWV9S RUdJT05TIGV4dGVuc2lvbi4KPiA+PiArICoKPiA+PiArICogU2V0IHRoZSBvYmplY3Qgd2l0aCB0 aGUgZGVzaXJlZCBzZXQgb2YgcGxhY2VtZW50cy9yZWdpb25zIGluIHByaW9yaXR5Cj4gPj4gKyAq IG9yZGVyLiBFYWNoIGVudHJ5IG11c3QgYmUgdW5pcXVlIGFuZCBzdXBwb3J0ZWQgYnkgdGhlIGRl dmljZS4KPiA+PiArICoKPiA+PiArICogVGhpcyBpcyBwcm92aWRlZCBhcyBhbiBhcnJheSBvZiBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZSwgb3IKPiA+PiArICogYW4g ZXF1aXZhbGVudCBsYXlvdXQgb2YgY2xhc3M6aW5zdGFuY2UgcGFpciBlbmNvZGluZ3MuIFNlZSBz dHJ1Y3QKPiA+PiArICogZHJtX2k5MTVfcXVlcnlfbWVtb3J5X3JlZ2lvbnMgYW5kIERSTV9JOTE1 X1FVRVJZX01FTU9SWV9SRUdJT05TIGZvciBob3cgdG8KPiA+PiArICogcXVlcnkgdGhlIHN1cHBv cnRlZCByZWdpb25zIGZvciBhIGRldmljZS4KPiA+PiArICoKPiA+PiArICogQXMgYW4gZXhhbXBs ZSwgb24gZGlzY3JldGUgZGV2aWNlcywgaWYgd2Ugd2lzaCB0byBzZXQgdGhlIHBsYWNlbWVudCBh cwo+ID4+ICsgKiBkZXZpY2UgbG9jYWwtbWVtb3J5IHdlIGNhbiBkbyBzb21ldGhpbmcgbGlrZToK PiA+PiArICoKPiA+PiArICogLi4gY29kZS1ibG9jazo6IEMKPiA+PiArICoKPiA+PiArICogICAg IHN0cnVjdCBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzX2luc3RhbmNlIHJlZ2lvbl9sbWVtID0g ewo+ID4+ICsgKiAgICAgICAgICAgICAgLm1lbW9yeV9jbGFzcyA9IEk5MTVfTUVNT1JZX0NMQVNT X0RFVklDRSwKPiA+PiArICogICAgICAgICAgICAgIC5tZW1vcnlfaW5zdGFuY2UgPSAwLAo+ID4+ ICsgKiAgICAgIH07Cj4gPj4gKyAqICAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0 X21lbW9yeV9yZWdpb25zIHJlZ2lvbnMgPSB7Cj4gPj4gKyAqICAgICAgICAgICAgICAuYmFzZSA9 IHsgLm5hbWUgPSBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9SWV9SRUdJT05TIH0sCj4gPj4gKyAq ICAgICAgICAgICAgICAucmVnaW9ucyA9ICh1aW50cHRyX3QpJnJlZ2lvbl9sbWVtLAo+ID4+ICsg KiAgICAgICAgICAgICAgLm51bV9yZWdpb25zID0gMSwKPiA+PiArICogICAgICB9Owo+ID4+ICsg KiAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dCBjcmVhdGVfZXh0ID0gewo+ID4+ ICsgKiAgICAgICAgICAgICAgLnNpemUgPSAxNiAqIFBBR0VfU0laRSwKPiA+PiArICogICAgICAg ICAgICAgIC5leHRlbnNpb25zID0gKHVpbnRwdHJfdCkmcmVnaW9ucywKPiA+PiArICogICAgICB9 Owo+ID4+ICsgKgo+ID4+ICsgKiAgICAgIGludCBlcnIgPSBpb2N0bChmZCwgRFJNX0lPQ1RMX0k5 MTVfR0VNX0NSRUFURV9FWFQsICZjcmVhdGVfZXh0KTsKPiA+PiArICogICAgICBpZiAoZXJyKSAu Li4KPiA+PiArICoKPiA+PiArICogQXQgd2hpY2ggcG9pbnQgd2UgZ2V0IHRoZSBvYmplY3QgaGFu ZGxlIGluICZkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC5oYW5kbGUsCj4gPj4gKyAqIGFsb25nIHdp dGggdGhlIGZpbmFsIG9iamVjdCBzaXplIGluICZkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC5zaXpl LCB3aGljaAo+ID4+ICsgKiBzaG91bGQgYWNjb3VudCBmb3IgYW55IHJvdW5kaW5nIHVwLCBpZiBy ZXF1aXJlZC4KPiA+PiArICovCj4gPj4gK3N0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9t ZW1vcnlfcmVnaW9ucyB7Cj4gPj4gKyAgICAgICAvKiogQGJhc2U6IEV4dGVuc2lvbiBsaW5rLiBT ZWUgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uICovCj4gPj4gKyAgICAgICBzdHJ1Y3QgaTkx NV91c2VyX2V4dGVuc2lvbiBiYXNlOwo+ID4+ICsKPiA+PiArICAgICAgIC8qKiBAcGFkOiBNQlog Ki8KPiA+PiArICAgICAgIF9fdTMyIHBhZDsKPiA+PiArICAgICAgIC8qKiBAbnVtX3JlZ2lvbnM6 IE51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgQHJlZ2lvbnMgYXJyYXkuICovCj4gPj4gKyAgICAg ICBfX3UzMiBudW1fcmVnaW9uczsKPiA+PiArICAgICAgIC8qKgo+ID4+ICsgICAgICAgICogQHJl Z2lvbnM6IFRoZSByZWdpb25zL3BsYWNlbWVudHMgYXJyYXkuCj4gPj4gKyAgICAgICAgKgo+ID4+ ICsgICAgICAgICogQW4gYXJyYXkgb2Ygc3RydWN0IGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3Nf aW5zdGFuY2UuCj4gPj4gKyAgICAgICAgKi8KPiA+PiArICAgICAgIF9fdTY0IHJlZ2lvbnM7Cj4g Pj4gK307Cj4gPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9s bWVtLnJzdCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdAo+ID4+IG5l dyBmaWxlIG1vZGUgMTAwNjQ0Cj4gPj4gaW5kZXggMDAwMDAwMDAwMDAwLi40NjJmMWVmZDkwMDMK PiA+PiAtLS0gL2Rldi9udWxsCj4gPj4gKysrIGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVf Z2VtX2xtZW0ucnN0Cj4gPj4gQEAgLTAsMCArMSwxMzAgQEAKPiA+PiArPT09PT09PT09PT09PT09 PT09PT09PT09PQo+ID4+ICtJOTE1IERHMS9MTUVNIFJGQyBTZWN0aW9uCj4gPj4gKz09PT09PT09 PT09PT09PT09PT09PT09PT0KPiA+PiArCj4gPj4gK1Vwc3RyZWFtIHBsYW4KPiA+PiArPT09PT09 PT09PT09PQo+ID4+ICtGb3IgdXBzdHJlYW0gdGhlIG92ZXJhbGwgcGxhbiBmb3IgbGFuZGluZyBh bGwgdGhlIERHMSBzdHVmZiBhbmQgdHVybmluZyBpdCBmb3IKPiA+PiArcmVhbCwgd2l0aCBhbGwg dGhlIHVBUEkgYml0cyBpczoKPiA+PiArCj4gPj4gKyogTWVyZ2UgYmFzaWMgSFcgZW5hYmxpbmcg b2YgREcxKHN0aWxsIHdpdGhvdXQgcGNpaWQpCj4gPj4gKyogTWVyZ2UgdGhlIHVBUEkgYml0cyBi ZWhpbmQgc3BlY2lhbCBDT05GSUdfQlJPS0VOKG9yIHNvKSBmbGFnCj4gPj4gKyAgICAgICAgKiBB dCB0aGlzIHBvaW50IHdlIGNhbiBzdGlsbCBtYWtlIGNoYW5nZXMsIGJ1dCBpbXBvcnRhbnRseSB0 aGlzIGxldHMgdXMKPiA+PiArICAgICAgICAgIHN0YXJ0IHJ1bm5pbmcgSUdUcyB3aGljaCBjYW4g dXRpbGl6ZSBsb2NhbC1tZW1vcnkgaW4gQ0kKPiA+PiArKiBDb252ZXJ0IG92ZXIgdG8gVFRNLCBt YWtlIHN1cmUgaXQgYWxsIGtlZXBzIHdvcmtpbmcuIFNvbWUgb2YgdGhlIHdvcmsgaXRlbXM6Cj4g Pj4gKyAgICAgICAgKiBUVE0gc2hyaW5rZXIgZm9yIGRpc2NyZXRlCj4gPj4gKyAgICAgICAgKiBk bWFfcmVzdl9sb2NraXRlbSBmb3IgZnVsbCBkbWFfcmVzdl9sb2NrLCBpLmUgbm90IGp1c3QgdHJ5 bG9jawo+ID4+ICsgICAgICAgICogVXNlIFRUTSBDUFUgcGFnZWZhdWx0IGhhbmRsZXIKPiA+PiAr ICAgICAgICAqIFJvdXRlIHNobWVtIGJhY2tlbmQgb3ZlciB0byBUVE0gU1lTVEVNIGZvciBkaXNj cmV0ZQo+ID4+ICsgICAgICAgICogVFRNIHB1cmdlYWJsZSBvYmplY3Qgc3VwcG9ydAo+ID4+ICsg ICAgICAgICogTW92ZSBpOTE1IGJ1ZGR5IGFsbG9jYXRvciBvdmVyIHRvIFRUTQo+ID4+ICsgICAg ICAgICogTU1BUCBpb2N0bCBtb2RlKHNlZSBgSTkxNSBNTUFQYF8pCj4gPj4gKyAgICAgICAgKiBT RVQvR0VUIGlvY3RsIGNhY2hpbmcoc2VlIGBJOTE1IFNFVC9HRVQgQ0FDSElOR2BfKQo+ID4+ICsq IEFkZCBwY2lpZCBmb3IgREcxIGFuZCB0dXJuIG9uIHVBUEkgZm9yIHJlYWwKPiA+PiArCj4gPj4g K05ldyBvYmplY3QgcGxhY2VtZW50IGFuZCByZWdpb24gcXVlcnkgdUFQSQo+ID4+ICs9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPiA+PiArU3RhcnRpbmcgZnJvbSBE RzEgd2UgbmVlZCB0byBnaXZlIHVzZXJzcGFjZSB0aGUgYWJpbGl0eSB0byBhbGxvY2F0ZSBidWZm ZXJzIGZyb20KPiA+PiArZGV2aWNlIGxvY2FsLW1lbW9yeS4gQ3VycmVudGx5IHRoZSBkcml2ZXIg c3VwcG9ydHMgZ2VtX2NyZWF0ZSwgd2hpY2ggY2FuIHBsYWNlCj4gPj4gK2J1ZmZlcnMgaW4gc3lz dGVtIG1lbW9yeSB2aWEgc2htZW0sIGFuZCB0aGUgdXN1YWwgYXNzb3J0bWVudCBvZiBvdGhlcgo+ ID4+ICtpbnRlcmZhY2VzLCBsaWtlIGR1bWIgYnVmZmVycyBhbmQgdXNlcnB0ci4KPiA+PiArCj4g Pj4gK1RvIHN1cHBvcnQgdGhpcyBuZXcgY2FwYWJpbGl0eSwgd2hpbGUgYWxzbyBwcm92aWRpbmcg YSB1QVBJIHdoaWNoIHdpbGwgd29yawo+ID4+ICtiZXlvbmQganVzdCBERzEsIHdlIHByb3Bvc2Ug dG8gb2ZmZXIgdGhyZWUgbmV3IGJpdHMgb2YgdUFQSToKPiA+PiArCj4gPj4gK0RSTV9JOTE1X1FV RVJZX01FTU9SWV9SRUdJT05TCj4gPj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g Pj4gK05ldyBxdWVyeSBJRCB3aGljaCBhbGxvd3MgdXNlcnNwYWNlIHRvIGRpc2NvdmVyIHRoZSBs aXN0IG9mIHN1cHBvcnRlZCBtZW1vcnkKPiA+PiArcmVnaW9ucyhsaWtlIHN5c3RlbS1tZW1vcnkg YW5kIGxvY2FsLW1lbW9yeSkgZm9yIGEgZ2l2ZW4gZGV2aWNlLiBXZSBpZGVudGlmeQo+ID4+ICtl YWNoIHJlZ2lvbiB3aXRoIGEgY2xhc3MgYW5kIGluc3RhbmNlIHBhaXIsIHdoaWNoIHNob3VsZCBi ZSB1bmlxdWUuIFRoZSBjbGFzcwo+ID4+ICtoZXJlIHdvdWxkIGJlIERFVklDRSBvciBTWVNURU0s IGFuZCB0aGUgaW5zdGFuY2Ugd291bGQgYmUgemVybywgb24gcGxhdGZvcm1zCj4gPj4gK2xpa2Ug REcxLgo+ID4+ICsKPiA+PiArU2lkZSBub3RlOiBUaGUgY2xhc3MvaW5zdGFuY2UgZGVzaWduIGlz IGJvcnJvd2VkIGZyb20gb3VyIGV4aXN0aW5nIGVuZ2luZSB1QVBJLAo+ID4+ICt3aGVyZSB3ZSBk ZXNjcmliZSBldmVyeSBwaHlzaWNhbCBlbmdpbmUgaW4gdGVybXMgb2YgaXRzIGNsYXNzLCBhbmQg dGhlCj4gPj4gK3BhcnRpY3VsYXIgaW5zdGFuY2UsIHNpbmNlIHdlIGNhbiBoYXZlIG1vcmUgdGhh biBvbmUgcGVyIGNsYXNzLgo+ID4+ICsKPiA+PiArSW4gdGhlIGZ1dHVyZSB3ZSBhbHNvIHdhbnQg dG8gZXhwb3NlIG1vcmUgaW5mb3JtYXRpb24gd2hpY2ggY2FuIGZ1cnRoZXIKPiA+PiArZGVzY3Jp YmUgdGhlIGNhcGFiaWxpdGllcyBvZiBhIHJlZ2lvbi4KPiA+PiArCj4gPj4gKy4uIGtlcm5lbC1k b2M6OiBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9nZW1fbG1lbS5oCj4gPj4gKyAgICAgICAg OmZ1bmN0aW9uczogZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzcyBkcm1faTkxNV9nZW1fbWVtb3J5 X2NsYXNzX2luc3RhbmNlIGRybV9pOTE1X21lbW9yeV9yZWdpb25faW5mbyBkcm1faTkxNV9xdWVy eV9tZW1vcnlfcmVnaW9ucwo+ID4+ICsKPiA+PiArR0VNX0NSRUFURV9FWFQKPiA+PiArLS0tLS0t LS0tLS0tLS0KPiA+PiArTmV3IGlvY3RsIHdoaWNoIGlzIGJhc2ljYWxseSBqdXN0IGdlbV9jcmVh dGUgYnV0IG5vdyBhbGxvd3MgdXNlcnNwYWNlIHRvCj4gPj4gK3Byb3ZpZGUgYSBjaGFpbiBvZiBw b3NzaWJsZSBleHRlbnNpb25zLiBOb3RlIHRoYXQgaWYgd2UgZG9uJ3QgcHJvdmlkZSBhbnkKPiA+ PiArZXh0ZW5zaW9ucyB0aGVuIHdlIGdldCB0aGUgZXhhY3Qgc2FtZSBiZWhhdmlvdXIgYXMgZ2Vt X2NyZWF0ZS4KPiA+PiArCj4gPj4gK1NpZGUgbm90ZTogV2UgYWxzbyBuZWVkIHRvIHN1cHBvcnQg UFhQWzFdIGluIHRoZSBuZWFyIGZ1dHVyZSwgd2hpY2ggaXMgYWxzbwo+ID4+ICthcHBsaWNhYmxl IHRvIGludGVncmF0ZWQgcGxhdGZvcm1zLCBhbmQgYWRkcyBpdHMgb3duIGdlbV9jcmVhdGVfZXh0 IGV4dGVuc2lvbiwKPiA+PiArd2hpY2ggYmFzaWNhbGx5IGxldHMgdXNlcnNwYWNlIG1hcmsgYSBi dWZmZXIgYXMgInByb3RlY3RlZCIuCj4gPj4gKwo+ID4+ICsuLiBrZXJuZWwtZG9jOjogRG9jdW1l bnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaAo+ID4+ICsgICAgICAgIDpmdW5jdGlvbnM6 IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0Cj4gPj4gKwo+ID4+ICtJOTE1X0dFTV9DUkVBVEVfRVhU X01FTU9SWV9SRUdJT05TCj4gPj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K PiA+PiArSW1wbGVtZW50ZWQgYXMgYW4gZXh0ZW5zaW9uIGZvciBnZW1fY3JlYXRlX2V4dCwgd2Ug d291bGQgbm93IGFsbG93IHVzZXJzcGFjZSB0bwo+ID4+ICtvcHRpb25hbGx5IHByb3ZpZGUgYW4g aW1tdXRhYmxlIGxpc3Qgb2YgcHJlZmVycmVkIHBsYWNlbWVudHMgYXQgY3JlYXRpb24gdGltZSwK PiA+PiAraW4gcHJpb3JpdHkgb3JkZXIsIGZvciBhIGdpdmVuIGJ1ZmZlciBvYmplY3QuICBGb3Ig dGhlIHBsYWNlbWVudHMgd2UgZXhwZWN0Cj4gPj4gK3RoZW0gZWFjaCB0byB1c2UgdGhlIGNsYXNz L2luc3RhbmNlIGVuY29kaW5nLCBhcyBwZXIgdGhlIG91dHB1dCBvZiB0aGUgcmVnaW9ucwo+ID4+ ICtxdWVyeS4gSGF2aW5nIHRoZSBsaXN0IGluIHByaW9yaXR5IG9yZGVyIHdpbGwgYmUgdXNlZnVs IGluIHRoZSBmdXR1cmUgd2hlbgo+ID4+ICtwbGFjaW5nIGFuIG9iamVjdCwgc2F5IGR1cmluZyBl dmljdGlvbi4KPiA+PiArCj4gPj4gKy4uIGtlcm5lbC1kb2M6OiBEb2N1bWVudGF0aW9uL2dwdS9y ZmMvaTkxNV9nZW1fbG1lbS5oCj4gPj4gKyAgICAgICAgOmZ1bmN0aW9uczogZHJtX2k5MTVfZ2Vt X2NyZWF0ZV9leHRfbWVtb3J5X3JlZ2lvbnMKPiA+PiArCj4gPj4gK09uZSBmYWlyIGNyaXRpY2lz bSBoZXJlIGlzIHRoYXQgdGhpcyBzZWVtcyBhIGxpdHRsZSBvdmVyLWVuZ2luZWVyZWRbMl0uIElm IHdlCj4gPj4gK2p1c3QgY29uc2lkZXIgREcxIHRoZW4geWVzLCBhIHNpbXBsZSBnZW1fY3JlYXRl LmZsYWdzIG9yIHNvbWV0aGluZyBpcyB0b3RhbGx5Cj4gPj4gK2FsbCB0aGF0J3MgbmVlZGVkIHRv IHRlbGwgdGhlIGtlcm5lbCB0byBhbGxvY2F0ZSB0aGUgYnVmZmVyIGluIGxvY2FsLW1lbW9yeSBv cgo+ID4+ICt3aGF0ZXZlci4gSG93ZXZlciBsb29raW5nIHRvIHRoZSBmdXR1cmUgd2UgbmVlZCB1 QVBJIHdoaWNoIGNhbiBhbHNvIHN1cHBvcnQKPiA+PiArdXBjb21pbmcgWGUgSFAgbXVsdGktdGls ZSBhcmNoaXRlY3R1cmUgaW4gYSBzYW5lIHdheSwgd2hlcmUgdGhlcmUgY2FuIGJlCj4gPj4gK211 bHRpcGxlIGxvY2FsLW1lbW9yeSBpbnN0YW5jZXMgZm9yIGEgZ2l2ZW4gZGV2aWNlLCBhbmQgc28g dXNpbmcgYm90aCBjbGFzcyBhbmQKPiA+PiAraW5zdGFuY2UgaW4gb3VyIHVBUEkgdG8gZGVzY3Jp YmUgcmVnaW9ucyBpcyBkZXNpcmFibGUsIGFsdGhvdWdoIHNwZWNpZmljYWxseQo+ID4+ICtmb3Ig REcxIGl0J3MgdW5pbnRlcmVzdGluZywgc2luY2Ugd2Ugb25seSBoYXZlIGEgc2luZ2xlIGxvY2Fs LW1lbW9yeSBpbnN0YW5jZS4KPiA+PiArCj4gPj4gK0V4aXN0aW5nIHVBUEkgaXNzdWVzCj4gPj4g Kz09PT09PT09PT09PT09PT09PT09Cj4gPj4gK1NvbWUgcG90ZW50aWFsIGlzc3VlcyB3ZSBzdGls bCBuZWVkIHRvIHJlc29sdmUuCj4gPj4gKwo+ID4+ICtJOTE1IE1NQVAKPiA+PiArLS0tLS0tLS0t Cj4gPj4gK0luIGk5MTUgdGhlcmUgYXJlIG11bHRpcGxlIHdheXMgdG8gTU1BUCBHRU0gb2JqZWN0 LCBpbmNsdWRpbmcgbWFwcGluZyB0aGUgc2FtZQo+ID4+ICtvYmplY3QgdXNpbmcgZGlmZmVyZW50 IG1hcHBpbmcgdHlwZXMoV0MgdnMgV0IpLCBpLmUgbXVsdGlwbGUgYWN0aXZlIG1tYXBzIHBlcgo+ ID4+ICtvYmplY3QuIFRUTSBleHBlY3RzIG9uZSBNTUFQIGF0IG1vc3QgZm9yIHRoZSBsaWZldGlt ZSBvZiB0aGUgb2JqZWN0LiBJZiBpdAo+ID4+ICt0dXJucyBvdXQgdGhhdCB3ZSBoYXZlIHRvIGJh Y2twZWRhbCBoZXJlLCB0aGVyZSBtaWdodCBiZSBzb21lIHBvdGVudGlhbAo+ID4+ICt1c2Vyc3Bh Y2UgZmFsbG91dC4KPiA+PiArCj4gPj4gK0k5MTUgU0VUL0dFVCBDQUNISU5HCj4gPj4gKy0tLS0t LS0tLS0tLS0tLS0tLS0tCj4gPj4gK0luIGk5MTUgd2UgaGF2ZSBzZXQvZ2V0X2NhY2hpbmcgaW9j dGwuIFRUTSBkb2Vzbid0IGxldCB1cyB0byBjaGFuZ2UgdGhpcywgYnV0Cj4gPj4gK0RHMSBkb2Vz bid0IHN1cHBvcnQgbm9uLXNub29wZWQgcGNpZSB0cmFuc2FjdGlvbnMsIHNvIHdlIGNhbiBqdXN0 IGFsd2F5cwo+ID4+ICthbGxvY2F0ZSBhcyBXQiBmb3Igc21lbS1vbmx5IGJ1ZmZlcnMuICBJZi93 aGVuIG91ciBodyBnYWlucyBzdXBwb3J0IGZvcgo+ID4+ICtub24tc25vb3BlZCBwY2llIHRyYW5z YWN0aW9ucyB0aGVuIHdlIG11c3QgZml4IHRoaXMgbW9kZSBhdCBhbGxvY2F0aW9uIHRpbWUgYXMK PiA+PiArYSBuZXcgR0VNIGV4dGVuc2lvbi4KPiA+PiArCj4gPj4gK1RoaXMgaXMgcmVsYXRlZCB0 byB0aGUgbW1hcCBwcm9ibGVtLCBiZWNhdXNlIGluIGdlbmVyYWwgKG1lYW5pbmcsIHdoZW4gd2Un cmUKPiA+PiArbm90IHJ1bm5pbmcgb24gaW50ZWwgY3B1cykgdGhlIGNwdSBtbWFwIG11c3Qgbm90 LCBldmVyLCBiZSBpbmNvbnNpc3RlbnQgd2l0aAo+ID4+ICthbGxvY2F0aW9uIG1vZGUuCj4gPj4g Kwo+ID4+ICtQb3NzaWJsZSBpZGVhIGlzIHRvIGxldCB0aGUga2VybmVsIHBpY2tzIHRoZSBtbWFw IG1vZGUgZm9yIHVzZXJzcGFjZSBmcm9tIHRoZQo+ID4+ICtmb2xsb3dpbmcgdGFibGU6Cj4gPj4g Kwo+ID4+ICtzbWVtLW9ubHk6IFdCLiBVc2Vyc3BhY2UgZG9lcyBub3QgbmVlZCB0byBjYWxsIGNs Zmx1c2guCj4gPj4gKwo+ID4+ICtzbWVtK2xtZW06IFdlIGFsbG9jYXRlIHVuY2FjaGVkIG1lbW9y eSwgYW5kIGdpdmUgdXNlcnNwYWNlIGEgV0MgbWFwcGluZwo+ID4+ICtmb3Igd2hlbiB0aGUgYnVm ZmVyIGlzIGluIHNtZW0sIGFuZCBXQyB3aGVuIGl0J3MgaW4gbG1lbS4gR1BVIGRvZXMgc25vb3Bl ZAo+ID4+ICthY2Nlc3MsIHdoaWNoIGlzIGEgYml0IGluZWZmaWNpZW50Lgo+ID4+ICsKPiA+PiAr bG1lbSBvbmx5OiBhbHdheXMgV0MKPiA+PiArCj4gPj4gK1RoaXMgbWVhbnMgb24gZGlzY3JldGUg eW91IG9ubHkgZ2V0IGEgc2luZ2xlIG1tYXAgbW9kZSwgYWxsIG90aGVycyBtdXN0IGJlCj4gPj4g K3JlamVjdGVkLiBUaGF0J3MgcHJvYmFibHkgZ29pbmcgdG8gYmUgYSBuZXcgZGVmYXVsdCBtb2Rl IG9yIHNvbWV0aGluZyBsaWtlCj4gPj4gK3RoYXQuCj4gPj4gKwo+ID4+ICtMaW5rcwo+ID4+ICs9 PT09PQo+ID4+ICtbMV0gaHR0cHM6Ly9wYXRjaHdvcmsuZnJlZWRlc2t0b3Aub3JnL3Nlcmllcy84 Njc5OC8KPiA+PiArCj4gPj4gK1syXSBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvbWVz YS9tZXNhLy0vbWVyZ2VfcmVxdWVzdHMvNTU5OSNub3RlXzU1Mzc5MQo+ID4+IGRpZmYgLS1naXQg YS9Eb2N1bWVudGF0aW9uL2dwdS9yZmMvaW5kZXgucnN0IGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZj L2luZGV4LnJzdAo+ID4+IGluZGV4IGE4NjIxZjdkYWI4Yi4uMDU2NzA0NDJjYTFiIDEwMDY0NAo+ ID4+IC0tLSBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QKPiA+PiArKysgYi9Eb2N1 bWVudGF0aW9uL2dwdS9yZmMvaW5kZXgucnN0Cj4gPj4gQEAgLTE1LDMgKzE1LDcgQEAgaG9zdCBz dWNoIGRvY3VtZW50YXRpb246Cj4gPj4KPiA+PiAgICogT25jZSB0aGUgY29kZSBoYXMgbGFuZGVk IG1vdmUgYWxsIHRoZSBkb2N1bWVudGF0aW9uIHRvIHRoZSByaWdodCBwbGFjZXMgaW4KPiA+PiAg ICAgdGhlIG1haW4gY29yZSwgaGVscGVyIG9yIGRyaXZlciBzZWN0aW9ucy4KPiA+PiArCj4gPj4g Ky4uIHRvY3RyZWU6Ogo+ID4+ICsKPiA+PiArICAgIGk5MTVfZ2VtX2xtZW0ucnN0Cj4gPj4gLS0K PiA+PiAyLjI2LjMKPiA+PgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWwK 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=-13.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS 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 68F33C43462 for ; Mon, 26 Apr 2021 16:25:24 +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 086D761185 for ; Mon, 26 Apr 2021 16:25:24 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 086D761185 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=jlekstrand.net 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 95D8E89F35; Mon, 26 Apr 2021 16:25:23 +0000 (UTC) Received: from mail-ed1-x52c.google.com (mail-ed1-x52c.google.com [IPv6:2a00:1450:4864:20::52c]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0D9486E02A for ; Mon, 26 Apr 2021 16:25:23 +0000 (UTC) Received: by mail-ed1-x52c.google.com with SMTP id h10so66435639edt.13 for ; Mon, 26 Apr 2021 09:25:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jlekstrand-net.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=8ieHkhAXrhTOxO14b/sZllUkX8uRhuG2aJLMqVvjxeE=; b=rpytPN0PPXYhPVrenf2QMGYeEugw+gCR44z9WneQd3hcJB/p7uJnUL4GsIKsJ9beo6 WARjGdRoPAIGQjLm5HoeVzIyB1A3ZzXnkX3wBAqyOAEdf4YWvd+3yyv3iwcsHw0Q3BjQ BMgQdjOKosjnYPDxgkMExMhJCHMswCxw/rXFaYon2+YCl/2pPxVjCK5gJO4IRT7owQAQ SHpBJIH/oNUa9i1p9pJu4vwrH0+ssaCKT0ZymZJHDZ7nC29wVDSxcHJYT+3/uhPY71MX EghIVV1CH/RBsNwEO8dQai/ENafoIfEbBNawBbrskJcw8uAQSTDe5AIcpMQCaVaUjf1K TY2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=8ieHkhAXrhTOxO14b/sZllUkX8uRhuG2aJLMqVvjxeE=; b=MdMerKtcezEzZCVD/9A7BpjBmpevKajiviB7Jq6SLLveXjCWxLgE7mDeGJFrNwv+4F rJSN99utRVS/K5QwLlJpIOPUWykK0eu3uFSj87ITJWlFNhF1wud6AA4vQaM3/IlgPvG2 fEk3EzUWIj/1ZZO704tXEHuQoAE4Mll8sWL42WuUxUxw4RLMW2x/hP23GaqlJSulzMqt iuZY1yQhkKxCsZK7AGmhbS2pDcU0TBXR9+pMQiDa9A8BxlfLZY4GsUR2xTLyingMVxnY 8iixycqlAufFoszwnUVY5f0i7DzgfKqS38isOu3Q1s/zI6s45DLN16qV0IjgtGkEdZeS SAtg== X-Gm-Message-State: AOAM533fG5plDak610ikZzyZkG6tZhfNNjbjKbtwCKnPumhDW2sMNSCL 70LNf65KOiScFsuITZEDSHHOqK3s7x7bkSjEBDpREA== X-Google-Smtp-Source: ABdhPJwQe+8fT0G8guKwRl+qU0m4XcOZeofCrFI8OgMQX7ADhAE3RkU3RDpDLqxiIwfUBg5Qt3RlW7n9oFmhJtkPqEk= X-Received: by 2002:a05:6402:22a4:: with SMTP id cx4mr22218486edb.232.1619454321361; Mon, 26 Apr 2021 09:25:21 -0700 (PDT) MIME-Version: 1.0 References: <20210426093901.28937-1-matthew.auld@intel.com> In-Reply-To: From: Jason Ekstrand Date: Mon, 26 Apr 2021 11:25:09 -0500 Message-ID: To: Matthew Auld Subject: Re: [Intel-gfx] [PATCH 1/9] drm/doc/rfc: i915 DG1 uAPI 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: Lionel Landwerlin , =?UTF-8?Q?Thomas_Hellstr=C3=B6m?= , Dave Airlie , Intel GFX , Maling list - DRI developers , Daniel Vetter , Kenneth Graunke , ML mesa-dev , Daniel Vetter Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" T24gTW9uLCBBcHIgMjYsIDIwMjEgYXQgMTA6MzEgQU0gTWF0dGhldyBBdWxkIDxtYXR0aGV3LmF1 bGRAaW50ZWwuY29tPiB3cm90ZToKPgo+IE9uIDI2LzA0LzIwMjEgMTY6MTEsIEphc29uIEVrc3Ry YW5kIHdyb3RlOgo+ID4gT24gTW9uLCBBcHIgMjYsIDIwMjEgYXQgNDo0MiBBTSBNYXR0aGV3IEF1 bGQgPG1hdHRoZXcuYXVsZEBpbnRlbC5jb20+IHdyb3RlOgo+ID4+Cj4gPj4gQWRkIGFuIGVudHJ5 IGZvciB0aGUgbmV3IHVBUEkgbmVlZGVkIGZvciBERzEuIEFsc28gYWRkIHRoZSBvdmVyYWxsCj4g Pj4gdXBzdHJlYW0gcGxhbiwgaW5jbHVkaW5nIHNvbWUgbm90ZXMgZm9yIHRoZSBUVE0gY29udmVy c2lvbi4KPiA+Pgo+ID4+IHYyKERhbmllbCk6Cj4gPj4gICAgLSBpbmNsdWRlIHRoZSBvdmVyYWxs IHVwc3RyZWFtaW5nIHBsYW4KPiA+PiAgICAtIGFkZCBhIG5vdGUgZm9yIG1tYXAsIHRoZXJlIGFy ZSBkaWZmZXJlbmNlcyBoZXJlIGZvciBUVE0gdnMgaTkxNQo+ID4+ICAgIC0gYnVuY2ggb2Ygb3Ro ZXIgc3VnZ2VzdGlvbnMgZnJvbSBEYW5pZWwKPiA+PiB2MzoKPiA+PiAgIChEYW5pZWwpCj4gPj4g ICAgLSBhZGQgYSBub3RlIGZvciBzZXQvZ2V0IGNhY2hpbmcgc3R1ZmYKPiA+PiAgICAtIGFkZCBz b21lIG1vcmUgZG9jcyBmb3IgZXhpc3RpbmcgcXVlcnkgYW5kIGV4dGVuc2lvbnMgc3R1ZmYKPiA+ PiAgICAtIGFkZCBhbiBhY3R1YWwgY29kZSBleGFtcGxlIGZvciByZWdpb25zIHF1ZXJ5Cj4gPj4g ICAgLSBidW5jaCBvZiBvdGhlciBzdHVmZgo+ID4+ICAgKEphc29uKQo+ID4+ICAgIC0gdUFQSSBj aGFuZ2UoISk6Cj4gPj4gICAgICAgICAgLSB0cnkgYSBzaW1wbGVyIGRlc2lnbiB3aXRoIHRoZSBw bGFjZW1lbnRzIGV4dGVuc2lvbgo+ID4+ICAgICAgICAgIC0gcmF0aGVyIHRoYW4gaGF2ZSBhIGdl bmVyaWMgc2V0cGFyYW0gd2hpY2ggY2FuIGNvdmVyIG11bHRpcGxlCj4gPj4gICAgICAgICAgICB1 c2UgY2FzZXMsIGhhdmUgZWFjaCBleHRlbnNpb24gYmUgcmVzcG9uc2libGUgZm9yIG9uZSB0aGlu Zwo+ID4+ICAgICAgICAgICAgb25seQo+ID4+IHY0Ogo+ID4+ICAgKERhbmllbCkKPiA+PiAgICAt IGFkZCBzb21lIG1vcmUgbm90ZXMgZm9yIHR0bSBjb252ZXJzaW9uCj4gPj4gICAgLSBidW5jaCBv ZiBvdGhlciBzdHVmZgo+ID4+ICAgKEphc29uKQo+ID4+ICAgIC0gdUFQSSBjaGFuZ2UoISk6Cj4g Pj4gICAgICAgICAgLSBkcm9wIGFsbCB0aGUgZXh0cmEgcnN2ZCBtZW1iZXJzIGZvciB0aGUgcmVn aW9uX3F1ZXJ5IGFuZAo+ID4+ICAgICAgICAgICAgcmVnaW9uX2luZm8sIGp1c3Qga2VlcCB0aGUg YmFyZSBtaW5pbXVtIG5lZWRlZCBmb3IgcGFkZGluZwo+ID4+Cj4gPj4gU2lnbmVkLW9mZi1ieTog TWF0dGhldyBBdWxkIDxtYXR0aGV3LmF1bGRAaW50ZWwuY29tPgo+ID4+IENjOiBKb29uYXMgTGFo dGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Cj4gPj4gQ2M6IFRob21hcyBI ZWxsc3Ryw7ZtIDx0aG9tYXMuaGVsbHN0cm9tQGxpbnV4LmludGVsLmNvbT4KPiA+PiBDYzogRGFu aWVsZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNvbT4KPiA+ PiBDYzogTGlvbmVsIExhbmR3ZXJsaW4gPGxpb25lbC5nLmxhbmR3ZXJsaW5AbGludXguaW50ZWwu Y29tPgo+ID4+IENjOiBKb24gQmxvb21maWVsZCA8am9uLmJsb29tZmllbGRAaW50ZWwuY29tPgo+ ID4+IENjOiBKb3JkYW4gSnVzdGVuIDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPgo+ID4+IENj OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KPiA+PiBDYzogS2VubmV0 aCBHcmF1bmtlIDxrZW5uZXRoQHdoaXRlY2FwZS5vcmc+Cj4gPj4gQ2M6IEphc29uIEVrc3RyYW5k IDxqYXNvbkBqbGVrc3RyYW5kLm5ldD4KPiA+PiBDYzogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAZ21h aWwuY29tPgo+ID4+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPj4gQ2M6 IG1lc2EtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4+IEFja2VkLWJ5OiBEYW5pZWwgVmV0 dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+ID4+IEFja2VkLWJ5OiBEYXZlIEFpcmxpZSA8 YWlybGllZEByZWRoYXQuY29tPgo+ID4+IC0tLQo+ID4+ICAgRG9jdW1lbnRhdGlvbi9ncHUvcmZj L2k5MTVfZ2VtX2xtZW0uaCAgIHwgMjEyICsrKysrKysrKysrKysrKysrKysrKysrKwo+ID4+ICAg RG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0ucnN0IHwgMTMwICsrKysrKysrKysr KysrKwo+ID4+ICAgRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2luZGV4LnJzdCAgICAgICAgIHwgICA0 ICsKPiA+PiAgIDMgZmlsZXMgY2hhbmdlZCwgMzQ2IGluc2VydGlvbnMoKykKPiA+PiAgIGNyZWF0 ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9nZW1fbG1lbS5oCj4gPj4g ICBjcmVhdGUgbW9kZSAxMDA2NDQgRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0u cnN0Cj4gPj4KPiA+PiBkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2Vt X2xtZW0uaCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLmgKPiA+PiBuZXcg ZmlsZSBtb2RlIDEwMDY0NAo+ID4+IGluZGV4IDAwMDAwMDAwMDAwMC4uN2VkNTliNjIwMmQ1Cj4g Pj4gLS0tIC9kZXYvbnVsbAo+ID4+ICsrKyBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dl bV9sbWVtLmgKPiA+PiBAQCAtMCwwICsxLDIxMiBAQAo+ID4+ICsvKioKPiA+PiArICogZW51bSBk cm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzIC0gU3VwcG9ydGVkIG1lbW9yeSBjbGFzc2VzCj4gPj4g KyAqLwo+ID4+ICtlbnVtIGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3Mgewo+ID4+ICsgICAgICAg LyoqIEBJOTE1X01FTU9SWV9DTEFTU19TWVNURU06IFN5c3RlbSBtZW1vcnkgKi8KPiA+PiArICAg ICAgIEk5MTVfTUVNT1JZX0NMQVNTX1NZU1RFTSA9IDAsCj4gPj4gKyAgICAgICAvKiogQEk5MTVf TUVNT1JZX0NMQVNTX0RFVklDRTogRGV2aWNlIGxvY2FsLW1lbW9yeSAqLwo+ID4+ICsgICAgICAg STkxNV9NRU1PUllfQ0xBU1NfREVWSUNFLAo+ID4+ICt9Owo+ID4+ICsKPiA+PiArLyoqCj4gPj4g KyAqIHN0cnVjdCBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzX2luc3RhbmNlIC0gSWRlbnRpZnkg cGFydGljdWxhciBtZW1vcnkgcmVnaW9uCj4gPj4gKyAqLwo+ID4+ICtzdHJ1Y3QgZHJtX2k5MTVf Z2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZSB7Cj4gPj4gKyAgICAgICAvKiogQG1lbW9yeV9jbGFz czogU2VlIGVudW0gZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzcyAqLwo+ID4+ICsgICAgICAgX191 MTYgbWVtb3J5X2NsYXNzOwo+ID4+ICsKPiA+PiArICAgICAgIC8qKiBAbWVtb3J5X2luc3RhbmNl OiBXaGljaCBpbnN0YW5jZSAqLwo+ID4+ICsgICAgICAgX191MTYgbWVtb3J5X2luc3RhbmNlOwo+ ID4+ICt9Owo+ID4+ICsKPiA+PiArLyoqCj4gPj4gKyAqIHN0cnVjdCBkcm1faTkxNV9tZW1vcnlf cmVnaW9uX2luZm8gLSBEZXNjcmliZXMgb25lIHJlZ2lvbiBhcyBrbm93biB0byB0aGUKPiA+PiAr ICogZHJpdmVyLgo+ID4+ICsgKgo+ID4+ICsgKiBOb3RlIHRoYXQgd2UgcmVzZXJ2ZSBzb21lIHN0 dWZmIGhlcmUgZm9yIHBvdGVudGlhbCBmdXR1cmUgd29yay4gQXMgYW4gZXhhbXBsZQo+ID4+ICsg KiB3ZSBtaWdodCB3YW50IGV4cG9zZSB0aGUgY2FwYWJpbGl0aWVzKHNlZSBAY2FwcykgZm9yIGEg Z2l2ZW4gcmVnaW9uLCB3aGljaAo+ID4+ICsgKiBjb3VsZCBpbmNsdWRlIHRoaW5ncyBsaWtlIGlm IHRoZSByZWdpb24gaXMgQ1BVIG1hcHBhYmxlL2FjY2Vzc2libGUsIHdoYXQgYXJlCj4gPj4gKyAq IHRoZSBzdXBwb3J0ZWQgbWFwcGluZyB0eXBlcyBldGMuCj4gPj4gKyAqCj4gPj4gKyAqIE5vdGUg dGhpcyBpcyB1c2luZyBib3RoIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVtIGFuZCBzdHJ1Y3Qg ZHJtX2k5MTVfcXVlcnkuCj4gPj4gKyAqIEZvciB0aGlzIG5ldyBxdWVyeSB3ZSBhcmUgYWRkaW5n IHRoZSBuZXcgcXVlcnkgaWQgRFJNX0k5MTVfUVVFUllfTUVNT1JZX1JFR0lPTlMKPiA+PiArICog YXQgJmRybV9pOTE1X3F1ZXJ5X2l0ZW0ucXVlcnlfaWQuCj4gPj4gKyAqLwo+ID4+ICtzdHJ1Y3Qg ZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZvIHsKPiA+PiArICAgICAgIC8qKiBAcmVnaW9uOiBU aGUgY2xhc3M6aW5zdGFuY2UgcGFpciBlbmNvZGluZyAqLwo+ID4+ICsgICAgICAgc3RydWN0IGRy bV9pOTE1X2dlbV9tZW1vcnlfY2xhc3NfaW5zdGFuY2UgcmVnaW9uOwo+ID4+ICsKPiA+PiArICAg ICAgIC8qKiBAcGFkOiBNQlogKi8KPiA+PiArICAgICAgIF9fdTMyIHBhZDsKPiA+PiArCj4gPj4g KyAgICAgICAvKiogQGNhcHM6IE1CWiAqLwo+ID4+ICsgICAgICAgX191NjQgY2FwczsKPiA+PiAr Cj4gPj4gKyAgICAgICAvKiogQHByb2JlZF9zaXplOiBNZW1vcnkgcHJvYmVkIGJ5IHRoZSBkcml2 ZXIgKC0xID0gdW5rbm93bikgKi8KPiA+PiArICAgICAgIF9fdTY0IHByb2JlZF9zaXplOwo+ID4+ ICsKPiA+PiArICAgICAgIC8qKiBAdW5hbGxvY2F0ZWRfc2l6ZTogRXN0aW1hdGUgb2YgbWVtb3J5 IHJlbWFpbmluZyAoLTEgPSB1bmtub3duKSAqLwo+ID4+ICsgICAgICAgX191NjQgdW5hbGxvY2F0 ZWRfc2l6ZTsKPiA+PiArfTsKPiA+PiArCj4gPj4gKy8qKgo+ID4+ICsgKiBzdHJ1Y3QgZHJtX2k5 MTVfcXVlcnlfbWVtb3J5X3JlZ2lvbnMKPiA+PiArICoKPiA+PiArICogVGhlIHJlZ2lvbiBpbmZv IHF1ZXJ5IGVudW1lcmF0ZXMgYWxsIHJlZ2lvbnMga25vd24gdG8gdGhlIGRyaXZlciBieSBmaWxs aW5nCj4gPj4gKyAqIGluIGFuIGFycmF5IG9mIHN0cnVjdCBkcm1faTkxNV9tZW1vcnlfcmVnaW9u X2luZm8gc3RydWN0dXJlcy4KPiA+PiArICoKPiA+PiArICogRXhhbXBsZSBmb3IgZ2V0dGluZyB0 aGUgbGlzdCBvZiBzdXBwb3J0ZWQgcmVnaW9uczoKPiA+PiArICoKPiA+PiArICogLi4gY29kZS1i bG9jazo6IEMKPiA+PiArICoKPiA+PiArICogICAgIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9tZW1v cnlfcmVnaW9ucyAqaW5mbzsKPiA+PiArICogICAgIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVt IGl0ZW0gPSB7Cj4gPj4gKyAqICAgICAgICAgICAgIC5xdWVyeV9pZCA9IERSTV9JOTE1X1FVRVJZ X01FTU9SWV9SRUdJT05TOwo+ID4+ICsgKiAgICAgfTsKPiA+PiArICogICAgIHN0cnVjdCBkcm1f aTkxNV9xdWVyeSBxdWVyeSA9IHsKPiA+PiArICogICAgICAgICAgICAgLm51bV9pdGVtcyA9IDEs Cj4gPj4gKyAqICAgICAgICAgICAgIC5pdGVtc19wdHIgPSAodWludHB0cl90KSZpdGVtLAo+ID4+ ICsgKiAgICAgfTsKPiA+PiArICogICAgIGludCBlcnIsIGk7Cj4gPj4gKyAqCj4gPj4gKyAqICAg ICAvLyBGaXJzdCBxdWVyeSB0aGUgc2l6ZSBvZiB0aGUgYmxvYiB3ZSBuZWVkLCB0aGlzIG5lZWRz IHRvIGJlIGxhcmdlCj4gPj4gKyAqICAgICAvLyBlbm91Z2ggdG8gaG9sZCBvdXIgYXJyYXkgb2Yg cmVnaW9ucy4gVGhlIGtlcm5lbCB3aWxsIGZpbGwgb3V0IHRoZQo+ID4+ICsgKiAgICAgLy8gaXRl bS5sZW5ndGggZm9yIHVzLCB3aGljaCBpcyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHdlIG5lZWQuCj4g Pj4gKyAqICAgICBlcnIgPSBpb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfUVVFUlksICZxdWVyeSk7 Cj4gPj4gKyAqICAgICBpZiAoZXJyKSAuLi4KPiA+PiArICoKPiA+PiArICogICAgIGluZm8gPSBj YWxsb2MoMSwgaXRlbS5sZW5ndGgpOwo+ID4+ICsgKiAgICAgLy8gTm93IHRoYXQgd2UgYWxsb2Nh dGVkIHRoZSByZXF1aXJlZCBudW1iZXIgb2YgYnl0ZXMsIHdlIGNhbGwgdGhlIGlvY3RsCj4gPj4g KyAqICAgICAvLyBhZ2FpbiwgdGhpcyB0aW1lIHdpdGggdGhlIGRhdGFfcHRyIHBvaW50aW5nIHRv IG91ciBuZXdseSBhbGxvY2F0ZWQKPiA+PiArICogICAgIC8vIGJsb2IsIHdoaWNoIHRoZSBrZXJu ZWwgY2FuIHRoZW4gcG9wdWxhdGUgd2l0aCB0aGUgYWxsIHRoZSByZWdpb24gaW5mby4KPiA+PiAr ICogICAgIGl0ZW0uZGF0YV9wdHIgPSAodWludHB0cl90KSZpbmZvLAo+ID4+ICsgKgo+ID4+ICsg KiAgICAgZXJyID0gaW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X1FVRVJZLCAmcXVlcnkpOwo+ID4+ ICsgKiAgICAgaWYgKGVycikgLi4uCj4gPj4gKyAqCj4gPj4gKyAqICAgICAvLyBXZSBjYW4gbm93 IGFjY2VzcyBlYWNoIHJlZ2lvbiBpbiB0aGUgYXJyYXkKPiA+PiArICogICAgIGZvciAoaSA9IDA7 IGkgPCBpbmZvLT5udW1fcmVnaW9uczsgaSsrKSB7Cj4gPj4gKyAqICAgICAgICAgICAgIHN0cnVj dCBkcm1faTkxNV9tZW1vcnlfcmVnaW9uX2luZm8gbXIgPSBpbmZvLT5yZWdpb25zW2ldOwo+ID4+ ICsgKiAgICAgICAgICAgICB1MTYgY2xhc3MgPSBtci5yZWdpb24uY2xhc3M7Cj4gPj4gKyAqICAg ICAgICAgICAgIHUxNiBpbnN0YW5jZSA9IG1yLnJlZ2lvbi5pbnN0YW5jZTsKPiA+PiArICoKPiA+ PiArICogICAgICAgICAgICAgLi4uLgo+ID4+ICsgKiAgICAgfQo+ID4+ICsgKgo+ID4+ICsgKiAg ICAgZnJlZShpbmZvKTsKPiA+PiArICovCj4gPj4gK3N0cnVjdCBkcm1faTkxNV9xdWVyeV9tZW1v cnlfcmVnaW9ucyB7Cj4gPj4gKyAgICAgICAvKiogQG51bV9yZWdpb25zOiBOdW1iZXIgb2Ygc3Vw cG9ydGVkIHJlZ2lvbnMgKi8KPiA+PiArICAgICAgIF9fdTMyIG51bV9yZWdpb25zOwo+ID4+ICsK PiA+PiArICAgICAgIC8qKiBAcGFkOiBNQlogKi8KPiA+PiArICAgICAgIF9fdTMyIHBhZDsKPiA+ PiArCj4gPj4gKyAgICAgICAvKiogQHJlZ2lvbnM6IEluZm8gYWJvdXQgZWFjaCBzdXBwb3J0ZWQg cmVnaW9uICovCj4gPj4gKyAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfbWVtb3J5X3JlZ2lvbl9pbmZv IHJlZ2lvbnNbXTsKPiA+PiArfTsKPiA+PiArCj4gPj4gKyNkZWZpbmUgRFJNX0k5MTVfR0VNX0NS RUFURV9FWFQgICAgICAgICAgICAgICAgMHhkZWFkYmVhZgo+ID4+ICsjZGVmaW5lIERSTV9JT0NU TF9JOTE1X0dFTV9DUkVBVEVfRVhUICBEUk1fSU9XUihEUk1fQ09NTUFORF9CQVNFICsgRFJNX0k5 MTVfR0VNX0NSRUFURV9FWFQsIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dCkKPiA+Cj4g PiBIZXJlJ3MgYW5vdGhlciB0aG91Z2h0OiAgSW5zdGVhZCBvZiBidXJuaW5nIGEgbmV3IElPQ1RM IG51bWJlciwgc2hvdWxkCj4gPiB3ZSBqdXN0IHJlLXVzZSBEUk1fSTkxNV9HRU1fQ1JFQVRFPyAg VGhlIGRpZmZlcmVudCBzdHJ1Y3R1cmUgc2l6ZQo+ID4gc2hvdWxkIGxldCB1cyB0ZWxsIHRoZSB0 d28gYXBhcnQuCj4KPiBZZWFoLCBpdCB3YXMgZXhhY3RseSBsaWtlIHRoYXQgaW4gdGhlIG9yaWdp bmFsIHZlcnNpb25bMV0uIFNjcm9sbGluZwo+IHRocm91Z2ggdGhlIHJldmlldyBjb21tZW50cywg SSB0aGluayB0aGUgY29uY2VybiB3YXMgd2l0aCBhbiBvbGRlcgo+IGtlcm5lbCBqdXN0IHNpbGVu dGx5IGlnbm9yaW5nIHRoZSBleHRlbnNpb25zIHdpdGggbmV3IHVzZXJzcGFjZS4KPgo+IFsxXSBo dHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5vcmcvcGF0Y2gvNDA0NDU1Lz9zZXJpZXM9ODQz NDQmcmV2PTEKClllYWgsIEkgdGhpbmsgQ2hyaXMgaXMgcmlnaHQuICBJIGp1c3QgZHVnIHRocm91 Z2ggdGhlIGNvZGUgYW5kIHRoZXJlCnJlYWxseSBpcyBubyB3YXkgZm9yIHVzIHRvIHJlamVjdCBk aWZmZXJlbnQgc2l6ZWQgc3RydWN0czsgdGhleSBqdXN0CnNob3cgdXAgemVyby1leHRlbmRlZC4g IFRoYXQncyBhZ2dyYXZhdGluZy4KCi0tSmFzb24KCj4gPgo+ID4gLS1KYXNvbgo+ID4KPiA+Cj4g Pj4gKwo+ID4+ICsvKioKPiA+PiArICogc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0IC0g RXhpc3RpbmcgZ2VtX2NyZWF0ZSBiZWhhdmlvdXIsIHdpdGggYWRkZWQKPiA+PiArICogZXh0ZW5z aW9uIHN1cHBvcnQgdXNpbmcgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uCj4gPj4gKyAqCj4g Pj4gKyAqIE5vdGUgdGhhdCBpbiB0aGUgZnV0dXJlIHdlIHdhbnQgdG8gaGF2ZSBvdXIgYnVmZmVy IGZsYWdzIGhlcmUsIGF0IGxlYXN0IGZvcgo+ID4+ICsgKiB0aGUgc3R1ZmYgdGhhdCBpcyBpbW11 dGFibGUuIFByZXZpb3VzbHkgd2Ugd291bGQgaGF2ZSB0d28gaW9jdGxzLCBvbmUgdG8KPiA+PiAr ICogY3JlYXRlIHRoZSBvYmplY3Qgd2l0aCBnZW1fY3JlYXRlLCBhbmQgYW5vdGhlciB0byBhcHBs eSB2YXJpb3VzIHBhcmFtZXRlcnMsCj4gPj4gKyAqIGhvd2V2ZXIgdGhpcyBjcmVhdGVzIHNvbWUg YW1iaWd1aXR5IGZvciB0aGUgcGFyYW1zIHdoaWNoIGFyZSBjb25zaWRlcmVkCj4gPj4gKyAqIGlt bXV0YWJsZS4gQWxzbyBpbiBnZW5lcmFsIHdlJ3JlIHBoYXNpbmcgb3V0IHRoZSB2YXJpb3VzIFNF VC9HRVQgaW9jdGxzLgo+ID4+ICsgKi8KPiA+PiArc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVf ZXh0IHsKPiA+PiArICAgICAgIC8qKgo+ID4+ICsgICAgICAgICogQHNpemU6IFJlcXVlc3RlZCBz aXplIGZvciB0aGUgb2JqZWN0Lgo+ID4+ICsgICAgICAgICoKPiA+PiArICAgICAgICAqIFRoZSAo cGFnZS1hbGlnbmVkKSBhbGxvY2F0ZWQgc2l6ZSBmb3IgdGhlIG9iamVjdCB3aWxsIGJlIHJldHVy bmVkLgo+ID4+ICsgICAgICAgICoKPiA+PiArICAgICAgICAqIE5vdGUgdGhhdCBmb3Igc29tZSBk ZXZpY2VzIHdlIGhhdmUgbWlnaHQgaGF2ZSBmdXJ0aGVyIG1pbmltdW0KPiA+PiArICAgICAgICAq IHBhZ2Utc2l6ZSByZXN0cmljdGlvbnMobGFyZ2VyIHRoYW4gNEspLCBsaWtlIGZvciBkZXZpY2Ug bG9jYWwtbWVtb3J5Lgo+ID4+ICsgICAgICAgICogSG93ZXZlciBpbiBnZW5lcmFsIHRoZSBmaW5h bCBzaXplIGhlcmUgc2hvdWxkIGFsd2F5cyByZWZsZWN0IGFueQo+ID4+ICsgICAgICAgICogcm91 bmRpbmcgdXAsIGlmIGZvciBleGFtcGxlIHVzaW5nIHRoZSBJOTE1X0dFTV9DUkVBVEVfRVhUX01F TU9SWV9SRUdJT05TCj4gPj4gKyAgICAgICAgKiBleHRlbnNpb24gdG8gcGxhY2UgdGhlIG9iamVj dCBpbiBkZXZpY2UgbG9jYWwtbWVtb3J5Lgo+ID4+ICsgICAgICAgICovCj4gPj4gKyAgICAgICBf X3U2NCBzaXplOwo+ID4+ICsgICAgICAgLyoqCj4gPj4gKyAgICAgICAgKiBAaGFuZGxlOiBSZXR1 cm5lZCBoYW5kbGUgZm9yIHRoZSBvYmplY3QuCj4gPj4gKyAgICAgICAgKgo+ID4+ICsgICAgICAg ICogT2JqZWN0IGhhbmRsZXMgYXJlIG5vbnplcm8uCj4gPj4gKyAgICAgICAgKi8KPiA+PiArICAg ICAgIF9fdTMyIGhhbmRsZTsKPiA+PiArICAgICAgIC8qKiBAZmxhZ3M6IE1CWiAqLwo+ID4+ICsg ICAgICAgX191MzIgZmxhZ3M7Cj4gPj4gKyAgICAgICAvKioKPiA+PiArICAgICAgICAqIEBleHRl bnNpb25zOiBUaGUgY2hhaW4gb2YgZXh0ZW5zaW9ucyB0byBhcHBseSB0byB0aGlzIG9iamVjdC4K PiA+PiArICAgICAgICAqCj4gPj4gKyAgICAgICAgKiBUaGlzIHdpbGwgYmUgdXNlZnVsIGluIHRo ZSBmdXR1cmUgd2hlbiB3ZSBuZWVkIHRvIHN1cHBvcnQgc2V2ZXJhbAo+ID4+ICsgICAgICAgICog ZGlmZmVyZW50IGV4dGVuc2lvbnMsIGFuZCB3ZSBuZWVkIHRvIGFwcGx5IG1vcmUgdGhhbiBvbmUg d2hlbgo+ID4+ICsgICAgICAgICogY3JlYXRpbmcgdGhlIG9iamVjdC4gU2VlIHN0cnVjdCBpOTE1 X3VzZXJfZXh0ZW5zaW9uLgo+ID4+ICsgICAgICAgICoKPiA+PiArICAgICAgICAqIElmIHdlIGRv bid0IHN1cHBseSBhbnkgZXh0ZW5zaW9ucyB0aGVuIHdlIGdldCB0aGUgc2FtZSBvbGQgZ2VtX2Ny ZWF0ZQo+ID4+ICsgICAgICAgICogYmVoYXZpb3VyLgo+ID4+ICsgICAgICAgICoKPiA+PiArICAg ICAgICAqIEZvciBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9SWV9SRUdJT05TIHVzYWdlIHNlZQo+ ID4+ICsgICAgICAgICogc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0X21lbW9yeV9yZWdp b25zLgo+ID4+ICsgICAgICAgICovCj4gPj4gKyNkZWZpbmUgSTkxNV9HRU1fQ1JFQVRFX0VYVF9N RU1PUllfUkVHSU9OUyAwCj4gPj4gKyAgICAgICBfX3U2NCBleHRlbnNpb25zOwo+ID4+ICt9Owo+ ID4+ICsKPiA+PiArLyoqCj4gPj4gKyAqIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9t ZW1vcnlfcmVnaW9ucyAtIFRoZQo+ID4+ICsgKiBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9SWV9S RUdJT05TIGV4dGVuc2lvbi4KPiA+PiArICoKPiA+PiArICogU2V0IHRoZSBvYmplY3Qgd2l0aCB0 aGUgZGVzaXJlZCBzZXQgb2YgcGxhY2VtZW50cy9yZWdpb25zIGluIHByaW9yaXR5Cj4gPj4gKyAq IG9yZGVyLiBFYWNoIGVudHJ5IG11c3QgYmUgdW5pcXVlIGFuZCBzdXBwb3J0ZWQgYnkgdGhlIGRl dmljZS4KPiA+PiArICoKPiA+PiArICogVGhpcyBpcyBwcm92aWRlZCBhcyBhbiBhcnJheSBvZiBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzc19pbnN0YW5jZSwgb3IKPiA+PiArICogYW4g ZXF1aXZhbGVudCBsYXlvdXQgb2YgY2xhc3M6aW5zdGFuY2UgcGFpciBlbmNvZGluZ3MuIFNlZSBz dHJ1Y3QKPiA+PiArICogZHJtX2k5MTVfcXVlcnlfbWVtb3J5X3JlZ2lvbnMgYW5kIERSTV9JOTE1 X1FVRVJZX01FTU9SWV9SRUdJT05TIGZvciBob3cgdG8KPiA+PiArICogcXVlcnkgdGhlIHN1cHBv cnRlZCByZWdpb25zIGZvciBhIGRldmljZS4KPiA+PiArICoKPiA+PiArICogQXMgYW4gZXhhbXBs ZSwgb24gZGlzY3JldGUgZGV2aWNlcywgaWYgd2Ugd2lzaCB0byBzZXQgdGhlIHBsYWNlbWVudCBh cwo+ID4+ICsgKiBkZXZpY2UgbG9jYWwtbWVtb3J5IHdlIGNhbiBkbyBzb21ldGhpbmcgbGlrZToK PiA+PiArICoKPiA+PiArICogLi4gY29kZS1ibG9jazo6IEMKPiA+PiArICoKPiA+PiArICogICAg IHN0cnVjdCBkcm1faTkxNV9nZW1fbWVtb3J5X2NsYXNzX2luc3RhbmNlIHJlZ2lvbl9sbWVtID0g ewo+ID4+ICsgKiAgICAgICAgICAgICAgLm1lbW9yeV9jbGFzcyA9IEk5MTVfTUVNT1JZX0NMQVNT X0RFVklDRSwKPiA+PiArICogICAgICAgICAgICAgIC5tZW1vcnlfaW5zdGFuY2UgPSAwLAo+ID4+ ICsgKiAgICAgIH07Cj4gPj4gKyAqICAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0 X21lbW9yeV9yZWdpb25zIHJlZ2lvbnMgPSB7Cj4gPj4gKyAqICAgICAgICAgICAgICAuYmFzZSA9 IHsgLm5hbWUgPSBJOTE1X0dFTV9DUkVBVEVfRVhUX01FTU9SWV9SRUdJT05TIH0sCj4gPj4gKyAq ICAgICAgICAgICAgICAucmVnaW9ucyA9ICh1aW50cHRyX3QpJnJlZ2lvbl9sbWVtLAo+ID4+ICsg KiAgICAgICAgICAgICAgLm51bV9yZWdpb25zID0gMSwKPiA+PiArICogICAgICB9Owo+ID4+ICsg KiAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dCBjcmVhdGVfZXh0ID0gewo+ID4+ ICsgKiAgICAgICAgICAgICAgLnNpemUgPSAxNiAqIFBBR0VfU0laRSwKPiA+PiArICogICAgICAg ICAgICAgIC5leHRlbnNpb25zID0gKHVpbnRwdHJfdCkmcmVnaW9ucywKPiA+PiArICogICAgICB9 Owo+ID4+ICsgKgo+ID4+ICsgKiAgICAgIGludCBlcnIgPSBpb2N0bChmZCwgRFJNX0lPQ1RMX0k5 MTVfR0VNX0NSRUFURV9FWFQsICZjcmVhdGVfZXh0KTsKPiA+PiArICogICAgICBpZiAoZXJyKSAu Li4KPiA+PiArICoKPiA+PiArICogQXQgd2hpY2ggcG9pbnQgd2UgZ2V0IHRoZSBvYmplY3QgaGFu ZGxlIGluICZkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC5oYW5kbGUsCj4gPj4gKyAqIGFsb25nIHdp dGggdGhlIGZpbmFsIG9iamVjdCBzaXplIGluICZkcm1faTkxNV9nZW1fY3JlYXRlX2V4dC5zaXpl LCB3aGljaAo+ID4+ICsgKiBzaG91bGQgYWNjb3VudCBmb3IgYW55IHJvdW5kaW5nIHVwLCBpZiBy ZXF1aXJlZC4KPiA+PiArICovCj4gPj4gK3N0cnVjdCBkcm1faTkxNV9nZW1fY3JlYXRlX2V4dF9t ZW1vcnlfcmVnaW9ucyB7Cj4gPj4gKyAgICAgICAvKiogQGJhc2U6IEV4dGVuc2lvbiBsaW5rLiBT ZWUgc3RydWN0IGk5MTVfdXNlcl9leHRlbnNpb24uICovCj4gPj4gKyAgICAgICBzdHJ1Y3QgaTkx NV91c2VyX2V4dGVuc2lvbiBiYXNlOwo+ID4+ICsKPiA+PiArICAgICAgIC8qKiBAcGFkOiBNQlog Ki8KPiA+PiArICAgICAgIF9fdTMyIHBhZDsKPiA+PiArICAgICAgIC8qKiBAbnVtX3JlZ2lvbnM6 IE51bWJlciBvZiBlbGVtZW50cyBpbiB0aGUgQHJlZ2lvbnMgYXJyYXkuICovCj4gPj4gKyAgICAg ICBfX3UzMiBudW1fcmVnaW9uczsKPiA+PiArICAgICAgIC8qKgo+ID4+ICsgICAgICAgICogQHJl Z2lvbnM6IFRoZSByZWdpb25zL3BsYWNlbWVudHMgYXJyYXkuCj4gPj4gKyAgICAgICAgKgo+ID4+ ICsgICAgICAgICogQW4gYXJyYXkgb2Ygc3RydWN0IGRybV9pOTE1X2dlbV9tZW1vcnlfY2xhc3Nf aW5zdGFuY2UuCj4gPj4gKyAgICAgICAgKi8KPiA+PiArICAgICAgIF9fdTY0IHJlZ2lvbnM7Cj4g Pj4gK307Cj4gPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9s bWVtLnJzdCBiL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pOTE1X2dlbV9sbWVtLnJzdAo+ID4+IG5l dyBmaWxlIG1vZGUgMTAwNjQ0Cj4gPj4gaW5kZXggMDAwMDAwMDAwMDAwLi40NjJmMWVmZDkwMDMK PiA+PiAtLS0gL2Rldi9udWxsCj4gPj4gKysrIGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZjL2k5MTVf Z2VtX2xtZW0ucnN0Cj4gPj4gQEAgLTAsMCArMSwxMzAgQEAKPiA+PiArPT09PT09PT09PT09PT09 PT09PT09PT09PQo+ID4+ICtJOTE1IERHMS9MTUVNIFJGQyBTZWN0aW9uCj4gPj4gKz09PT09PT09 PT09PT09PT09PT09PT09PT0KPiA+PiArCj4gPj4gK1Vwc3RyZWFtIHBsYW4KPiA+PiArPT09PT09 PT09PT09PQo+ID4+ICtGb3IgdXBzdHJlYW0gdGhlIG92ZXJhbGwgcGxhbiBmb3IgbGFuZGluZyBh bGwgdGhlIERHMSBzdHVmZiBhbmQgdHVybmluZyBpdCBmb3IKPiA+PiArcmVhbCwgd2l0aCBhbGwg dGhlIHVBUEkgYml0cyBpczoKPiA+PiArCj4gPj4gKyogTWVyZ2UgYmFzaWMgSFcgZW5hYmxpbmcg b2YgREcxKHN0aWxsIHdpdGhvdXQgcGNpaWQpCj4gPj4gKyogTWVyZ2UgdGhlIHVBUEkgYml0cyBi ZWhpbmQgc3BlY2lhbCBDT05GSUdfQlJPS0VOKG9yIHNvKSBmbGFnCj4gPj4gKyAgICAgICAgKiBB dCB0aGlzIHBvaW50IHdlIGNhbiBzdGlsbCBtYWtlIGNoYW5nZXMsIGJ1dCBpbXBvcnRhbnRseSB0 aGlzIGxldHMgdXMKPiA+PiArICAgICAgICAgIHN0YXJ0IHJ1bm5pbmcgSUdUcyB3aGljaCBjYW4g dXRpbGl6ZSBsb2NhbC1tZW1vcnkgaW4gQ0kKPiA+PiArKiBDb252ZXJ0IG92ZXIgdG8gVFRNLCBt YWtlIHN1cmUgaXQgYWxsIGtlZXBzIHdvcmtpbmcuIFNvbWUgb2YgdGhlIHdvcmsgaXRlbXM6Cj4g Pj4gKyAgICAgICAgKiBUVE0gc2hyaW5rZXIgZm9yIGRpc2NyZXRlCj4gPj4gKyAgICAgICAgKiBk bWFfcmVzdl9sb2NraXRlbSBmb3IgZnVsbCBkbWFfcmVzdl9sb2NrLCBpLmUgbm90IGp1c3QgdHJ5 bG9jawo+ID4+ICsgICAgICAgICogVXNlIFRUTSBDUFUgcGFnZWZhdWx0IGhhbmRsZXIKPiA+PiAr ICAgICAgICAqIFJvdXRlIHNobWVtIGJhY2tlbmQgb3ZlciB0byBUVE0gU1lTVEVNIGZvciBkaXNj cmV0ZQo+ID4+ICsgICAgICAgICogVFRNIHB1cmdlYWJsZSBvYmplY3Qgc3VwcG9ydAo+ID4+ICsg ICAgICAgICogTW92ZSBpOTE1IGJ1ZGR5IGFsbG9jYXRvciBvdmVyIHRvIFRUTQo+ID4+ICsgICAg ICAgICogTU1BUCBpb2N0bCBtb2RlKHNlZSBgSTkxNSBNTUFQYF8pCj4gPj4gKyAgICAgICAgKiBT RVQvR0VUIGlvY3RsIGNhY2hpbmcoc2VlIGBJOTE1IFNFVC9HRVQgQ0FDSElOR2BfKQo+ID4+ICsq IEFkZCBwY2lpZCBmb3IgREcxIGFuZCB0dXJuIG9uIHVBUEkgZm9yIHJlYWwKPiA+PiArCj4gPj4g K05ldyBvYmplY3QgcGxhY2VtZW50IGFuZCByZWdpb24gcXVlcnkgdUFQSQo+ID4+ICs9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KPiA+PiArU3RhcnRpbmcgZnJvbSBE RzEgd2UgbmVlZCB0byBnaXZlIHVzZXJzcGFjZSB0aGUgYWJpbGl0eSB0byBhbGxvY2F0ZSBidWZm ZXJzIGZyb20KPiA+PiArZGV2aWNlIGxvY2FsLW1lbW9yeS4gQ3VycmVudGx5IHRoZSBkcml2ZXIg c3VwcG9ydHMgZ2VtX2NyZWF0ZSwgd2hpY2ggY2FuIHBsYWNlCj4gPj4gK2J1ZmZlcnMgaW4gc3lz dGVtIG1lbW9yeSB2aWEgc2htZW0sIGFuZCB0aGUgdXN1YWwgYXNzb3J0bWVudCBvZiBvdGhlcgo+ ID4+ICtpbnRlcmZhY2VzLCBsaWtlIGR1bWIgYnVmZmVycyBhbmQgdXNlcnB0ci4KPiA+PiArCj4g Pj4gK1RvIHN1cHBvcnQgdGhpcyBuZXcgY2FwYWJpbGl0eSwgd2hpbGUgYWxzbyBwcm92aWRpbmcg YSB1QVBJIHdoaWNoIHdpbGwgd29yawo+ID4+ICtiZXlvbmQganVzdCBERzEsIHdlIHByb3Bvc2Ug dG8gb2ZmZXIgdGhyZWUgbmV3IGJpdHMgb2YgdUFQSToKPiA+PiArCj4gPj4gK0RSTV9JOTE1X1FV RVJZX01FTU9SWV9SRUdJT05TCj4gPj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4g Pj4gK05ldyBxdWVyeSBJRCB3aGljaCBhbGxvd3MgdXNlcnNwYWNlIHRvIGRpc2NvdmVyIHRoZSBs aXN0IG9mIHN1cHBvcnRlZCBtZW1vcnkKPiA+PiArcmVnaW9ucyhsaWtlIHN5c3RlbS1tZW1vcnkg YW5kIGxvY2FsLW1lbW9yeSkgZm9yIGEgZ2l2ZW4gZGV2aWNlLiBXZSBpZGVudGlmeQo+ID4+ICtl YWNoIHJlZ2lvbiB3aXRoIGEgY2xhc3MgYW5kIGluc3RhbmNlIHBhaXIsIHdoaWNoIHNob3VsZCBi ZSB1bmlxdWUuIFRoZSBjbGFzcwo+ID4+ICtoZXJlIHdvdWxkIGJlIERFVklDRSBvciBTWVNURU0s IGFuZCB0aGUgaW5zdGFuY2Ugd291bGQgYmUgemVybywgb24gcGxhdGZvcm1zCj4gPj4gK2xpa2Ug REcxLgo+ID4+ICsKPiA+PiArU2lkZSBub3RlOiBUaGUgY2xhc3MvaW5zdGFuY2UgZGVzaWduIGlz IGJvcnJvd2VkIGZyb20gb3VyIGV4aXN0aW5nIGVuZ2luZSB1QVBJLAo+ID4+ICt3aGVyZSB3ZSBk ZXNjcmliZSBldmVyeSBwaHlzaWNhbCBlbmdpbmUgaW4gdGVybXMgb2YgaXRzIGNsYXNzLCBhbmQg dGhlCj4gPj4gK3BhcnRpY3VsYXIgaW5zdGFuY2UsIHNpbmNlIHdlIGNhbiBoYXZlIG1vcmUgdGhh biBvbmUgcGVyIGNsYXNzLgo+ID4+ICsKPiA+PiArSW4gdGhlIGZ1dHVyZSB3ZSBhbHNvIHdhbnQg dG8gZXhwb3NlIG1vcmUgaW5mb3JtYXRpb24gd2hpY2ggY2FuIGZ1cnRoZXIKPiA+PiArZGVzY3Jp YmUgdGhlIGNhcGFiaWxpdGllcyBvZiBhIHJlZ2lvbi4KPiA+PiArCj4gPj4gKy4uIGtlcm5lbC1k b2M6OiBEb2N1bWVudGF0aW9uL2dwdS9yZmMvaTkxNV9nZW1fbG1lbS5oCj4gPj4gKyAgICAgICAg OmZ1bmN0aW9uczogZHJtX2k5MTVfZ2VtX21lbW9yeV9jbGFzcyBkcm1faTkxNV9nZW1fbWVtb3J5 X2NsYXNzX2luc3RhbmNlIGRybV9pOTE1X21lbW9yeV9yZWdpb25faW5mbyBkcm1faTkxNV9xdWVy eV9tZW1vcnlfcmVnaW9ucwo+ID4+ICsKPiA+PiArR0VNX0NSRUFURV9FWFQKPiA+PiArLS0tLS0t LS0tLS0tLS0KPiA+PiArTmV3IGlvY3RsIHdoaWNoIGlzIGJhc2ljYWxseSBqdXN0IGdlbV9jcmVh dGUgYnV0IG5vdyBhbGxvd3MgdXNlcnNwYWNlIHRvCj4gPj4gK3Byb3ZpZGUgYSBjaGFpbiBvZiBw b3NzaWJsZSBleHRlbnNpb25zLiBOb3RlIHRoYXQgaWYgd2UgZG9uJ3QgcHJvdmlkZSBhbnkKPiA+ PiArZXh0ZW5zaW9ucyB0aGVuIHdlIGdldCB0aGUgZXhhY3Qgc2FtZSBiZWhhdmlvdXIgYXMgZ2Vt X2NyZWF0ZS4KPiA+PiArCj4gPj4gK1NpZGUgbm90ZTogV2UgYWxzbyBuZWVkIHRvIHN1cHBvcnQg UFhQWzFdIGluIHRoZSBuZWFyIGZ1dHVyZSwgd2hpY2ggaXMgYWxzbwo+ID4+ICthcHBsaWNhYmxl IHRvIGludGVncmF0ZWQgcGxhdGZvcm1zLCBhbmQgYWRkcyBpdHMgb3duIGdlbV9jcmVhdGVfZXh0 IGV4dGVuc2lvbiwKPiA+PiArd2hpY2ggYmFzaWNhbGx5IGxldHMgdXNlcnNwYWNlIG1hcmsgYSBi dWZmZXIgYXMgInByb3RlY3RlZCIuCj4gPj4gKwo+ID4+ICsuLiBrZXJuZWwtZG9jOjogRG9jdW1l bnRhdGlvbi9ncHUvcmZjL2k5MTVfZ2VtX2xtZW0uaAo+ID4+ICsgICAgICAgIDpmdW5jdGlvbnM6 IGRybV9pOTE1X2dlbV9jcmVhdGVfZXh0Cj4gPj4gKwo+ID4+ICtJOTE1X0dFTV9DUkVBVEVfRVhU X01FTU9SWV9SRUdJT05TCj4gPj4gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K PiA+PiArSW1wbGVtZW50ZWQgYXMgYW4gZXh0ZW5zaW9uIGZvciBnZW1fY3JlYXRlX2V4dCwgd2Ug d291bGQgbm93IGFsbG93IHVzZXJzcGFjZSB0bwo+ID4+ICtvcHRpb25hbGx5IHByb3ZpZGUgYW4g aW1tdXRhYmxlIGxpc3Qgb2YgcHJlZmVycmVkIHBsYWNlbWVudHMgYXQgY3JlYXRpb24gdGltZSwK PiA+PiAraW4gcHJpb3JpdHkgb3JkZXIsIGZvciBhIGdpdmVuIGJ1ZmZlciBvYmplY3QuICBGb3Ig dGhlIHBsYWNlbWVudHMgd2UgZXhwZWN0Cj4gPj4gK3RoZW0gZWFjaCB0byB1c2UgdGhlIGNsYXNz L2luc3RhbmNlIGVuY29kaW5nLCBhcyBwZXIgdGhlIG91dHB1dCBvZiB0aGUgcmVnaW9ucwo+ID4+ ICtxdWVyeS4gSGF2aW5nIHRoZSBsaXN0IGluIHByaW9yaXR5IG9yZGVyIHdpbGwgYmUgdXNlZnVs IGluIHRoZSBmdXR1cmUgd2hlbgo+ID4+ICtwbGFjaW5nIGFuIG9iamVjdCwgc2F5IGR1cmluZyBl dmljdGlvbi4KPiA+PiArCj4gPj4gKy4uIGtlcm5lbC1kb2M6OiBEb2N1bWVudGF0aW9uL2dwdS9y ZmMvaTkxNV9nZW1fbG1lbS5oCj4gPj4gKyAgICAgICAgOmZ1bmN0aW9uczogZHJtX2k5MTVfZ2Vt X2NyZWF0ZV9leHRfbWVtb3J5X3JlZ2lvbnMKPiA+PiArCj4gPj4gK09uZSBmYWlyIGNyaXRpY2lz bSBoZXJlIGlzIHRoYXQgdGhpcyBzZWVtcyBhIGxpdHRsZSBvdmVyLWVuZ2luZWVyZWRbMl0uIElm IHdlCj4gPj4gK2p1c3QgY29uc2lkZXIgREcxIHRoZW4geWVzLCBhIHNpbXBsZSBnZW1fY3JlYXRl LmZsYWdzIG9yIHNvbWV0aGluZyBpcyB0b3RhbGx5Cj4gPj4gK2FsbCB0aGF0J3MgbmVlZGVkIHRv IHRlbGwgdGhlIGtlcm5lbCB0byBhbGxvY2F0ZSB0aGUgYnVmZmVyIGluIGxvY2FsLW1lbW9yeSBv cgo+ID4+ICt3aGF0ZXZlci4gSG93ZXZlciBsb29raW5nIHRvIHRoZSBmdXR1cmUgd2UgbmVlZCB1 QVBJIHdoaWNoIGNhbiBhbHNvIHN1cHBvcnQKPiA+PiArdXBjb21pbmcgWGUgSFAgbXVsdGktdGls ZSBhcmNoaXRlY3R1cmUgaW4gYSBzYW5lIHdheSwgd2hlcmUgdGhlcmUgY2FuIGJlCj4gPj4gK211 bHRpcGxlIGxvY2FsLW1lbW9yeSBpbnN0YW5jZXMgZm9yIGEgZ2l2ZW4gZGV2aWNlLCBhbmQgc28g dXNpbmcgYm90aCBjbGFzcyBhbmQKPiA+PiAraW5zdGFuY2UgaW4gb3VyIHVBUEkgdG8gZGVzY3Jp YmUgcmVnaW9ucyBpcyBkZXNpcmFibGUsIGFsdGhvdWdoIHNwZWNpZmljYWxseQo+ID4+ICtmb3Ig REcxIGl0J3MgdW5pbnRlcmVzdGluZywgc2luY2Ugd2Ugb25seSBoYXZlIGEgc2luZ2xlIGxvY2Fs LW1lbW9yeSBpbnN0YW5jZS4KPiA+PiArCj4gPj4gK0V4aXN0aW5nIHVBUEkgaXNzdWVzCj4gPj4g Kz09PT09PT09PT09PT09PT09PT09Cj4gPj4gK1NvbWUgcG90ZW50aWFsIGlzc3VlcyB3ZSBzdGls bCBuZWVkIHRvIHJlc29sdmUuCj4gPj4gKwo+ID4+ICtJOTE1IE1NQVAKPiA+PiArLS0tLS0tLS0t Cj4gPj4gK0luIGk5MTUgdGhlcmUgYXJlIG11bHRpcGxlIHdheXMgdG8gTU1BUCBHRU0gb2JqZWN0 LCBpbmNsdWRpbmcgbWFwcGluZyB0aGUgc2FtZQo+ID4+ICtvYmplY3QgdXNpbmcgZGlmZmVyZW50 IG1hcHBpbmcgdHlwZXMoV0MgdnMgV0IpLCBpLmUgbXVsdGlwbGUgYWN0aXZlIG1tYXBzIHBlcgo+ ID4+ICtvYmplY3QuIFRUTSBleHBlY3RzIG9uZSBNTUFQIGF0IG1vc3QgZm9yIHRoZSBsaWZldGlt ZSBvZiB0aGUgb2JqZWN0LiBJZiBpdAo+ID4+ICt0dXJucyBvdXQgdGhhdCB3ZSBoYXZlIHRvIGJh Y2twZWRhbCBoZXJlLCB0aGVyZSBtaWdodCBiZSBzb21lIHBvdGVudGlhbAo+ID4+ICt1c2Vyc3Bh Y2UgZmFsbG91dC4KPiA+PiArCj4gPj4gK0k5MTUgU0VUL0dFVCBDQUNISU5HCj4gPj4gKy0tLS0t LS0tLS0tLS0tLS0tLS0tCj4gPj4gK0luIGk5MTUgd2UgaGF2ZSBzZXQvZ2V0X2NhY2hpbmcgaW9j dGwuIFRUTSBkb2Vzbid0IGxldCB1cyB0byBjaGFuZ2UgdGhpcywgYnV0Cj4gPj4gK0RHMSBkb2Vz bid0IHN1cHBvcnQgbm9uLXNub29wZWQgcGNpZSB0cmFuc2FjdGlvbnMsIHNvIHdlIGNhbiBqdXN0 IGFsd2F5cwo+ID4+ICthbGxvY2F0ZSBhcyBXQiBmb3Igc21lbS1vbmx5IGJ1ZmZlcnMuICBJZi93 aGVuIG91ciBodyBnYWlucyBzdXBwb3J0IGZvcgo+ID4+ICtub24tc25vb3BlZCBwY2llIHRyYW5z YWN0aW9ucyB0aGVuIHdlIG11c3QgZml4IHRoaXMgbW9kZSBhdCBhbGxvY2F0aW9uIHRpbWUgYXMK PiA+PiArYSBuZXcgR0VNIGV4dGVuc2lvbi4KPiA+PiArCj4gPj4gK1RoaXMgaXMgcmVsYXRlZCB0 byB0aGUgbW1hcCBwcm9ibGVtLCBiZWNhdXNlIGluIGdlbmVyYWwgKG1lYW5pbmcsIHdoZW4gd2Un cmUKPiA+PiArbm90IHJ1bm5pbmcgb24gaW50ZWwgY3B1cykgdGhlIGNwdSBtbWFwIG11c3Qgbm90 LCBldmVyLCBiZSBpbmNvbnNpc3RlbnQgd2l0aAo+ID4+ICthbGxvY2F0aW9uIG1vZGUuCj4gPj4g Kwo+ID4+ICtQb3NzaWJsZSBpZGVhIGlzIHRvIGxldCB0aGUga2VybmVsIHBpY2tzIHRoZSBtbWFw IG1vZGUgZm9yIHVzZXJzcGFjZSBmcm9tIHRoZQo+ID4+ICtmb2xsb3dpbmcgdGFibGU6Cj4gPj4g Kwo+ID4+ICtzbWVtLW9ubHk6IFdCLiBVc2Vyc3BhY2UgZG9lcyBub3QgbmVlZCB0byBjYWxsIGNs Zmx1c2guCj4gPj4gKwo+ID4+ICtzbWVtK2xtZW06IFdlIGFsbG9jYXRlIHVuY2FjaGVkIG1lbW9y eSwgYW5kIGdpdmUgdXNlcnNwYWNlIGEgV0MgbWFwcGluZwo+ID4+ICtmb3Igd2hlbiB0aGUgYnVm ZmVyIGlzIGluIHNtZW0sIGFuZCBXQyB3aGVuIGl0J3MgaW4gbG1lbS4gR1BVIGRvZXMgc25vb3Bl ZAo+ID4+ICthY2Nlc3MsIHdoaWNoIGlzIGEgYml0IGluZWZmaWNpZW50Lgo+ID4+ICsKPiA+PiAr bG1lbSBvbmx5OiBhbHdheXMgV0MKPiA+PiArCj4gPj4gK1RoaXMgbWVhbnMgb24gZGlzY3JldGUg eW91IG9ubHkgZ2V0IGEgc2luZ2xlIG1tYXAgbW9kZSwgYWxsIG90aGVycyBtdXN0IGJlCj4gPj4g K3JlamVjdGVkLiBUaGF0J3MgcHJvYmFibHkgZ29pbmcgdG8gYmUgYSBuZXcgZGVmYXVsdCBtb2Rl IG9yIHNvbWV0aGluZyBsaWtlCj4gPj4gK3RoYXQuCj4gPj4gKwo+ID4+ICtMaW5rcwo+ID4+ICs9 PT09PQo+ID4+ICtbMV0gaHR0cHM6Ly9wYXRjaHdvcmsuZnJlZWRlc2t0b3Aub3JnL3Nlcmllcy84 Njc5OC8KPiA+PiArCj4gPj4gK1syXSBodHRwczovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvbWVz YS9tZXNhLy0vbWVyZ2VfcmVxdWVzdHMvNTU5OSNub3RlXzU1Mzc5MQo+ID4+IGRpZmYgLS1naXQg YS9Eb2N1bWVudGF0aW9uL2dwdS9yZmMvaW5kZXgucnN0IGIvRG9jdW1lbnRhdGlvbi9ncHUvcmZj L2luZGV4LnJzdAo+ID4+IGluZGV4IGE4NjIxZjdkYWI4Yi4uMDU2NzA0NDJjYTFiIDEwMDY0NAo+ ID4+IC0tLSBhL0RvY3VtZW50YXRpb24vZ3B1L3JmYy9pbmRleC5yc3QKPiA+PiArKysgYi9Eb2N1 bWVudGF0aW9uL2dwdS9yZmMvaW5kZXgucnN0Cj4gPj4gQEAgLTE1LDMgKzE1LDcgQEAgaG9zdCBz dWNoIGRvY3VtZW50YXRpb246Cj4gPj4KPiA+PiAgICogT25jZSB0aGUgY29kZSBoYXMgbGFuZGVk IG1vdmUgYWxsIHRoZSBkb2N1bWVudGF0aW9uIHRvIHRoZSByaWdodCBwbGFjZXMgaW4KPiA+PiAg ICAgdGhlIG1haW4gY29yZSwgaGVscGVyIG9yIGRyaXZlciBzZWN0aW9ucy4KPiA+PiArCj4gPj4g Ky4uIHRvY3RyZWU6Ogo+ID4+ICsKPiA+PiArICAgIGk5MTVfZ2VtX2xtZW0ucnN0Cj4gPj4gLS0K PiA+PiAyLjI2LjMKPiA+PgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK