From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH 06/15] drm/i915: Split vma exec_link/evict_link Date: Fri, 24 Feb 2017 14:20:10 +0200 Message-ID: <874lzjdblx.fsf@gaia.fi.intel.com> References: <20170223161830.26965-1-chris@chris-wilson.co.uk> <20170223161830.26965-7-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2748D89B99 for ; Fri, 24 Feb 2017 12:21:29 +0000 (UTC) In-Reply-To: <20170223161830.26965-7-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyaXRlczoKCj4gQ3VycmVu dGx5IHRoZSB2bWEgaGFzIG9uZSBsaW5rIG1lbWJlciB0aGF0IGlzIHVzZWQgZm9yIGJvdGggaG9s ZGluZyBpdHMKPiBwbGFjZSBpbiB0aGUgZXhlY2J1ZiByZXNlcnZhdGlvbiBsaXN0LCBhbmQgaW4g YW55IGV2aWN0aW9uIGxpc3QuIFRoaXMKPiBkdWFsIHByb3BlcnR5IGlzIHF1aXRlIHRyaWNreSBh bmQgZXJyb3IgcHJvbmUuCj4KPiBTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNo cmlzLXdpbHNvbi5jby51az4KClJldmlld2VkLWJ5OiBNaWthIEt1b3BwYWxhIDxtaWthLmt1b3Bw YWxhQGludGVsLmNvbT4KCj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2 aWN0LmMgICAgICB8IDE0ICsrKysrKy0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW1fZXhlY2J1ZmZlci5jIHwgMzIgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1hLmggICAgICAgICAgICB8ICA3ICsrKysrLS0K PiAgMyBmaWxlcyBjaGFuZ2VkLCAyOCBpbnNlcnRpb25zKCspLCAyNSBkZWxldGlvbnMoLSkKPgo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXZpY3QuYwo+IGluZGV4IDQ3NTNjM2Y0NmY3ZS4u MmE2ZWIyY2VmZjc5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2V2aWN0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jCj4g QEAgLTYyLDcgKzYyLDcgQEAgbWFya19mcmVlKHN0cnVjdCBkcm1fbW1fc2NhbiAqc2NhbiwKPiAg CWlmIChmbGFncyAmIFBJTl9OT05GQVVMVCAmJiAhbGlzdF9lbXB0eSgmdm1hLT5vYmotPnVzZXJm YXVsdF9saW5rKSkKPiAgCQlyZXR1cm4gZmFsc2U7Cj4gIAo+IC0JbGlzdF9hZGQoJnZtYS0+ZXhl Y19saXN0LCB1bndpbmQpOwo+ICsJbGlzdF9hZGQoJnZtYS0+ZXZpY3RfbGluaywgdW53aW5kKTsK PiAgCXJldHVybiBkcm1fbW1fc2Nhbl9hZGRfYmxvY2soc2NhbiwgJnZtYS0+bm9kZSk7Cj4gIH0K PiAgCj4gQEAgLTE1NCw3ICsxNTQsNyBAQCBpOTE1X2dlbV9ldmljdF9zb21ldGhpbmcoc3RydWN0 IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gIAl9IHdoaWxlICgqKytwaGFzZSk7Cj4gIAo+ICAJ LyogTm90aGluZyBmb3VuZCwgY2xlYW4gdXAgYW5kIGJhaWwgb3V0ISAqLwo+IC0JbGlzdF9mb3Jf ZWFjaF9lbnRyeV9zYWZlKHZtYSwgbmV4dCwgJmV2aWN0aW9uX2xpc3QsIGV4ZWNfbGlzdCkgewo+ ICsJbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHZtYSwgbmV4dCwgJmV2aWN0aW9uX2xpc3QsIGV2 aWN0X2xpbmspIHsKPiAgCQlyZXQgPSBkcm1fbW1fc2Nhbl9yZW1vdmVfYmxvY2soJnNjYW4sICZ2 bWEtPm5vZGUpOwo+ICAJCUJVR19PTihyZXQpOwo+ICAJfQo+IEBAIC0yMDEsMTYgKzIwMSwxNiBA QCBpOTE1X2dlbV9ldmljdF9zb21ldGhpbmcoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0s Cj4gIAkgKiBjYWxsaW5nIHVuYmluZCAod2hpY2ggbWF5IHJlbW92ZSB0aGUgYWN0aXZlIHJlZmVy ZW5jZQo+ICAJICogb2YgYW55IG9mIG91ciBvYmplY3RzLCB0aHVzIGNvcnJ1cHRpbmcgdGhlIGxp c3QpLgo+ICAJICovCj4gLQlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUodm1hLCBuZXh0LCAmZXZp Y3Rpb25fbGlzdCwgZXhlY19saXN0KSB7Cj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUodm1h LCBuZXh0LCAmZXZpY3Rpb25fbGlzdCwgZXZpY3RfbGluaykgewo+ICAJCWlmIChkcm1fbW1fc2Nh bl9yZW1vdmVfYmxvY2soJnNjYW4sICZ2bWEtPm5vZGUpKQo+ICAJCQlfX2k5MTVfdm1hX3Bpbih2 bWEpOwo+ICAJCWVsc2UKPiAtCQkJbGlzdF9kZWwoJnZtYS0+ZXhlY19saXN0KTsKPiArCQkJbGlz dF9kZWwoJnZtYS0+ZXZpY3RfbGluayk7Cj4gIAl9Cj4gIAo+ICAJLyogVW5iaW5kaW5nIHdpbGwg ZW1pdCBhbnkgcmVxdWlyZWQgZmx1c2hlcyAqLwo+ICAJcmV0ID0gMDsKPiAtCWxpc3RfZm9yX2Vh Y2hfZW50cnlfc2FmZSh2bWEsIG5leHQsICZldmljdGlvbl9saXN0LCBleGVjX2xpc3QpIHsKPiAr CWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZSh2bWEsIG5leHQsICZldmljdGlvbl9saXN0LCBldmlj dF9saW5rKSB7Cj4gIAkJX19pOTE1X3ZtYV91bnBpbih2bWEpOwo+ICAJCWlmIChyZXQgPT0gMCkK PiAgCQkJcmV0ID0gaTkxNV92bWFfdW5iaW5kKHZtYSk7Cj4gQEAgLTMyMywxMCArMzIzLDEwIEBA IGludCBpOTE1X2dlbV9ldmljdF9mb3Jfbm9kZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2 bSwKPiAgCQkgKiByZWZlcmVuY2UpIGFub3RoZXIgaW4gb3VyIGV2aWN0aW9uIGxpc3QuCj4gIAkJ ICovCj4gIAkJX19pOTE1X3ZtYV9waW4odm1hKTsKPiAtCQlsaXN0X2FkZCgmdm1hLT5leGVjX2xp c3QsICZldmljdGlvbl9saXN0KTsKPiArCQlsaXN0X2FkZCgmdm1hLT5ldmljdF9saW5rLCAmZXZp Y3Rpb25fbGlzdCk7Cj4gIAl9Cj4gIAo+IC0JbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHZtYSwg bmV4dCwgJmV2aWN0aW9uX2xpc3QsIGV4ZWNfbGlzdCkgewo+ICsJbGlzdF9mb3JfZWFjaF9lbnRy eV9zYWZlKHZtYSwgbmV4dCwgJmV2aWN0aW9uX2xpc3QsIGV2aWN0X2xpbmspIHsKPiAgCQlfX2k5 MTVfdm1hX3VucGluKHZtYSk7Cj4gIAkJaWYgKHJldCA9PSAwKQo+ICAJCQlyZXQgPSBpOTE1X3Zt YV91bmJpbmQodm1hKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZXhlY2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZl ci5jCj4gaW5kZXggOWMxZGFjYWJlN2VmLi5jMjI5ZDY5Yjg3NTcgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCj4gQEAgLTEzNCw3ICsxMzQsNyBAQCBl Yl9yZXNldChzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyICplYikKPiAgewo+ICAJc3RydWN0IGk5MTVf dm1hICp2bWE7Cj4gIAo+IC0JbGlzdF9mb3JfZWFjaF9lbnRyeSh2bWEsICZlYi0+dm1hcywgZXhl Y19saXN0KSB7Cj4gKwlsaXN0X2Zvcl9lYWNoX2VudHJ5KHZtYSwgJmViLT52bWFzLCBleGVjX2xp bmspIHsKPiAgCQllYl91bnJlc2VydmVfdm1hKHZtYSk7Cj4gIAkJaTkxNV92bWFfcHV0KHZtYSk7 Cj4gIAkJdm1hLT5leGVjX2VudHJ5ID0gTlVMTDsKPiBAQCAtMTQ3LDcgKzE0Nyw3IEBAIGViX3Jl c2V0KHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQo+ICBzdGF0aWMgc3RydWN0IGk5MTVfdm1h ICoKPiAgZWJfZ2V0X2JhdGNoKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQo+ICB7Cj4gLQlz dHJ1Y3QgaTkxNV92bWEgKnZtYSA9IGxpc3RfZW50cnkoZWItPnZtYXMucHJldiwgdHlwZW9mKCp2 bWEpLCBleGVjX2xpc3QpOwo+ICsJc3RydWN0IGk5MTVfdm1hICp2bWEgPSBsaXN0X2VudHJ5KGVi LT52bWFzLnByZXYsIHR5cGVvZigqdm1hKSwgZXhlY19saW5rKTsKPiAgCj4gIAkvKgo+ICAJICog U05BIGlzIGRvaW5nIGZhbmN5IHRyaWNrcyB3aXRoIGNvbXByZXNzaW5nIGJhdGNoIGJ1ZmZlcnMs IHdoaWNoIGxlYWRzCj4gQEAgLTIyNCw3ICsyMjQsNyBAQCBlYl9sb29rdXBfdm1hcyhzdHJ1Y3Qg aTkxNV9leGVjYnVmZmVyICplYikKPiAgCQl9Cj4gIAo+ICAJCS8qIFRyYW5zZmVyIG93bmVyc2hp cCBmcm9tIHRoZSBvYmplY3RzIGxpc3QgdG8gdGhlIHZtYXMgbGlzdC4gKi8KPiAtCQlsaXN0X2Fk ZF90YWlsKCZ2bWEtPmV4ZWNfbGlzdCwgJmViLT52bWFzKTsKPiArCQlsaXN0X2FkZF90YWlsKCZ2 bWEtPmV4ZWNfbGluaywgJmViLT52bWFzKTsKPiAgCQlsaXN0X2RlbF9pbml0KCZvYmotPm9ial9l eGVjX2xpbmspOwo+ICAKPiAgCQl2bWEtPmV4ZWNfZW50cnkgPSAmZWItPmV4ZWNbaV07Cj4gQEAg LTI4Myw3ICsyODMsNyBAQCBzdGF0aWMgdm9pZCBlYl9kZXN0cm95KHN0cnVjdCBpOTE1X2V4ZWNi dWZmZXIgKmViKQo+ICB7Cj4gIAlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKPiAgCj4gLQlsaXN0X2Zv cl9lYWNoX2VudHJ5KHZtYSwgJmViLT52bWFzLCBleGVjX2xpc3QpIHsKPiArCWxpc3RfZm9yX2Vh Y2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNfbGluaykgewo+ICAJCWlmICghdm1hLT5leGVj X2VudHJ5KQo+ICAJCQljb250aW51ZTsKPiAgCj4gQEAgLTc0OCw3ICs3NDgsNyBAQCBzdGF0aWMg aW50IGViX3JlbG9jYXRlKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQo+ICAJc3RydWN0IGk5 MTVfdm1hICp2bWE7Cj4gIAlpbnQgcmV0ID0gMDsKPiAgCj4gLQlsaXN0X2Zvcl9lYWNoX2VudHJ5 KHZtYSwgJmViLT52bWFzLCBleGVjX2xpc3QpIHsKPiArCWxpc3RfZm9yX2VhY2hfZW50cnkodm1h LCAmZWItPnZtYXMsIGV4ZWNfbGluaykgewo+ICAJCXJldCA9IGViX3JlbG9jYXRlX3ZtYSh2bWEs IGViKTsKPiAgCQlpZiAocmV0KQo+ICAJCQlicmVhazsKPiBAQCAtOTAwLDcgKzkwMCw3IEBAIHN0 YXRpYyBpbnQgZWJfcmVzZXJ2ZShzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyICplYikKPiAgCQlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNfb2JqZWN0MiAqZW50cnk7Cj4gIAkJYm9vbCBuZWVkX2ZlbmNl LCBuZWVkX21hcHBhYmxlOwo+ICAKPiAtCQl2bWEgPSBsaXN0X2ZpcnN0X2VudHJ5KCZlYi0+dm1h cywgc3RydWN0IGk5MTVfdm1hLCBleGVjX2xpc3QpOwo+ICsJCXZtYSA9IGxpc3RfZmlyc3RfZW50 cnkoJmViLT52bWFzLCBzdHJ1Y3QgaTkxNV92bWEsIGV4ZWNfbGluayk7Cj4gIAkJb2JqID0gdm1h LT5vYmo7Cj4gIAkJZW50cnkgPSB2bWEtPmV4ZWNfZW50cnk7Cj4gIAo+IEBAIC05MTUsMTIgKzkx NSwxMiBAQCBzdGF0aWMgaW50IGViX3Jlc2VydmUoc3RydWN0IGk5MTVfZXhlY2J1ZmZlciAqZWIp Cj4gIAkJbmVlZF9tYXBwYWJsZSA9IG5lZWRfZmVuY2UgfHwgbmVlZF9yZWxvY19tYXBwYWJsZSh2 bWEpOwo+ICAKPiAgCQlpZiAoZW50cnktPmZsYWdzICYgRVhFQ19PQkpFQ1RfUElOTkVEKQo+IC0J CQlsaXN0X21vdmVfdGFpbCgmdm1hLT5leGVjX2xpc3QsICZwaW5uZWRfdm1hcyk7Cj4gKwkJCWxp c3RfbW92ZV90YWlsKCZ2bWEtPmV4ZWNfbGluaywgJnBpbm5lZF92bWFzKTsKPiAgCQllbHNlIGlm IChuZWVkX21hcHBhYmxlKSB7Cj4gIAkJCWVudHJ5LT5mbGFncyB8PSBfX0VYRUNfT0JKRUNUX05F RURTX01BUDsKPiAtCQkJbGlzdF9tb3ZlKCZ2bWEtPmV4ZWNfbGlzdCwgJm9yZGVyZWRfdm1hcyk7 Cj4gKwkJCWxpc3RfbW92ZSgmdm1hLT5leGVjX2xpbmssICZvcmRlcmVkX3ZtYXMpOwo+ICAJCX0g ZWxzZQo+IC0JCQlsaXN0X21vdmVfdGFpbCgmdm1hLT5leGVjX2xpc3QsICZvcmRlcmVkX3ZtYXMp Owo+ICsJCQlsaXN0X21vdmVfdGFpbCgmdm1hLT5leGVjX2xpbmssICZvcmRlcmVkX3ZtYXMpOwo+ ICAKPiAgCQlvYmotPmJhc2UucGVuZGluZ19yZWFkX2RvbWFpbnMgPSBJOTE1X0dFTV9HUFVfRE9N QUlOUyAmIH5JOTE1X0dFTV9ET01BSU5fQ09NTUFORDsKPiAgCQlvYmotPmJhc2UucGVuZGluZ193 cml0ZV9kb21haW4gPSAwOwo+IEBAIC05NDUsNyArOTQ1LDcgQEAgc3RhdGljIGludCBlYl9yZXNl cnZlKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQo+ICAJCWludCByZXQgPSAwOwo+ICAKPiAg CQkvKiBVbmJpbmQgYW55IGlsbC1maXR0aW5nIG9iamVjdHMgb3IgcGluLiAqLwo+IC0JCWxpc3Rf Zm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNfbGlzdCkgewo+ICsJCWxpc3RfZm9y X2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNfbGluaykgewo+ICAJCQlpZiAoIWRybV9t bV9ub2RlX2FsbG9jYXRlZCgmdm1hLT5ub2RlKSkKPiAgCQkJCWNvbnRpbnVlOwo+ICAKPiBAQCAt OTU4LDcgKzk1OCw3IEBAIHN0YXRpYyBpbnQgZWJfcmVzZXJ2ZShzdHJ1Y3QgaTkxNV9leGVjYnVm ZmVyICplYikKPiAgCQl9Cj4gIAo+ICAJCS8qIEJpbmQgZnJlc2ggb2JqZWN0cyAqLwo+IC0JCWxp c3RfZm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNfbGlzdCkgewo+ICsJCWxpc3Rf Zm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNfbGluaykgewo+ICAJCQlpZiAoZHJt X21tX25vZGVfYWxsb2NhdGVkKCZ2bWEtPm5vZGUpKQo+ICAJCQkJY29udGludWU7Cj4gIAo+IEBA IC05NzIsNyArOTcyLDcgQEAgc3RhdGljIGludCBlYl9yZXNlcnZlKHN0cnVjdCBpOTE1X2V4ZWNi dWZmZXIgKmViKQo+ICAJCQlyZXR1cm4gcmV0Owo+ICAKPiAgCQkvKiBEZWNyZW1lbnQgcGluIGNv dW50IGZvciBib3VuZCBvYmplY3RzICovCj4gLQkJbGlzdF9mb3JfZWFjaF9lbnRyeSh2bWEsICZl Yi0+dm1hcywgZXhlY19saXN0KQo+ICsJCWxpc3RfZm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZt YXMsIGV4ZWNfbGluaykKPiAgCQkJZWJfdW5yZXNlcnZlX3ZtYSh2bWEpOwo+ICAKPiAgCQlyZXQg PSBpOTE1X2dlbV9ldmljdF92bShlYi0+dm0sIHRydWUpOwo+IEBAIC0xMDYxLDcgKzEwNjEsNyBA QCBlYl9yZWxvY2F0ZV9zbG93KHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQo+ICAJaWYgKHJl dCkKPiAgCQlnb3RvIGVycjsKPiAgCj4gLQlsaXN0X2Zvcl9lYWNoX2VudHJ5KHZtYSwgJmViLT52 bWFzLCBleGVjX2xpc3QpIHsKPiArCWxpc3RfZm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMs IGV4ZWNfbGluaykgewo+ICAJCWludCBpZHggPSB2bWEtPmV4ZWNfZW50cnkgLSBlYi0+ZXhlYzsK PiAgCj4gIAkJcmV0ID0gZWJfcmVsb2NhdGVfdm1hX3Nsb3codm1hLCBlYiwgcmVsb2MgKyByZWxv Y19vZmZzZXRbaWR4XSk7Cj4gQEAgLTEwODcsNyArMTA4Nyw3IEBAIGViX21vdmVfdG9fZ3B1KHN0 cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViKQo+ICAJc3RydWN0IGk5MTVfdm1hICp2bWE7Cj4gIAlp bnQgcmV0Owo+ICAKPiAtCWxpc3RfZm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNf bGlzdCkgewo+ICsJbGlzdF9mb3JfZWFjaF9lbnRyeSh2bWEsICZlYi0+dm1hcywgZXhlY19saW5r KSB7Cj4gIAkJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9IHZtYS0+b2JqOwo+ICAK PiAgCQlpZiAodm1hLT5leGVjX2VudHJ5LT5mbGFncyAmIEVYRUNfT0JKRUNUX0NBUFRVUkUpIHsK PiBAQCAtMTMwOSw3ICsxMzA5LDcgQEAgZWJfbW92ZV90b19hY3RpdmUoc3RydWN0IGk5MTVfZXhl Y2J1ZmZlciAqZWIpCj4gIHsKPiAgCXN0cnVjdCBpOTE1X3ZtYSAqdm1hOwo+ICAKPiAtCWxpc3Rf Zm9yX2VhY2hfZW50cnkodm1hLCAmZWItPnZtYXMsIGV4ZWNfbGlzdCkgewo+ICsJbGlzdF9mb3Jf ZWFjaF9lbnRyeSh2bWEsICZlYi0+dm1hcywgZXhlY19saW5rKSB7Cj4gIAkJc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaiA9IHZtYS0+b2JqOwo+ICAKPiAgCQlvYmotPmJhc2Uud3JpdGVf ZG9tYWluID0gb2JqLT5iYXNlLnBlbmRpbmdfd3JpdGVfZG9tYWluOwo+IEBAIC0xMzgzLDcgKzEz ODMsNyBAQCBzdGF0aWMgc3RydWN0IGk5MTVfdm1hICplYl9wYXJzZShzdHJ1Y3QgaTkxNV9leGVj YnVmZmVyICplYiwgYm9vbCBpc19tYXN0ZXIpCj4gIAkJbWVtc2V0KCZlYi0+c2hhZG93X2V4ZWNf ZW50cnksIDAsIHNpemVvZigqdm1hLT5leGVjX2VudHJ5KSk7Cj4gIAl2bWEtPmV4ZWNfZW50cnkt PmZsYWdzID0gX19FWEVDX09CSkVDVF9IQVNfUElOOwo+ICAJaTkxNV9nZW1fb2JqZWN0X2dldChz aGFkb3dfYmF0Y2hfb2JqKTsKPiAtCWxpc3RfYWRkX3RhaWwoJnZtYS0+ZXhlY19saXN0LCAmZWIt PnZtYXMpOwo+ICsJbGlzdF9hZGRfdGFpbCgmdm1hLT5leGVjX2xpbmssICZlYi0+dm1hcyk7Cj4g IAo+ICBvdXQ6Cj4gIAlpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMoc2hhZG93X2JhdGNoX29i aik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1hLmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZtYS5oCj4gaW5kZXggMmUwM2Y4MWRkZGJlLi40ZDgyNzMw MGQxYTggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92bWEuaAo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1hLmgKPiBAQCAtMTAwLDggKzEwMCwxMSBA QCBzdHJ1Y3QgaTkxNV92bWEgewo+ICAJc3RydWN0IGxpc3RfaGVhZCBvYmpfbGluazsgLyogTGlu ayBpbiB0aGUgb2JqZWN0J3MgVk1BIGxpc3QgKi8KPiAgCXN0cnVjdCByYl9ub2RlIG9ial9ub2Rl Owo+ICAKPiAtCS8qKiBUaGlzIHZtYSdzIHBsYWNlIGluIHRoZSBiYXRjaGJ1ZmZlciBvciBvbiB0 aGUgZXZpY3Rpb24gbGlzdCAqLwo+IC0Jc3RydWN0IGxpc3RfaGVhZCBleGVjX2xpc3Q7Cj4gKwkv KiogVGhpcyB2bWEncyBwbGFjZSBpbiB0aGUgZXhlY2J1ZiByZXNlcnZhdGlvbiBsaXN0ICovCj4g KwlzdHJ1Y3QgbGlzdF9oZWFkIGV4ZWNfbGluazsKPiArCj4gKwkvKiogVGhpcyB2bWEncyBwbGFj ZSBpbiB0aGUgZXZpY3Rpb24gbGlzdCAqLwo+ICsJc3RydWN0IGxpc3RfaGVhZCBldmljdF9saW5r Owo+ICAKPiAgCS8qKgo+ICAJICogVXNlZCBmb3IgcGVyZm9ybWluZyByZWxvY2F0aW9ucyBkdXJp bmcgZXhlY2J1ZmZlciBpbnNlcnRpb24uCj4gLS0gCj4gMi4xMS4wCj4KPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IEludGVsLWdmeCBtYWlsaW5nIGxp c3QKPiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==