From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH 51/55] drm/i915: i915_vma_move_to_active prep patch Date: Tue, 26 Jul 2016 15:53:30 +0300 Message-ID: <1469537610.4681.90.camel@linux.intel.com> References: <1469467954-3920-1-git-send-email-chris@chris-wilson.co.uk> <1469467954-3920-52-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 55BB96E16F for ; Tue, 26 Jul 2016 12:53:33 +0000 (UTC) In-Reply-To: <1469467954-3920-52-git-send-email-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 T24gbWEsIDIwMTYtMDctMjUgYXQgMTg6MzIgKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiBU aGlzIHBhdGNoIGlzIGJyb2tlbiBvdXQgb2YgdGhlIG5leHQganVzdCB0byByZW1vdmUgdGhlIGNv ZGUgbW90aW9uIGZyb20KPiB0aGF0IHBhdGNoIGFuZCBtYWtlIGl0IG1vcmUgcmVhZGFibGUuIFdo YXQgd2UgZG8gaGVyZSBpcyBtb3ZlIHRoZQo+IGk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKCkgdG8g aTkxNV9nZW1fZXhlY2J1ZmZlci5jIGFuZCBwdXQgdGhlIHRocmVlCj4gc3RhZ2VzIChyZWFkLCB3 cml0ZSwgZmVuY2VkKSB0b2dldGhlciBzbyB0aGF0IGZ1dHVyZSBtb2RpZmljYXRpb25zIHRvCj4g YWN0aXZlIGhhbmRsaW5nIGFyZSBhbGwgbG9jYXRlZCBpbiB0aGUgc2FtZSBzcG90LiBUaGUgaW1w b3J0YW5jZSBvZiB0aGlzCj4gaXMgc28gdGhhdCB3ZSBjYW4gbW9yZSBzaW1wbHkgY29udHJvbCB0 aGUgb3JkZXIgaW4gd2hpY2ggdGhlIHJlcXVlc3RzCj4gYXJlIHBsYWNlIGluIHRoZSByZXRpcmVt ZW50IGxpc3QgKGkuZS4gY29udHJvbCB0aGUgb3JkZXIgYXQgd2hpY2ggd2UKPiByZXRpcmUgYW5k IHNvIGNvbnRyb2wgdGhlIGxpZmV0aW1lcyB0byBhdm9pZCBoYXZpbmcgdG8gaG9sZCBvbnRvCj4g cmVmZXJlbmNlcykuCj4gCgpUaGlzIGlzIG11Y2ggYmV0dGVyLiBTbywKClJldmlld2VkLWJ5OiBK b29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Cgo+IFNpZ25l ZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IC0tLQo+ IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqB8wqDCoDMgKy0KPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmPCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgfCAxOCAtLS0tLS0tLQo+IMKgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fY29udGV4dC5jwqDCoMKgwqDCoMKgfMKgwqA5ICsrLS0KPiDCoGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuY8KgwqDCoHwgNjUgKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLQo+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVy X3N0YXRlLmMgfMKgwqAyICstCj4gwqA1IGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyks IDQ2IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IGluZGV4IDAzZjEy MzA0MzA4YS4uNDg3NmQyYTZjMmM0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gQEAg LTMxNTMsNyArMzE1Myw4IEBAIGludCBfX211c3RfY2hlY2sgaTkxNV9tdXRleF9sb2NrX2ludGVy cnVwdGlibGUoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cj4gwqBpbnQgaTkxNV9nZW1fb2JqZWN0 X3N5bmMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKPiDCoAkJCcKgc3RydWN0IGRy bV9pOTE1X2dlbV9yZXF1ZXN0ICp0byk7Cj4gwqB2b2lkIGk5MTVfdm1hX21vdmVfdG9fYWN0aXZl KHN0cnVjdCBpOTE1X3ZtYSAqdm1hLAo+IC0JCQnCoMKgwqDCoMKgc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEpOwo+ICsJCQnCoMKgwqDCoMKgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXEsCj4gKwkJCcKgwqDCoMKgwqB1bnNpZ25lZCBpbnQgZmxhZ3MpOwo+IMKgaW50IGk5 MTVfZ2VtX2R1bWJfY3JlYXRlKHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2LAo+IMKgCQkJwqBz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+IMKgCQkJwqBzdHJ1Y3QgZHJtX21vZGVfY3JlYXRlX2R1 bWIgKmFyZ3MpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+IGluZGV4IGM1NzJjODBhNjYwNC4u MmUwYjU0ZmEwM2Y5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gQEAgLTIzMzAsMjQg KzIzMzAsNiBAQCB2b2lkICppOTE1X2dlbV9vYmplY3RfcGluX21hcChzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdCAqb2JqKQo+IMKgCXJldHVybiBvYmotPm1hcHBpbmc7Cj4gwqB9Cj4gwqAKPiAt dm9pZCBpOTE1X3ZtYV9tb3ZlX3RvX2FjdGl2ZShzdHJ1Y3QgaTkxNV92bWEgKnZtYSwKPiAtCQkJ wqDCoMKgwqDCoHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQo+IC17Cj4gLQlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqID0gdm1hLT5vYmo7Cj4gLQlzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICplbmdpbmU7Cj4gLQo+IC0JZW5naW5lID0gaTkxNV9nZW1fcmVxdWVzdF9nZXRf ZW5naW5lKHJlcSk7Cj4gLQo+IC0JLyogQWRkIGEgcmVmZXJlbmNlIGlmIHdlJ3JlIG5ld2x5IGVu dGVyaW5nIHRoZSBhY3RpdmUgbGlzdC4gKi8KPiAtCWlmIChvYmotPmFjdGl2ZSA9PSAwKQo+IC0J CWk5MTVfZ2VtX29iamVjdF9nZXQob2JqKTsKPiAtCW9iai0+YWN0aXZlIHw9IGludGVsX2VuZ2lu ZV9mbGFnKGVuZ2luZSk7Cj4gLQo+IC0JaTkxNV9nZW1fYWN0aXZlX3NldCgmb2JqLT5sYXN0X3Jl YWRbZW5naW5lLT5pZF0sIHJlcSk7Cj4gLQo+IC0JbGlzdF9tb3ZlX3RhaWwoJnZtYS0+dm1fbGlu aywgJnZtYS0+dm0tPmFjdGl2ZV9saXN0KTsKPiAtfQo+IC0KPiDCoHN0YXRpYyB2b2lkCj4gwqBp OTE1X2dlbV9vYmplY3RfcmV0aXJlX19mZW5jZShzdHJ1Y3QgaTkxNV9nZW1fYWN0aXZlICphY3Rp dmUsCj4gwqAJCQnCoMKgwqDCoMKgwqBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkK PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCj4gaW5kZXggNjA4NjFmNjE2 ZjI0Li4yOWIyNTQ3YTJiNGMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW1fY29udGV4dC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29u dGV4dC5jCj4gQEAgLTgxNiw4ICs4MTYsOCBAQCBzdGF0aWMgaW50IGRvX3Jjc19zd2l0Y2goc3Ry dWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCj4gwqAJwqAqIE1JX1NFVF9DT05URVhUIGlu c3RlYWQgb2Ygd2hlbiB0aGUgbmV4dCBzZXFubyBoYXMgY29tcGxldGVkLgo+IMKgCcKgKi8KPiDC oAlpZiAoZnJvbSAhPSBOVUxMKSB7Cj4gLQkJZnJvbS0+ZW5naW5lW1JDU10uc3RhdGUtPmJhc2Uu cmVhZF9kb21haW5zID0gSTkxNV9HRU1fRE9NQUlOX0lOU1RSVUNUSU9OOwo+IC0JCWk5MTVfdm1h X21vdmVfdG9fYWN0aXZlKGk5MTVfZ2VtX29ial90b19nZ3R0KGZyb20tPmVuZ2luZVtSQ1NdLnN0 YXRlKSwgcmVxKTsKPiArCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqID0gZnJvbS0+ ZW5naW5lW1JDU10uc3RhdGU7Cj4gKwo+IMKgCQkvKiBBcyBsb25nIGFzIE1JX1NFVF9DT05URVhU IGlzIHNlcmlhbGl6aW5nLCBpZS4gaXQgZmx1c2hlcyB0aGUKPiDCoAkJwqAqIHdob2xlIGRhbW4g cGlwZWxpbmUsIHdlIGRvbid0IG5lZWQgdG8gZXhwbGljaXRseSBtYXJrIHRoZQo+IMKgCQnCoCog b2JqZWN0IGRpcnR5LiBUaGUgb25seSBleGNlcHRpb24gaXMgdGhhdCB0aGUgY29udGV4dCBtdXN0 IGJlCj4gQEAgLTgyNSwxMCArODI1LDExIEBAIHN0YXRpYyBpbnQgZG9fcmNzX3N3aXRjaChzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKPiDCoAkJwqAqIGFibGUgdG8gZGVmZXIgZG9p bmcgdGhpcyB1bnRpbCB3ZSBrbm93IHRoZSBvYmplY3Qgd291bGQgYmUKPiDCoAkJwqAqIHN3YXBw ZWQsIGJ1dCB0aGVyZSBpcyBubyB3YXkgdG8gZG8gdGhhdCB5ZXQuCj4gwqAJCcKgKi8KPiAtCQlm cm9tLT5lbmdpbmVbUkNTXS5zdGF0ZS0+ZGlydHkgPSAxOwo+ICsJCW9iai0+YmFzZS5yZWFkX2Rv bWFpbnMgPSBJOTE1X0dFTV9ET01BSU5fSU5TVFJVQ1RJT047Cj4gKwkJaTkxNV92bWFfbW92ZV90 b19hY3RpdmUoaTkxNV9nZW1fb2JqX3RvX2dndHQob2JqKSwgcmVxLCAwKTsKPiDCoAo+IMKgCQkv KiBvYmogaXMga2VwdCBhbGl2ZSB1bnRpbCB0aGUgbmV4dCByZXF1ZXN0IGJ5IGl0cyBhY3RpdmUg cmVmICovCj4gLQkJaTkxNV9nZW1fb2JqZWN0X2dndHRfdW5waW4oZnJvbS0+ZW5naW5lW1JDU10u c3RhdGUpOwo+ICsJCWk5MTVfZ2VtX29iamVjdF9nZ3R0X3VucGluKG9iaik7Cj4gwqAJCWk5MTVf Z2VtX2NvbnRleHRfcHV0KGZyb20pOwo+IMKgCX0KPiDCoAllbmdpbmUtPmxhc3RfY29udGV4dCA9 IGk5MTVfZ2VtX2NvbnRleHRfZ2V0KHRvKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZXhlY2J1ZmZlci5jCj4gaW5kZXggOTc3OGIxYmM2MzM2Li5kMGYxZGEyODYzZTQgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCj4gQEAgLTExNDMs NDMgKzExNDMsNjQgQEAgaTkxNV9nZW1fdmFsaWRhdGVfY29udGV4dChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCj4gwqAJcmV0dXJuIGN0eDsKPiDCoH0KPiDC oAo+ICt2b2lkIGk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKHN0cnVjdCBpOTE1X3ZtYSAqdm1hLAo+ ICsJCQnCoMKgwqDCoMKgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCj4gKwkJCcKg wqDCoMKgwqB1bnNpZ25lZCBpbnQgZmxhZ3MpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmogPSB2bWEtPm9iajsKPiArCWNvbnN0IHVuc2lnbmVkIGludCBpZHggPSByZXEt PmVuZ2luZS0+aWQ7Cj4gKwo+ICsJR0VNX0JVR19PTighZHJtX21tX25vZGVfYWxsb2NhdGVkKCZ2 bWEtPm5vZGUpKTsKPiArCj4gKwlvYmotPmRpcnR5ID0gMTsgLyogYmUgcGFyYW5vaWTCoMKgKi8K PiArCj4gKwkvKiBBZGQgYSByZWZlcmVuY2UgaWYgd2UncmUgbmV3bHkgZW50ZXJpbmcgdGhlIGFj dGl2ZSBsaXN0LiAqLwo+ICsJaWYgKG9iai0+YWN0aXZlID09IDApCj4gKwkJaTkxNV9nZW1fb2Jq ZWN0X2dldChvYmopOwo+ICsJb2JqLT5hY3RpdmUgfD0gMSA8PCBpZHg7Cj4gKwlpOTE1X2dlbV9h Y3RpdmVfc2V0KCZvYmotPmxhc3RfcmVhZFtpZHhdLCByZXEpOwo+ICsKPiArCWlmIChmbGFncyAm IEVYRUNfT0JKRUNUX1dSSVRFKSB7Cj4gKwkJaTkxNV9nZW1fYWN0aXZlX3NldCgmb2JqLT5sYXN0 X3dyaXRlLCByZXEpOwo+ICsKPiArCQlpbnRlbF9mYl9vYmpfaW52YWxpZGF0ZShvYmosIE9SSUdJ Tl9DUyk7Cj4gKwo+ICsJCS8qIHVwZGF0ZSBmb3IgdGhlIGltcGxpY2l0IGZsdXNoIGFmdGVyIGEg YmF0Y2ggKi8KPiArCQlvYmotPmJhc2Uud3JpdGVfZG9tYWluICY9IH5JOTE1X0dFTV9HUFVfRE9N QUlOUzsKPiArCX0KPiArCj4gKwlpZiAoZmxhZ3MgJiBFWEVDX09CSkVDVF9ORUVEU19GRU5DRSkg ewo+ICsJCWk5MTVfZ2VtX2FjdGl2ZV9zZXQoJm9iai0+bGFzdF9mZW5jZSwgcmVxKTsKPiArCQlp ZiAoZmxhZ3MgJiBfX0VYRUNfT0JKRUNUX0hBU19GRU5DRSkgewo+ICsJCQlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSByZXEtPmk5MTU7Cj4gKwo+ICsJCQlsaXN0X21vdmVfdGFp bCgmZGV2X3ByaXYtPmZlbmNlX3JlZ3Nbb2JqLT5mZW5jZV9yZWddLmxydV9saXN0LAo+ICsJCQkJ wqDCoMKgwqDCoMKgwqAmZGV2X3ByaXYtPm1tLmZlbmNlX2xpc3QpOwo+ICsJCX0KPiArCX0KPiAr Cj4gKwlsaXN0X21vdmVfdGFpbCgmdm1hLT52bV9saW5rLCAmdm1hLT52bS0+YWN0aXZlX2xpc3Qp Owo+ICt9Cj4gKwo+IMKgc3RhdGljIHZvaWQKPiDCoGk5MTVfZ2VtX2V4ZWNidWZmZXJfbW92ZV90 b19hY3RpdmUoc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKPiDCoAkJCQnCoMKgwqBzdHJ1Y3QgZHJt X2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKPiDCoHsKPiAtCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZSA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X2VuZ2luZShyZXEpOwo+IMKgCXN0cnVjdCBp OTE1X3ZtYSAqdm1hOwo+IMKgCj4gwqAJbGlzdF9mb3JfZWFjaF9lbnRyeSh2bWEsIHZtYXMsIGV4 ZWNfbGlzdCkgewo+IC0JCXN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY19vYmplY3QyICplbnRyeSA9 IHZtYS0+ZXhlY19lbnRyeTsKPiDCoAkJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9 IHZtYS0+b2JqOwo+IMKgCQl1MzIgb2xkX3JlYWQgPSBvYmotPmJhc2UucmVhZF9kb21haW5zOwo+ IMKgCQl1MzIgb2xkX3dyaXRlID0gb2JqLT5iYXNlLndyaXRlX2RvbWFpbjsKPiDCoAo+IC0JCW9i ai0+ZGlydHkgPSAxOyAvKiBiZSBwYXJhbm9pZMKgwqAqLwo+IMKgCQlvYmotPmJhc2Uud3JpdGVf ZG9tYWluID0gb2JqLT5iYXNlLnBlbmRpbmdfd3JpdGVfZG9tYWluOwo+IC0JCWlmIChvYmotPmJh c2Uud3JpdGVfZG9tYWluID09IDApCj4gKwkJaWYgKG9iai0+YmFzZS53cml0ZV9kb21haW4pCj4g KwkJCXZtYS0+ZXhlY19lbnRyeS0+ZmxhZ3MgfD0gRVhFQ19PQkpFQ1RfV1JJVEU7Cj4gKwkJZWxz ZQo+IMKgCQkJb2JqLT5iYXNlLnBlbmRpbmdfcmVhZF9kb21haW5zIHw9IG9iai0+YmFzZS5yZWFk X2RvbWFpbnM7Cj4gwqAJCW9iai0+YmFzZS5yZWFkX2RvbWFpbnMgPSBvYmotPmJhc2UucGVuZGlu Z19yZWFkX2RvbWFpbnM7Cj4gwqAKPiAtCQlpOTE1X3ZtYV9tb3ZlX3RvX2FjdGl2ZSh2bWEsIHJl cSk7Cj4gLQkJaWYgKG9iai0+YmFzZS53cml0ZV9kb21haW4pIHsKPiAtCQkJaTkxNV9nZW1fYWN0 aXZlX3NldCgmb2JqLT5sYXN0X3dyaXRlLCByZXEpOwo+IC0KPiAtCQkJaW50ZWxfZmJfb2JqX2lu dmFsaWRhdGUob2JqLCBPUklHSU5fQ1MpOwo+IC0KPiAtCQkJLyogdXBkYXRlIGZvciB0aGUgaW1w bGljaXQgZmx1c2ggYWZ0ZXIgYSBiYXRjaCAqLwo+IC0JCQlvYmotPmJhc2Uud3JpdGVfZG9tYWlu ICY9IH5JOTE1X0dFTV9HUFVfRE9NQUlOUzsKPiAtCQl9Cj4gLQkJaWYgKGVudHJ5LT5mbGFncyAm IEVYRUNfT0JKRUNUX05FRURTX0ZFTkNFKSB7Cj4gLQkJCWk5MTVfZ2VtX2FjdGl2ZV9zZXQoJm9i ai0+bGFzdF9mZW5jZSwgcmVxKTsKPiAtCQkJaWYgKGVudHJ5LT5mbGFncyAmIF9fRVhFQ19PQkpF Q1RfSEFTX0ZFTkNFKSB7Cj4gLQkJCQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBlbmdpbmUtPmk5MTU7Cj4gLQkJCQlsaXN0X21vdmVfdGFpbCgmZGV2X3ByaXYtPmZlbmNlX3Jl Z3Nbb2JqLT5mZW5jZV9yZWddLmxydV9saXN0LAo+IC0JCQkJCcKgwqDCoMKgwqDCoMKgJmRldl9w cml2LT5tbS5mZW5jZV9saXN0KTsKPiAtCQkJfQo+IC0JCX0KPiAtCj4gKwkJaTkxNV92bWFfbW92 ZV90b19hY3RpdmUodm1hLCByZXEsIHZtYS0+ZXhlY19lbnRyeS0+ZmxhZ3MpOwo+IMKgCQl0cmFj ZV9pOTE1X2dlbV9vYmplY3RfY2hhbmdlX2RvbWFpbihvYmosIG9sZF9yZWFkLCBvbGRfd3JpdGUp Owo+IMKgCX0KPiDCoH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fcmVuZGVyX3N0YXRlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9yZW5kZXJf c3RhdGUuYwo+IGluZGV4IGY4NWM1NTA1YmNlMi4uOTAyMzY2NzJhYzFlIDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3JlbmRlcl9zdGF0ZS5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVuZGVyX3N0YXRlLmMKPiBAQCAtMjE3LDcgKzIx Nyw3IEBAIGludCBpOTE1X2dlbV9yZW5kZXJfc3RhdGVfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcSkKPiDCoAkJCWdvdG8gZXJyX3VucGluOwo+IMKgCX0KPiDCoAo+IC0JaTkx NV92bWFfbW92ZV90b19hY3RpdmUoaTkxNV9nZW1fb2JqX3RvX2dndHQoc28ub2JqKSwgcmVxKTsK PiArCWk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKGk5MTVfZ2VtX29ial90b19nZ3R0KHNvLm9iaiks IHJlcSwgMCk7Cj4gwqBlcnJfdW5waW46Cj4gwqAJaTkxNV9nZW1fb2JqZWN0X2dndHRfdW5waW4o c28ub2JqKTsKPiDCoGVycl9vYmo6Ci0tIApKb29uYXMgTGFodGluZW4KT3BlbiBTb3VyY2UgVGVj aG5vbG9neSBDZW50ZXIKSW50ZWwgQ29ycG9yYXRpb24KX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==