From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 13/38] drm/i915: Move obj->active:5 to obj->flags Date: Wed, 8 Jun 2016 11:53:08 +0200 Message-ID: <20160608095308.GV3363@phenom.ffwll.local> References: <1464972953-2726-1-git-send-email-chris@chris-wilson.co.uk> <1464972953-2726-14-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 mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id EE47F6E956 for ; Wed, 8 Jun 2016 09:53:12 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id r5so1590944wmr.0 for ; Wed, 08 Jun 2016 02:53:12 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1464972953-2726-14-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 Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBKdW4gMDMsIDIwMTYgYXQgMDU6NTU6MjhQTSArMDEwMCwgQ2hyaXMgV2lsc29uIHdy b3RlOgo+IFdlIGFyZSBtb3RpdmF0ZWQgdG8gYXZvaWQgdXNpbmcgYSBiaXRmaWVsZCBmb3Igb2Jq LT5hY3RpdmUgZm9yIGEgY291cGxlCj4gb2YgcmVhc29ucy4gRmlyc3RseSwgd2Ugd2lzaCB0byBk b2N1bWVudCBvdXIgbG9ja2xlc3MgcmVhZCBvZiBvYmotPmFjdGl2ZQo+IHVzaW5nIFJFQURfT05D RSBpbnNpZGUgaTkxNV9nZW1fYnVzeV9pb2N0bCgpIGFuZCB0aGF0IHJlcXVpcmVzIGFuCj4gaW50 ZWdyYWwgdHlwZSAoaS5lLiBub3QgYSBiaXRmaWVsZCkuIFNlY29uZGx5LCBnY2MgcHJvZHVjZXMg YWJ5c21hbCBjb2RlCj4gd2hlbiBwcmVzZW50ZWQgd2l0aCBhIGJpdGZpZWxkIGFuZCB0aGF0IHNo b3dzIHVwIGhpZ2ggb24gdGhlIHByb2ZpbGVzIG9mCj4gcmVxdWVzdCB0cmFja2luZyAobWFpbmx5 IGR1ZSB0byBleGNlc3MgbWVtb3J5IHRyYWZmaWMgYXMgaXQgY29udmVydHMKPiB0aGUgYml0Zmll bGQgdG8gYSByZWdpc3RlciBhbmQgYmFjayBhbmQgZ2VuZXJhdGVzIGZyZXF1ZW50IEFHSSBpbiB0 aGUKPiBwcm9jZXNzKS4KCkFHSSA9IGFkZHJlc3MgZ2VuZXJhdG9yIGludGVybG9jaywgSSBndWVz cyBnY2MgZmlyc3QgZHluYW1pY2FsbHkgY29tcHV0ZXMKdGhlIGFkZHJlc3MsIHRoZW4gbG9hZHMg dGhlIHJpZ2h0IGJsb2NrcywgZnJvYnMgdGhlbSBhbmQgc3RvcmVzIHRoZQpibG9ja3M/IFBsZWFz ZSBlbGFib3JhdGUgKGluIHRoZSBjb21taXQgbWVzc2FnZSksIGJ1dCBpZiBpdCdzIGluZGVlZCB0 aGlzCnNpbGx5IHRoaXMgbWFrZXMgc2Vuc2UuCi1EYW5pZWwKPiAKPiBTaWduZWQtb2ZmLWJ5OiBD aHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiAtLS0KPiAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICAgIHwgMzEgKysrKysrKysrKysrKysrKysrKysr KysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICB8 IDE2ICsrKysrKystLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVj YnVmZmVyLmMgfCAxMCArKysrKy0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X3Nocmlua2VyLmMgICB8ICA1ICsrKy0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X3VzZXJwdHIuYyAgICB8ICAyICstCj4gIDYgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0aW9ucygr KSwgMTggZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKPiBp bmRleCAzNTViYmY4OTVjMjIuLjkxNTQ5MTlmZGQ1NiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZGVidWdmcy5jCj4gQEAgLTkxLDcgKzkxLDcgQEAgc3RhdGljIGludCBpOTE1X2NhcGFiaWxp dGllcyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEpCj4gIAo+ICBzdGF0aWMgY2hhciBn ZXRfYWN0aXZlX2ZsYWcoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKPiAgewo+IC0J cmV0dXJuIG9iai0+YWN0aXZlID8gJyonIDogJyAnOwo+ICsJcmV0dXJuIGk5MTVfZ2VtX29iamVj dF9pc19hY3RpdmUob2JqKSA/ICcqJyA6ICcgJzsKPiAgfQo+ICAKPiAgc3RhdGljIGNoYXIgZ2V0 X3Bpbl9mbGFnKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCj4gaW5kZXggMjM2YWRlNjFjYWRlLi5lNzJiN2YzNWE5OGUgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmgKPiBAQCAtMjEzNiwxMiArMjEzNiwxNiBAQCBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCB7Cj4gIAo+ICAJc3RydWN0IGxpc3RfaGVhZCBiYXRjaF9wb29sX2xpbms7 Cj4gIAo+ICsJdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgCS8qKgo+ICAJICogVGhpcyBpcyBzZXQg aWYgdGhlIG9iamVjdCBpcyBvbiB0aGUgYWN0aXZlIGxpc3RzIChoYXMgcGVuZGluZwo+ICAJICog cmVuZGVyaW5nIGFuZCBzbyBhIG5vbi16ZXJvIHNlcW5vKSwgYW5kIGlzIG5vdCBzZXQgaWYgaXQg aSBzIG9uCj4gIAkgKiBpbmFjdGl2ZSAocmVhZHkgdG8gYmUgdW5ib3VuZCkgbGlzdC4KPiAgCSAq Lwo+IC0JdW5zaWduZWQgaW50IGFjdGl2ZTpJOTE1X05VTV9FTkdJTkVTOwo+ICsjZGVmaW5lIEk5 MTVfQk9fQUNUSVZFX1NISUZUIDAKPiArI2RlZmluZSBJOTE1X0JPX0FDVElWRV9NQVNLICgoMSA8 PCBJOTE1X05VTV9FTkdJTkVTKSAtIDEpCj4gKyNkZWZpbmUgX19JOTE1X0JPX0FDVElWRShibykg XAo+ICsJKChSRUFEX09OQ0UoKGJvKS0+ZmxhZ3MpID4+IEk5MTVfQk9fQUNUSVZFX1NISUZUKSAm IEk5MTVfQk9fQUNUSVZFX01BU0spCj4gIAo+ICAJLyoqCj4gIAkgKiBUaGlzIGlzIHNldCBpZiB0 aGUgb2JqZWN0IGhhcyBiZWVuIHdyaXR0ZW4gdG8gc2luY2UgbGFzdCBib3VuZAo+IEBAIC0yMjg4 LDYgKzIyOTIsMzEgQEAgaTkxNV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZChzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqKQo+ICB9Cj4gIF9fZGVwcmVjYXRlZCBleHRlcm4gdm9pZCBkcm1f Z2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKik7 Cj4gIAo+ICtzdGF0aWMgaW5saW5lIHVuc2lnbmVkIGxvbmcKPiAraTkxNV9nZW1fb2JqZWN0X2lz X2FjdGl2ZShjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+ICt7Cj4gKwly ZXR1cm4gKG9iai0+ZmxhZ3MgPj4gSTkxNV9CT19BQ1RJVkVfU0hJRlQpICYgSTkxNV9CT19BQ1RJ VkVfTUFTSzsKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSB2b2lkCj4gK2k5MTVfZ2VtX29iamVj dF9zZXRfYWN0aXZlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIGludCBlbmdpbmUp Cj4gK3sKPiArCW9iai0+ZmxhZ3MgfD0gMSA8PCAoZW5naW5lICsgSTkxNV9CT19BQ1RJVkVfU0hJ RlQpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgaW5saW5lIHZvaWQKPiAraTkxNV9nZW1fb2JqZWN0X3Vu c2V0X2FjdGl2ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLCBpbnQgZW5naW5lKQo+ ICt7Cj4gKwlvYmotPmZsYWdzICY9IH4oMSA8PCAoZW5naW5lICsgSTkxNV9CT19BQ1RJVkVfU0hJ RlQpKTsKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSBib29sCj4gK2k5MTVfZ2VtX29iamVjdF9o YXNfYWN0aXZlX2VuZ2luZShjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAo+ ICsJCQkJICBpbnQgZW5naW5lKQo+ICt7Cj4gKwlyZXR1cm4gb2JqLT5mbGFncyAmICgxIDw8IChl bmdpbmUgKyBJOTE1X0JPX0FDVElWRV9TSElGVCkpOwo+ICt9Cj4gKwo+ICAvKgo+ICAgKiBPcHRp bWlzZWQgU0dMIGl0ZXJhdG9yIGZvciBHRU0gb2JqZWN0cwo+ICAgKi8KPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtLmMKPiBpbmRleCAwNTQyNWFlN2M4YTguLmE4Mjc5YTU5OGM0YiAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW0uYwo+IEBAIC0xMTI2LDcgKzExMjYsNyBAQCBpOTE1X2dlbV9vYmplY3Rf d2FpdF9yZW5kZXJpbmcoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKPiAgCj4gIAls b2NrZGVwX2Fzc2VydF9oZWxkKCZvYmotPmJhc2UuZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICAKPiAt CWFjdGl2ZV9tYXNrID0gb2JqLT5hY3RpdmU7Cj4gKwlhY3RpdmVfbWFzayA9IGk5MTVfZ2VtX29i amVjdF9pc19hY3RpdmUob2JqKTsKPiAgCWlmICghYWN0aXZlX21hc2spCj4gIAkJcmV0dXJuIDA7 Cj4gIAo+IEBAIC0xMTY1LDcgKzExNjUsNyBAQCBpOTE1X2dlbV9vYmplY3Rfd2FpdF9yZW5kZXJp bmdfX25vbmJsb2NraW5nKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCj4gIAlCVUdf T04oIW11dGV4X2lzX2xvY2tlZCgmZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKPiAgCUJVR19PTighZGV2 X3ByaXYtPm1tLmludGVycnVwdGlibGUpOwo+ICAKPiAtCWFjdGl2ZV9tYXNrID0gb2JqLT5hY3Rp dmU7Cj4gKwlhY3RpdmVfbWFzayA9IGk5MTVfZ2VtX29iamVjdF9pc19hY3RpdmUob2JqKTsKPiAg CWlmICghYWN0aXZlX21hc2spCj4gIAkJcmV0dXJuIDA7Cj4gIAo+IEBAIC0yMTA5LDEwICsyMTA5 LDEwIEBAIGk5MTVfZ2VtX29iamVjdF9yZXRpcmVfX3JlYWQoc3RydWN0IGk5MTVfZ2VtX2FjdGl2 ZSAqYWN0aXZlLAo+ICAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9Cj4gIAkJY29u dGFpbmVyX29mKGFjdGl2ZSwgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QsIGxhc3RfcmVhZFty aW5nXSk7Cj4gIAo+IC0JR0VNX0JVR19PTigob2JqLT5hY3RpdmUgJiAoMSA8PCByaW5nKSkgPT0g MCk7Cj4gKwlHRU1fQlVHX09OKCFpOTE1X2dlbV9vYmplY3RfaGFzX2FjdGl2ZV9lbmdpbmUob2Jq LCByaW5nKSk7Cj4gIAo+IC0Jb2JqLT5hY3RpdmUgJj0gfigxIDw8IHJpbmcpOwo+IC0JaWYgKG9i ai0+YWN0aXZlKQo+ICsJaTkxNV9nZW1fb2JqZWN0X3Vuc2V0X2FjdGl2ZShvYmosIHJpbmcpOwo+ ICsJaWYgKGk5MTVfZ2VtX29iamVjdF9pc19hY3RpdmUob2JqKSkKPiAgCQlyZXR1cm47Cj4gIAo+ ICAJLyogQnVtcCBvdXIgcGxhY2Ugb24gdGhlIGJvdW5kIGxpc3QgdG8ga2VlcCBpdCByb3VnaGx5 IGluIExSVSBvcmRlcgo+IEBAIC0yMzgzLDcgKzIzODMsNyBAQCBpOTE1X2dlbV93YWl0X2lvY3Rs KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmls ZSkKPiAgCQlyZXR1cm4gLUVOT0VOVDsKPiAgCX0KPiAgCj4gLQlpZiAoIW9iai0+YWN0aXZlKQo+ ICsJaWYgKCFpOTE1X2dlbV9vYmplY3RfaXNfYWN0aXZlKG9iaikpCj4gIAkJZ290byBvdXQ7Cj4g IAo+ICAJZm9yIChpID0gMDsgaSA8IEk5MTVfTlVNX0VOR0lORVM7IGkrKykgewo+IEBAIC0yNDcy LDcgKzI0NzIsNyBAQCBpOTE1X2dlbV9vYmplY3Rfc3luYyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdCAqb2JqLAo+ICAKPiAgCWxvY2tkZXBfYXNzZXJ0X2hlbGQoJm9iai0+YmFzZS5kZXYtPnN0 cnVjdF9tdXRleCk7Cj4gIAo+IC0JYWN0aXZlX21hc2sgPSBvYmotPmFjdGl2ZTsKPiArCWFjdGl2 ZV9tYXNrID0gaTkxNV9nZW1fb2JqZWN0X2lzX2FjdGl2ZShvYmopOwo+ICAJaWYgKCFhY3RpdmVf bWFzaykKPiAgCQlyZXR1cm4gMDsKPiAgCj4gQEAgLTM1MTYsNyArMzUxNiw3IEBAIGk5MTVfZ2Vt X2J1c3lfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgCSAqIGJl Y29tZSBub24tYnVzeSB3aXRob3V0IGFueSBmdXJ0aGVyIGFjdGlvbnMuCj4gIAkgKi8KPiAgCWFy Z3MtPmJ1c3kgPSAwOwo+IC0JaWYgKG9iai0+YWN0aXZlKSB7Cj4gKwlpZiAoaTkxNV9nZW1fb2Jq ZWN0X2lzX2FjdGl2ZShvYmopKSB7Cj4gIAkJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXE7Cj4gIAkJaW50IGk7Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9leGVjYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVj YnVmZmVyLmMKPiBpbmRleCA2OWJmNzNiNTFkZjkuLjIyNDI2NTYxOWYwMCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKPiBAQCAtNDMyLDcgKzQzMiw3 IEBAIHJlbG9jYXRlX2VudHJ5X2NsZmx1c2goc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i aiwKPiAgCj4gIHN0YXRpYyBib29sIG9iamVjdF9pc19pZGxlKHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmopCj4gIHsKPiAtCXVuc2lnbmVkIGxvbmcgYWN0aXZlID0gb2JqLT5hY3RpdmU7 Cj4gKwl1bnNpZ25lZCBsb25nIGFjdGl2ZSA9IGk5MTVfZ2VtX29iamVjdF9pc19hY3RpdmUob2Jq KTsKPiAgCWludCBpZHg7Cj4gIAo+ICAJZm9yX2VhY2hfYWN0aXZlKGFjdGl2ZSwgaWR4KSB7Cj4g QEAgLTk5MSw3ICs5OTEsNyBAQCBzdGF0aWMgaW50Cj4gIGk5MTVfZ2VtX2V4ZWNidWZmZXJfbW92 ZV90b19ncHUoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCj4gIAkJCQlzdHJ1Y3Qg bGlzdF9oZWFkICp2bWFzKQo+ICB7Cj4gLQljb25zdCB1bnNpZ25lZCBvdGhlcl9yaW5ncyA9IH5p bnRlbF9lbmdpbmVfZmxhZyhyZXEtPmVuZ2luZSk7Cj4gKwljb25zdCB1bnNpZ25lZCBvdGhlcl9y aW5ncyA9ICh+aW50ZWxfZW5naW5lX2ZsYWcocmVxLT5lbmdpbmUpICYgSTkxNV9CT19BQ1RJVkVf TUFTSykgPDwgSTkxNV9CT19BQ1RJVkVfU0hJRlQ7Cj4gIAlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsK PiAgCXVpbnQzMl90IGZsdXNoX2RvbWFpbnMgPSAwOwo+ICAJYm9vbCBmbHVzaF9jaGlwc2V0ID0g ZmFsc2U7Cj4gQEAgLTEwMDAsNyArMTAwMCw3IEBAIGk5MTVfZ2VtX2V4ZWNidWZmZXJfbW92ZV90 b19ncHUoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCj4gIAlsaXN0X2Zvcl9lYWNo X2VudHJ5KHZtYSwgdm1hcywgZXhlY19saXN0KSB7Cj4gIAkJc3RydWN0IGRybV9pOTE1X2dlbV9v YmplY3QgKm9iaiA9IHZtYS0+b2JqOwo+ICAKPiAtCQlpZiAob2JqLT5hY3RpdmUgJiBvdGhlcl9y aW5ncykgewo+ICsJCWlmIChvYmotPmZsYWdzICYgb3RoZXJfcmluZ3MpIHsKPiAgCQkJcmV0ID0g aTkxNV9nZW1fb2JqZWN0X3N5bmMob2JqLCByZXEpOwo+ICAJCQlpZiAocmV0KQo+ICAJCQkJcmV0 dXJuIHJldDsKPiBAQCAtMTE1OSw5ICsxMTU5LDkgQEAgdm9pZCBpOTE1X3ZtYV9tb3ZlX3RvX2Fj dGl2ZShzdHJ1Y3QgaTkxNV92bWEgKnZtYSwKPiAgCSAqIGFkZCB0aGUgYWN0aXZlIHJlZmVyZW5j ZSBmaXJzdCBhbmQgcXVldWUgZm9yIGl0IHRvIGJlIGRyb3BwZWQKPiAgCSAqICpsYXN0Ki4KPiAg CSAqLwo+IC0JaWYgKG9iai0+YWN0aXZlID09IDApCj4gKwlpZiAoIWk5MTVfZ2VtX29iamVjdF9p c19hY3RpdmUob2JqKSkKPiAgCQlpOTE1X2dlbV9vYmplY3RfZ2V0KG9iaik7Cj4gLQlvYmotPmFj dGl2ZSB8PSAxIDw8IGlkeDsKPiArCWk5MTVfZ2VtX29iamVjdF9zZXRfYWN0aXZlKG9iaiwgaWR4 KTsKPiAgCWk5MTVfZ2VtX2FjdGl2ZV9zZXQoJm9iai0+bGFzdF9yZWFkW2lkeF0sIHJlcSk7Cj4g IAo+ICAJaWYgKGZsYWdzICYgRVhFQ19PQkpFQ1RfV1JJVEUpIHsKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX3Nocmlua2VyLmMKPiBpbmRleCA3MWFkNTg4MzZmNDguLjVjYmM0ZWU1MmM2 ZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJpbmtlci5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYwo+IEBAIC0x NjgsNyArMTY4LDggQEAgaTkxNV9nZW1fc2hyaW5rKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiwKPiAgCQkJICAgICFpc192bWFsbG9jX2FkZHIob2JqLT5tYXBwaW5nKSkKPiAgCQkJ CWNvbnRpbnVlOwo+ICAKPiAtCQkJaWYgKChmbGFncyAmIEk5MTVfU0hSSU5LX0FDVElWRSkgPT0g MCAmJiBvYmotPmFjdGl2ZSkKPiArCQkJaWYgKChmbGFncyAmIEk5MTVfU0hSSU5LX0FDVElWRSkg PT0gMCAmJgo+ICsJCQkgICAgaTkxNV9nZW1fb2JqZWN0X2lzX2FjdGl2ZShvYmopKQo+ICAJCQkJ Y29udGludWU7Cj4gIAo+ICAJCQlpZiAoIWNhbl9yZWxlYXNlX3BhZ2VzKG9iaikpCj4gQEAgLTI1 Myw3ICsyNTQsNyBAQCBpOTE1X2dlbV9zaHJpbmtlcl9jb3VudChzdHJ1Y3Qgc2hyaW5rZXIgKnNo cmlua2VyLCBzdHJ1Y3Qgc2hyaW5rX2NvbnRyb2wgKnNjKQo+ICAJCQljb3VudCArPSBvYmotPmJh c2Uuc2l6ZSA+PiBQQUdFX1NISUZUOwo+ICAKPiAgCWxpc3RfZm9yX2VhY2hfZW50cnkob2JqLCAm ZGV2X3ByaXYtPm1tLmJvdW5kX2xpc3QsIGdsb2JhbF9saXN0KSB7Cj4gLQkJaWYgKCFvYmotPmFj dGl2ZSAmJiBjYW5fcmVsZWFzZV9wYWdlcyhvYmopKQo+ICsJCWlmICghaTkxNV9nZW1fb2JqZWN0 X2lzX2FjdGl2ZShvYmopICYmIGNhbl9yZWxlYXNlX3BhZ2VzKG9iaikpCj4gIAkJCWNvdW50ICs9 IG9iai0+YmFzZS5zaXplID4+IFBBR0VfU0hJRlQ7Cj4gIAl9Cj4gIAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV91c2VycHRyLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV91c2VycHRyLmMKPiBpbmRleCBlNTc1MjFkYmRkYzYuLjIyMTc5MjYzMjI5 MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV91c2VycHRyLmMK PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV91c2VycHRyLmMKPiBAQCAtNjcs NyArNjcsNyBAQCBzdGF0aWMgdm9pZCB3YWl0X3JlbmRlcmluZyhzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqKQo+ICAJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0c1tJ OTE1X05VTV9FTkdJTkVTXTsKPiAgCWludCBpLCBuOwo+ICAKPiAtCWlmICghb2JqLT5hY3RpdmUp Cj4gKwlpZiAoIWk5MTVfZ2VtX29iamVjdF9pc19hY3RpdmUob2JqKSkKPiAgCQlyZXR1cm47Cj4g IAo+ICAJbiA9IDA7Cj4gLS0gCj4gMi44LjEKPiAKPiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QKPiBJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVu Z2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK