From mboxrd@z Thu Jan 1 00:00:00 1970 From: "O'Rourke, Tom" Subject: Re: [PATCH 07/13 v4] drm/i915: GuC submission setup, phase 1 Date: Fri, 24 Jul 2015 15:31:58 -0700 Message-ID: <20150724223158.GC142616@torourke-desk1> References: <1436466554-24806-1-git-send-email-david.s.gordon@intel.com> <1436466554-24806-8-git-send-email-david.s.gordon@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 648AD6EF00 for ; Fri, 24 Jul 2015 15:35:32 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1436466554-24806-8-git-send-email-david.s.gordon@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Dave Gordon Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org W1RPUjpdIFdoZW4gSSBzZWUgInBoYXNlIDEiIEkgYWxzbyBsb29rIGZvciAicGhhc2UgMiIuICAK QSBzdWJqZWN0IHRoYXQgYmV0dGVyIGRlc2NyaWJlcyB0aGUgY2hhbmdlIGluIHRoaXMgcGF0Y2gg CndvdWxkIGhlbHAuCgpPbiBUaHUsIEp1bCAwOSwgMjAxNSBhdCAwNzoyOTowOFBNICswMTAwLCBE YXZlIEdvcmRvbiB3cm90ZToKPiBGcm9tOiBBbGV4IERhaSA8eXUuZGFpQGludGVsLmNvbT4KPiAK PiBUaGlzIGFkZHMgdGhlIGZpcnN0IG9mIHRoZSBkYXRhIHN0cnVjdHVyZXMgdXNlZCB0byBjb21t dW5pY2F0ZSB3aXRoIHRoZQo+IEd1QyAodGhlIHBvb2wgb2YgZ3VjX2NvbnRleHQgc3RydWN0dXJl cykuCj4gCj4gV2UgY3JlYXRlIGEgR3VDLXNwZWNpZmljIHdyYXBwZXIgcm91bmQgdGhlIEdFTSBv YmplY3QgYWxsb2NhdG9yIGFzIGFsbAo+IEdFTSBvYmplY3RzIHNoYXJlZCB3aXRoIHRoZSBHdUMg bXVzdCBiZSBwaW5uZWQgaW50byBHR1RUIHNwYWNlIGF0IGFuCj4gYWRkcmVzcyB0aGF0IGlzIE5P VCBpbiB0aGUgcmFuZ2UgWzAuLldPUENNX1NJWkUpLCBhcyB0aGF0IHJhbmdlIG9mIEdHVFQKPiBh ZGRyZXNzZXMgaXMgbm90IGFjY2Vzc2libGUgdG8gdGhlIEd1QyAoZnJvbSB0aGUgR3VDJ3MgcG9p bnQgb2YgdmlldywKPiBpdCdzIHBlcm1hbmVudGx5IHJlc2VydmVkIGZvciBvdGhlciBvYmplY3Rz IHN1Y2ggYXMgdGhlIEJvb3RST00gJiBTUkFNKS4KW1RPUjpdIEkgd291bGQgbGlrZSBhIGNsYXJm aWNhdGlvbiBvbiB0aGUgZXhjbHVkZWQgcmFuZ2UuClRoZSBleGNsdWRlZCByYW5nZSBzaG91bGQg YmUgMCB0byAic2l6ZSBmb3IgZ3VjIHdpdGhpbgpXT1BDTSBhcmVhIiBhbmQgbm90IDAgdG8gInNp emUgb2YgV09QQ00gYXJlYSIuCgo+IAo+IExhdGVyLCB3ZSB3aWxsIG5lZWQgdG8gYWxsb2NhdGUg YWRkaXRpb25hbCBHdUMtc2hhcmFibGUgb2JqZWN0cyBmb3IgdGhlCj4gc3VibWlzc2lvbiBjbGll bnQocykgYW5kIHRoZSBHdUMncyBkZWJ1ZyBsb2cuCj4gCj4gdjI6Cj4gICAgIFJlbW92ZSByZWR1 bmRhbnQgaW5pdGlhbGlzYXRpb24gW0NocmlzIFdpbHNvbl0KPiAgICAgRGVmZXIgYWRkaW5nIHN0 cnVjdCBtZW1iZXJzIHVudGlsIG5lZWRlZCBbQ2hyaXMgV2lsc29uXQo+ICAgICBMb2NhbCBmdW5j dGlvbnMgc2hvdWxkIHBhc3MgZGV2X3ByaXYgcmF0aGVyIHRoYW4gZGV2IFtDaHJpcyBXaWxzb25d Cj4gCj4gdjQ6Cj4gICAgIFJlYmFzZWQKPiAKPiBJc3N1ZTogVklaLTQ4ODQKPiBTaWduZWQtb2Zm LWJ5OiBBbGV4IERhaSA8eXUuZGFpQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBEYXZlIEdv cmRvbiA8ZGF2aWQucy5nb3Jkb25AaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9NYWtlZmlsZSAgICAgICAgICAgICAgfCAgIDMgKy0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jIHwgMTE0ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5oICAgICAgICAgICB8ICAgNyAr Kwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9hZGVyLmMgICAgfCAgMTkgKysr KysKPiAgNCBmaWxlcyBjaGFuZ2VkLCAxNDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+ ICBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlz c2lvbi5jCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUKPiBpbmRleCBlNjA0Y2ZlLi4yM2Y1NjEyIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxlCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvTWFrZWZpbGUKPiBAQCAtNDAsNyArNDAsOCBAQCBpOTE1LXkgKz0gaTkx NV9jbWRfcGFyc2VyLm8gXAo+ICAJICBpbnRlbF91bmNvcmUubwo+ICAKPiAgIyBnZW5lcmFsLXB1 cnBvc2UgbWljcm9jb250cm9sbGVyIChHdUMpIHN1cHBvcnQKPiAtaTkxNS15ICs9IGludGVsX2d1 Y19sb2FkZXIubwo+ICtpOTE1LXkgKz0gaW50ZWxfZ3VjX2xvYWRlci5vIFwKPiArCSAgaTkxNV9n dWNfc3VibWlzc2lvbi5vCj4gIAo+ICAjIGF1dG9nZW5lcmF0ZWQgbnVsbCByZW5kZXIgc3RhdGUK PiAgaTkxNS15ICs9IGludGVsX3JlbmRlcnN0YXRlX2dlbjYubyBcCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3VjX3N1Ym1pc3Npb24uYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ3VjX3N1Ym1pc3Npb24uYwo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5k ZXggMDAwMDAwMC4uNzBhMDQwNQo+IC0tLSAvZGV2L251bGwKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMKPiBAQCAtMCwwICsxLDExNCBAQAo+ICsvKgo+ ICsgKiBDb3B5cmlnaHQgwqkgMjAxNCBJbnRlbCBDb3Jwb3JhdGlvbgo+ICsgKgo+ICsgKiBQZXJt aXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBv YnRhaW5pbmcgYQo+ICsgKiBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9j dW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIpLAo+ICsgKiB0byBkZWFsIGluIHRoZSBT b2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9u Cj4gKyAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBk aXN0cmlidXRlLCBzdWJsaWNlbnNlLAo+ICsgKiBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNv ZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUKPiArICogU29mdHdhcmUg aXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u czoKPiArICoKPiArICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlz c2lvbiBub3RpY2UgKGluY2x1ZGluZyB0aGUgbmV4dAo+ICsgKiBwYXJhZ3JhcGgpIHNoYWxsIGJl IGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCj4g KyAqIFNvZnR3YXJlLgo+ICsgKgo+ICsgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElT IiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgo+ICsgKiBJTVBMSUVE LCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5U QUJJTElUWSwKPiArICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklO RlJJTkdFTUVOVC4gIElOIE5PIEVWRU5UIFNIQUxMCj4gKyAqIFRIRSBBVVRIT1JTIE9SIENPUFlS SUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCj4g KyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1Ig T1RIRVJXSVNFLCBBUklTSU5HCj4gKyAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJ VEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MKPiArICogSU4gVEhF IFNPRlRXQVJFLgo+ICsgKgo+ICsgKi8KPiArI2luY2x1ZGUgPGxpbnV4L2Zpcm13YXJlLmg+Cj4g KyNpbmNsdWRlIDxsaW51eC9jaXJjX2J1Zi5oPgo+ICsjaW5jbHVkZSAiaTkxNV9kcnYuaCIKPiAr I2luY2x1ZGUgImludGVsX2d1Yy5oIgo+ICsKPiArLyoqCj4gKyAqIGdlbV9hbGxvY2F0ZV9ndWNf b2JqKCkgLSBBbGxvY2F0ZSBnZW0gb2JqZWN0IGZvciBHdUMgdXNhZ2UKPiArICogQGRldjoJZHJt IGRldmljZQo+ICsgKiBAc2l6ZToJc2l6ZSBvZiBvYmplY3QKPiArICoKPiArICogVGhpcyBpcyBh IHdyYXBwZXIgdG8gY3JlYXRlIGEgZ2VtIG9iai4gSW4gb3JkZXIgdG8gdXNlIGl0IGluc2lkZSBH dUMsIHRoZQo+ICsgKiBvYmplY3QgbmVlZHMgdG8gYmUgcGlubmVkIGxpZmV0aW1lLiBBbHNvIHdl IG11c3QgcGluIGl0IHRvIGd0dCBzcGFjZSBvdGhlcgo+ICsgKiB0aGFuIFswLCBHVUNfV09QQ01f U0laRV0gYmVjYXVzZSB0aGlzIHJhbmdlIGlzIHJlc2VydmVkIGluc2lkZSBHdUMuCj4gKyAqCj4g KyAqIFJldHVybjoJQSBkcm1faTkxNV9nZW1fb2JqZWN0IGlmIHN1Y2Nlc3NmdWwsIG90aGVyd2lz ZSBOVUxMLgo+ICsgKi8KPiArc3RhdGljIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpnZW1f YWxsb2NhdGVfZ3VjX29iaihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICsJCQkJCQkJdTMyIHNp emUpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7Cj4gKwo+ICsJb2Jq ID0gaTkxNV9nZW1fYWxsb2Nfb2JqZWN0KGRldiwgc2l6ZSk7Cj4gKwlpZiAoIW9iaikKPiArCQly ZXR1cm4gTlVMTDsKPiArCj4gKwlpZiAoaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlcyhvYmopKSB7 Cj4gKwkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7Cj4gKwkJcmV0dXJu IE5VTEw7Cj4gKwl9Cj4gKwo+ICsJaWYgKGk5MTVfZ2VtX29ial9nZ3R0X3BpbihvYmosIFBBR0Vf U0laRSwKPiArCQkJUElOX09GRlNFVF9CSUFTIHwgR1VDX1dPUENNX1NJWkVfVkFMVUUpKSB7Cj4g KwkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7Cj4gKwkJcmV0dXJuIE5V TEw7Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIG9iajsKPiArfQo+ICsKPiArLyoqCj4gKyAqIGdlbV9y ZWxlYXNlX2d1Y19vYmooKSAtIFJlbGVhc2UgZ2VtIG9iamVjdCBhbGxvY2F0ZWQgZm9yIEd1QyB1 c2FnZQo+ICsgKiBAb2JqOglnZW0gb2JqIHRvIGJlIHJlbGVhc2VkCj4gKyAgKi8KPiArc3RhdGlj IHZvaWQgZ2VtX3JlbGVhc2VfZ3VjX29iaihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2Jq KQo+ICt7Cj4gKwlpZiAoIW9iaikKPiArCQlyZXR1cm47Cj4gKwo+ICsJaWYgKGk5MTVfZ2VtX29i al9pc19waW5uZWQob2JqKSkKPiArCQlpOTE1X2dlbV9vYmplY3RfZ2d0dF91bnBpbihvYmopOwo+ ICsKPiArCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlKCZvYmotPmJhc2UpOwo+ICt9Cj4gKwo+ ICsvKgo+ICsgKiBTZXQgdXAgdGhlIG1lbW9yeSByZXNvdXJjZXMgdG8gYmUgc2hhcmVkIHdpdGgg dGhlIEd1Qy4gIEF0IHRoaXMgcG9pbnQsCj4gKyAqIHdlIHJlcXVpcmUganVzdCBvbmUgb2JqZWN0 IHRoYXQgY2FuIGJlIG1hcHBlZCB0aHJvdWdoIHRoZSBHR1RULgo+ICsgKi8KPiAraW50IGk5MTVf Z3VjX3N1Ym1pc3Npb25faW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICt7Cj4gKwlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICsJY29u c3Qgc2l6ZV90IGN0eHNpemUgPSBzaXplb2Yoc3RydWN0IGd1Y19jb250ZXh0X2Rlc2MpOwo+ICsJ Y29uc3Qgc2l6ZV90IHBvb2xzaXplID0gR1VDX01BWF9HUFVfQ09OVEVYVFMgKiBjdHhzaXplOwo+ ICsJY29uc3Qgc2l6ZV90IGdlbXNpemUgPSByb3VuZF91cChwb29sc2l6ZSwgUEFHRV9TSVpFKTsK PiArCXN0cnVjdCBpbnRlbF9ndWMgKmd1YyA9ICZkZXZfcHJpdi0+Z3VjOwo+ICsKPiArCWlmICgh aTkxNS5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pCj4gKwkJcmV0dXJuIDA7IC8qIG5vdCBlbmFibGVk ICAqLwo+ICsKPiArCWlmIChndWMtPmN0eF9wb29sX29iaikKPiArCQlyZXR1cm4gMDsgLyogYWxy ZWFkeSBhbGxvY2F0ZWQgKi8KPiArCj4gKwlndWMtPmN0eF9wb29sX29iaiA9IGdlbV9hbGxvY2F0 ZV9ndWNfb2JqKGRldl9wcml2LT5kZXYsIGdlbXNpemUpOwo+ICsJaWYgKCFndWMtPmN0eF9wb29s X29iaikKPiArCQlyZXR1cm4gLUVOT01FTTsKPiArCj4gKwlpZGFfaW5pdCgmZ3VjLT5jdHhfaWRz KTsKPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsKPiArdm9pZCBpOTE1X2d1Y19zdWJtaXNzaW9u X2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiArCXN0cnVjdCBpbnRlbF9ndWMg Kmd1YyA9ICZkZXZfcHJpdi0+Z3VjOwo+ICsKPiArCWlmIChndWMtPmN0eF9wb29sX29iaikKPiAr CQlpZGFfZGVzdHJveSgmZ3VjLT5jdHhfaWRzKTsKPiArCWdlbV9yZWxlYXNlX2d1Y19vYmooZ3Vj LT5jdHhfcG9vbF9vYmopOwo+ICsJZ3VjLT5jdHhfcG9vbF9vYmogPSBOVUxMOwo+ICt9Cj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZ3VjLmgKPiBpbmRleCAyODQ2YjZkLi5iZTNjYWQ4IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZ3VjLmgKPiBAQCAtNTYsNiArNTYsOSBAQCBzdHJ1Y3QgaW50ZWxfZ3Vj IHsKPiAgCXN0cnVjdCBpbnRlbF9ndWNfZncgZ3VjX2Z3Owo+ICAKPiAgCXVpbnQzMl90IGxvZ19m bGFnczsKPiArCj4gKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY3R4X3Bvb2xfb2JqOwo+ ICsJc3RydWN0IGlkYSBjdHhfaWRzOwo+ICB9Owo+ICAKPiAgLyogaW50ZWxfZ3VjX2xvYWRlci5j ICovCj4gQEAgLTY0LDQgKzY3LDggQEAgZXh0ZXJuIGludCBpbnRlbF9ndWNfdWNvZGVfbG9hZChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgZXh0ZXJuIHZvaWQgaW50ZWxfZ3VjX3Vjb2RlX2Zp bmkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIGV4dGVybiBjb25zdCBjaGFyICppbnRlbF9n dWNfZndfc3RhdHVzX3JlcHIoZW51bSBpbnRlbF9ndWNfZndfc3RhdHVzIHN0YXR1cyk7Cj4gIAo+ ICsvKiBpOTE1X2d1Y19zdWJtaXNzaW9uLmMgKi8KPiAraW50IGk5MTVfZ3VjX3N1Ym1pc3Npb25f aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiArdm9pZCBpOTE1X2d1Y19zdWJtaXNzaW9u X2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gKwpbVE9SOl0gaTkxNV9ndWNfc3VibWlz c2lvbl9pbml0IGdldHMgdXNlZCBpbiB0aGlzIHBhdGNoLgpVbmV4cGVjdGVkbHksIGk5MTVfZ3Vj X3N1Ym1pc3Npb25fZmluaSBkb2VzIG5vdCBnZXQgdXNlZAppbiB0aGlzIHBhdGNoLgoKQSBsYXRl ciBwYXRjaCBpbiB0aGlzIHNlcmllcyBhZGRzIHRoZSBjYWxsIHRvCmk5MTVfZ3VjX3N1Ym1pc3Np b25fZmluaSBpbiBpbnRlbF9ndWNfdWNvZGVfZmluaS4KU2hvdWxkIHRoYXQgY2FsbCBiZSBhZGRl ZCBpbiB0aGlzIHBhdGNoPwoKPiAgI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2d1Y19sb2FkZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1 Y19sb2FkZXIuYwo+IGluZGV4IDIwODBiY2EuLmU1ZDcxMzYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvYWRlci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZ3VjX2xvYWRlci5jCj4gQEAgLTEyOCw2ICsxMjgsMjEgQEAgc3RhdGljIHZv aWQgc2V0X2d1Y19pbml0X3BhcmFtcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYp Cj4gIAkJCWk5MTUuZ3VjX2xvZ19sZXZlbCA8PCBHVUNfTE9HX1ZFUkJPU0lUWV9TSElGVDsKPiAg CX0KPiAgCj4gKwkvKiBJZiBHdUMgc2NoZWR1bGluZyBpcyBlbmFibGVkLCBzZXR1cCBwYXJhbXMg aGVyZS4gKi8KW1RPUjpdIEkgYXNzdW1lIGZyb20gdGhpcyAiR3VDIHNjaGVkdWxpbmciID09ICJH dUMgc3VibWlzc2lvbiIuClRoaXMgaXMgYSBsaXR0bGUgY29uZnVzaW5nLiAgSSByZWNvbW1lbmQg ZWl0aGVyIHJld29yZAoiR3VDIHNjaGVkdWxpbmciIG9yIGFkZCBjb21tZW50IHRleHQgdG8gZXhw bGFpbi4KCj4gKwlpZiAoaTkxNS5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pIHsKPiArCQl1MzIgcGdz ID0gaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KGRldl9wcml2LT5ndWMuY3R4X3Bvb2xfb2JqKTsK PiArCQl1MzIgY3R4X2luXzE2ID0gR1VDX01BWF9HUFVfQ09OVEVYVFMgLyAxNjsKPiArCj4gKwkJ cGdzID4+PSBQQUdFX1NISUZUOwo+ICsJCXBhcmFtc1tHVUNfQ1RMX0NUWElORk9dID0gKHBncyA8 PCBHVUNfQ1RMX0JBU0VfQUREUl9TSElGVCkgfAo+ICsJCQkoY3R4X2luXzE2IDw8IEdVQ19DVExf Q1RYTlVNX0lOMTZfU0hJRlQpOwo+ICsKPiArCQlwYXJhbXNbR1VDX0NUTF9GRUFUVVJFXSB8PSBH VUNfQ1RMX0tFUk5FTF9TVUJNSVNTSU9OUzsKPiArCj4gKwkJLyogVW5tYXNrIHRoaXMgYml0IHRv IGVuYWJsZSBHdUMgc2NoZWR1bGVyICovCj4gKwkJcGFyYW1zW0dVQ19DVExfRkVBVFVSRV0gJj0g fkdVQ19DVExfRElTQUJMRV9TQ0hFRFVMRVI7Cj4gKwl9Cj4gKwo+ICAJSTkxNV9XUklURShTT0ZU X1NDUkFUQ0goMCksIDApOwo+ICAKPiAgCWZvciAoaSA9IDA7IGkgPCBHVUNfQ1RMX01BWF9EV09S RFM7IGkrKykKPiBAQCAtNDUwLDYgKzQ2NSwxMCBAQCBpbnQgaW50ZWxfZ3VjX3Vjb2RlX2xvYWQo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQlicmVhazsKPiAgCX0KPiAgCj4gKwllcnIgPSBp OTE1X2d1Y19zdWJtaXNzaW9uX2luaXQoZGV2KTsKPiArCWlmIChlcnIpCj4gKwkJZ290byBmYWls Owo+ICsKPiAgCWVyciA9IGd1Y191Y29kZV94ZmVyKGRldl9wcml2KTsKPiAgCWlmIChlcnIpCj4g IAkJZ290byBmYWlsOwo+IC0tIAo+IDEuOS4xCj4gCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==