From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 22/25] drm/i915: Embed signaling node into the GEM request Date: Mon, 27 Jun 2016 12:54:24 +0100 Message-ID: <577113F0.9060001@linux.intel.com> References: <1466849588-17558-1-git-send-email-chris@chris-wilson.co.uk> <1466849588-17558-23-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id F363C89CD4 for ; Mon, 27 Jun 2016 11:54:31 +0000 (UTC) In-Reply-To: <1466849588-17558-23-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 Ck9uIDI1LzA2LzE2IDExOjEzLCBDaHJpcyBXaWxzb24gd3JvdGU6Cj4gVW5kZXIgdGhlIGFzc3Vt cHRpb24gdGhhdCBlbmFibGluZyBzaWduYWxpbmcgd2lsbCBiZSBhIGZyZXF1ZW50Cj4gb3BlcmF0 aW9uLCBsZXRzIHByZWFsbG9jYXRlIG91ciBhdHRhY2htZW50cyBmb3Igc2lnbmFsaW5nIGluc2lk ZSB0aGUKPiAocmF0aGVyIGxhcmdlKSByZXF1ZXN0IHN0cnVjdCAoYW5kIHNvIGJlbmVmaXRpbmcg ZnJvbSB0aGUgc2xhYiBjYWNoZSkuCj4KPiB2MjogQ29udmVydCBmcm9tIHZvaWQgKiB0byBtb3Jl IG1lYW5pbmdmdWwgbmFtZXMgYW5kIHR5cGVzLgo+Cj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2ls c29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oICAgICAgICAgIHwgIDEgKwo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfYnJlYWRjcnVtYnMuYyB8IDc2ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0t Cj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggIHwgMTAgKysrKy0K PiAgIDMgZmlsZXMgY2hhbmdlZCwgNDYgaW5zZXJ0aW9ucygrKSwgNDEgZGVsZXRpb25zKC0pCj4K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRleCBiNzA4OWNlZGI4MGMuLjQ0MGY2MjY3ZWMy NyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC0yMzgxLDYgKzIzODEsNyBAQCBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qgewo+ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1Owo+ICAgCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKPiAgIAl1bnNpZ25l ZCByZXNldF9jb3VudGVyOwo+ICsJc3RydWN0IGludGVsX3NpZ25hbF9ub2RlIHNpZ25hbGluZzsK Pgo+ICAgCSAvKiogR0VNIHNlcXVlbmNlIG51bWJlciBhc3NvY2lhdGVkIHdpdGggdGhlIHByZXZp b3VzIHJlcXVlc3QsCj4gICAJICAqIHdoZW4gdGhlIEhXUyBicmVhZGNydW1iIGlzIGVxdWFsIHRv IHRoaXMgdGhlIEdQVSBpcyBwcm9jZXNzaW5nCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2JyZWFkY3J1bWJzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9i cmVhZGNydW1icy5jCj4gaW5kZXggYmMwZTllOGI3ODcxLi42NjFkNmI0MTVhYzMgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYnJlYWRjcnVtYnMuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2JyZWFkY3J1bWJzLmMKPiBAQCAtMzUxLDM1ICszNTEs MjkgQEAgb3V0X3VubG9jazoKPiAgIAlzcGluX3VubG9jaygmYi0+bG9jayk7Cj4gICB9Cj4KPiAt c3RydWN0IHNpZ25hbCB7Cj4gLQlzdHJ1Y3QgcmJfbm9kZSBub2RlOwo+IC0Jc3RydWN0IGludGVs X3dhaXQgd2FpdDsKPiAtCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdDsKPiAt fTsKPiAtCj4gLXN0YXRpYyBib29sIHNpZ25hbF9jb21wbGV0ZShzdHJ1Y3Qgc2lnbmFsICpzaWdu YWwpCj4gK3N0YXRpYyBib29sIHNpZ25hbF9jb21wbGV0ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3Jl cXVlc3QgKnJlcXVlc3QpCj4gICB7Cj4gLQlpZiAoc2lnbmFsID09IE5VTEwpCj4gKwlpZiAocmVx dWVzdCA9PSBOVUxMKQo+ICAgCQlyZXR1cm4gZmFsc2U7Cj4KPiAgIAkvKiBJZiBhbm90aGVyIHBy b2Nlc3Mgc2VydmVkIGFzIHRoZSBib3R0b20taGFsZiBpdCBtYXkgaGF2ZSBhbHJlYWR5Cj4gICAJ ICogc2lnbmFsbGVkIHRoYXQgdGhpcyB3YWl0IGlzIGFscmVhZHkgY29tcGxldGVkLgo+ICAgCSAq Lwo+IC0JaWYgKGludGVsX3dhaXRfY29tcGxldGUoJnNpZ25hbC0+d2FpdCkpCj4gKwlpZiAoaW50 ZWxfd2FpdF9jb21wbGV0ZSgmcmVxdWVzdC0+c2lnbmFsaW5nLndhaXQpKQo+ICAgCQlyZXR1cm4g dHJ1ZTsKPgo+ICAgCS8qIENhcmVmdWxseSBjaGVjayBpZiB0aGUgcmVxdWVzdCBpcyBjb21wbGV0 ZSwgZ2l2aW5nIHRpbWUgZm9yIHRoZQo+ICAgCSAqIHNlcW5vIHRvIGJlIHZpc2libGUgb3IgaWYg dGhlIEdQVSBodW5nLgo+ICAgCSAqLwo+IC0JaWYgKF9faTkxNV9yZXF1ZXN0X2lycV9jb21wbGV0 ZShzaWduYWwtPnJlcXVlc3QpKQo+ICsJaWYgKF9faTkxNV9yZXF1ZXN0X2lycV9jb21wbGV0ZShy ZXF1ZXN0KSkKPiAgIAkJcmV0dXJuIHRydWU7Cj4KPiAgIAlyZXR1cm4gZmFsc2U7Cj4gICB9Cj4K PiAtc3RhdGljIHN0cnVjdCBzaWduYWwgKnRvX3NpZ25hbChzdHJ1Y3QgcmJfbm9kZSAqcmIpCj4g K3N0YXRpYyBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnRvX3NpZ25hbGVyKHN0cnVjdCBy Yl9ub2RlICpyYikKPiAgIHsKPiAtCXJldHVybiBjb250YWluZXJfb2YocmIsIHN0cnVjdCBzaWdu YWwsIG5vZGUpOwo+ICsJcmV0dXJuIGNvbnRhaW5lcl9vZihyYiwgc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0LCBzaWduYWxpbmcubm9kZSk7Cj4gICB9Cj4KPiAgIHN0YXRpYyB2b2lkIHNpZ25h bGVyX3NldF9ydHByaW9yaXR5KHZvaWQpCj4gQEAgLTM5Miw3ICszODYsNyBAQCBzdGF0aWMgaW50 IGludGVsX2JyZWFkY3J1bWJzX3NpZ25hbGVyKHZvaWQgKmFyZykKPiAgIHsKPiAgIAlzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICplbmdpbmUgPSBhcmc7Cj4gICAJc3RydWN0IGludGVsX2JyZWFkY3J1 bWJzICpiID0gJmVuZ2luZS0+YnJlYWRjcnVtYnM7Cj4gLQlzdHJ1Y3Qgc2lnbmFsICpzaWduYWw7 Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3Q7Cj4KPiAgIAkvKiBJbnN0 YWxsIG91cnNlbHZlcyB3aXRoIGhpZ2ggcHJpb3JpdHkgdG8gcmVkdWNlIHNpZ25hbGxpbmcgbGF0 ZW5jeSAqLwo+ICAgCXNpZ25hbGVyX3NldF9ydHByaW9yaXR5KCk7Cj4gQEAgLTQwOCwxNCArNDAy LDEzIEBAIHN0YXRpYyBpbnQgaW50ZWxfYnJlYWRjcnVtYnNfc2lnbmFsZXIodm9pZCAqYXJnKQo+ ICAgCQkgKiBuZWVkIHRvIHdhaXQgZm9yIGEgbmV3IGludGVycnVwdCBmcm9tIHRoZSBHUFUgb3Ig Zm9yCj4gICAJCSAqIGEgbmV3IGNsaWVudC4KPiAgIAkJICovCj4gLQkJc2lnbmFsID0gUkVBRF9P TkNFKGItPmZpcnN0X3NpZ25hbCk7Cj4gLQkJaWYgKHNpZ25hbF9jb21wbGV0ZShzaWduYWwpKSB7 Cj4gKwkJcmVxdWVzdCA9IFJFQURfT05DRShiLT5maXJzdF9zaWduYWwpOwo+ICsJCWlmIChzaWdu YWxfY29tcGxldGUocmVxdWVzdCkpIHsKPiAgIAkJCS8qIFdha2UgdXAgYWxsIG90aGVyIGNvbXBs ZXRlZCB3YWl0ZXJzIGFuZCBzZWxlY3QgdGhlCj4gICAJCQkgKiBuZXh0IGJvdHRvbS1oYWxmIGZv ciB0aGUgbmV4dCB1c2VyIGludGVycnVwdC4KPiAgIAkJCSAqLwo+IC0JCQlpbnRlbF9lbmdpbmVf cmVtb3ZlX3dhaXQoZW5naW5lLCAmc2lnbmFsLT53YWl0KTsKPiAtCj4gLQkJCWk5MTVfZ2VtX3Jl cXVlc3RfdW5yZWZlcmVuY2Uoc2lnbmFsLT5yZXF1ZXN0KTsKPiArCQkJaW50ZWxfZW5naW5lX3Jl bW92ZV93YWl0KGVuZ2luZSwKPiArCQkJCQkJICZyZXF1ZXN0LT5zaWduYWxpbmcud2FpdCk7Cj4K PiAgIAkJCS8qIEZpbmQgdGhlIG5leHQgb2xkZXN0IHNpZ25hbC4gTm90ZSB0aGF0IGFzIHdlIGhh dmUKPiAgIAkJCSAqIG5vdCBiZWVuIGhvbGRpbmcgdGhlIGxvY2ssIGFub3RoZXIgY2xpZW50IG1h eQo+IEBAIC00MjQsMTIgKzQxNywxNSBAQCBzdGF0aWMgaW50IGludGVsX2JyZWFkY3J1bWJzX3Np Z25hbGVyKHZvaWQgKmFyZykKPiAgIAkJCSAqIHRoZSBvbGRlc3QgYmVmb3JlIHBpY2tpbmcgdGhl IG5leHQgb25lLgo+ICAgCQkJICovCj4gICAJCQlzcGluX2xvY2soJmItPmxvY2spOwo+IC0JCQlp ZiAoc2lnbmFsID09IGItPmZpcnN0X3NpZ25hbCkKPiAtCQkJCWItPmZpcnN0X3NpZ25hbCA9IHJi X25leHQoJnNpZ25hbC0+bm9kZSk7Cj4gLQkJCXJiX2VyYXNlKCZzaWduYWwtPm5vZGUsICZiLT5z aWduYWxzKTsKPiArCQkJaWYgKHJlcXVlc3QgPT0gYi0+Zmlyc3Rfc2lnbmFsKSB7Cj4gKwkJCQlz dHJ1Y3QgcmJfbm9kZSAqcmIgPQo+ICsJCQkJCXJiX25leHQoJnJlcXVlc3QtPnNpZ25hbGluZy5u b2RlKTsKPiArCQkJCWItPmZpcnN0X3NpZ25hbCA9IHJiID8gdG9fc2lnbmFsZXIocmIpIDogTlVM TDsKPiArCQkJfQo+ICsJCQlyYl9lcmFzZSgmcmVxdWVzdC0+c2lnbmFsaW5nLm5vZGUsICZiLT5z aWduYWxzKTsKPiAgIAkJCXNwaW5fdW5sb2NrKCZiLT5sb2NrKTsKPgo+IC0JCQlrZnJlZShzaWdu YWwpOwo+ICsJCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKHJlcXVlc3QpOwo+ICAgCQl9 IGVsc2Ugewo+ICAgCQkJaWYgKGt0aHJlYWRfc2hvdWxkX3N0b3AoKSkKPiAgIAkJCQlicmVhazsK PiBAQCAtNDQyLDIyICs0MzgsMjUgQEAgc3RhdGljIGludCBpbnRlbF9icmVhZGNydW1ic19zaWdu YWxlcih2b2lkICphcmcpCj4gICAJcmV0dXJuIDA7Cj4gICB9Cj4KPiAtaW50IGludGVsX2VuZ2lu ZV9lbmFibGVfc2lnbmFsaW5nKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkK PiArdm9pZCBpbnRlbF9lbmdpbmVfZW5hYmxlX3NpZ25hbGluZyhzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcXVlc3QpCj4gICB7Cj4gICAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lID0gcmVxdWVzdC0+ZW5naW5lOwo+ICAgCXN0cnVjdCBpbnRlbF9icmVhZGNydW1icyAqYiA9 ICZlbmdpbmUtPmJyZWFkY3J1bWJzOwo+ICAgCXN0cnVjdCByYl9ub2RlICpwYXJlbnQsICoqcDsK PiAtCXN0cnVjdCBzaWduYWwgKnNpZ25hbDsKPiAgIAlib29sIGZpcnN0LCB3YWtldXA7Cj4KPiAt CXNpZ25hbCA9IGttYWxsb2Moc2l6ZW9mKCpzaWduYWwpLCBHRlBfQVRPTUlDKTsKPiAtCWlmICh1 bmxpa2VseSghc2lnbmFsKSkKPiAtCQlyZXR1cm4gLUVOT01FTTsKPiArCWlmICh1bmxpa2VseShS RUFEX09OQ0UocmVxdWVzdC0+c2lnbmFsaW5nLndhaXQudHNrKSkpCj4gKwkJcmV0dXJuOwo+Cj4g LQlzaWduYWwtPndhaXQudHNrID0gYi0+c2lnbmFsZXI7Cj4gLQlzaWduYWwtPndhaXQuc2Vxbm8g PSByZXF1ZXN0LT5zZXFubzsKPiArCXNwaW5fbG9jaygmYi0+bG9jayk7Cj4gKwlpZiAodW5saWtl bHkocmVxdWVzdC0+c2lnbmFsaW5nLndhaXQudHNrKSkgewo+ICsJCXdha2V1cCA9IGZhbHNlOwo+ ICsJCWdvdG8gdW5sb2NrOwo+ICsJfQo+Cj4gLQlzaWduYWwtPnJlcXVlc3QgPSBpOTE1X2dlbV9y ZXF1ZXN0X3JlZmVyZW5jZShyZXF1ZXN0KTsKPiArCXJlcXVlc3QtPnNpZ25hbGluZy53YWl0LnRz ayA9IGItPnNpZ25hbGVyOwo+ICsJcmVxdWVzdC0+c2lnbmFsaW5nLndhaXQuc2Vxbm8gPSByZXF1 ZXN0LT5zZXFubzsKPiArCWk5MTVfZ2VtX3JlcXVlc3RfcmVmZXJlbmNlKHJlcXVlc3QpOwo+Cj4g ICAJLyogRmlyc3QgYWRkIG91cnNlbHZlcyBpbnRvIHRoZSBsaXN0IG9mIHdhaXRlcnMsIGJ1dCBy ZWdpc3RlciBvdXIKPiAgIAkgKiBib3R0b20taGFsZiBhcyB0aGUgc2lnbmFsbGVyIHRocmVhZC4g QXMgcGVyIHVzdWFsLCBvbmx5IHRoZSBvbGRlc3QKPiBAQCAtNDY3LDM1ICs0NjYsMzQgQEAgaW50 IGludGVsX2VuZ2luZV9lbmFibGVfc2lnbmFsaW5nKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCAqcmVxdWVzdCkKPiAgIAkgKiBJZiB3ZSBhcmUgdGhlIG9sZGVzdCB3YWl0ZXIsIGVuYWJsZSB0 aGUgaXJxIChhZnRlciB3aGljaCB3ZQo+ICAgCSAqIG11c3QgZG91YmxlIGNoZWNrIHRoYXQgdGhl IHNlcW5vIGRpZCBub3QgY29tcGxldGUpLgo+ICAgCSAqLwo+IC0Jd2FrZXVwID0gaW50ZWxfZW5n aW5lX2FkZF93YWl0KGVuZ2luZSwgJnNpZ25hbC0+d2FpdCk7Cj4gKwl3YWtldXAgPSBfX2ludGVs X2VuZ2luZV9hZGRfd2FpdChlbmdpbmUsICZyZXF1ZXN0LT5zaWduYWxpbmcud2FpdCk7Cj4KPiAg IAkvKiBOb3cgaW5zZXJ0IG91cnNlbHZlcyBpbnRvIHRoZSByZXRpcmVtZW50IG9yZGVyZWQgbGlz dCBvZiBzaWduYWxzCj4gICAJICogb24gdGhpcyBlbmdpbmUuIFdlIHRyYWNrIHRoZSBvbGRlc3Qg c2Vxbm8gYXMgdGhhdCB3aWxsIGJlIHRoZQo+ICAgCSAqIGZpcnN0IHNpZ25hbCB0byBjb21wbGV0 ZS4KPiAgIAkgKi8KPiAtCXNwaW5fbG9jaygmYi0+bG9jayk7Cj4gICAJcGFyZW50ID0gTlVMTDsK PiAgIAlmaXJzdCA9IHRydWU7Cj4gICAJcCA9ICZiLT5zaWduYWxzLnJiX25vZGU7Cj4gICAJd2hp bGUgKCpwKSB7Cj4gICAJCXBhcmVudCA9ICpwOwo+IC0JCWlmIChpOTE1X3NlcW5vX3Bhc3NlZChz aWduYWwtPndhaXQuc2Vxbm8sCj4gLQkJCQkgICAgICB0b19zaWduYWwocGFyZW50KS0+d2FpdC5z ZXFubykpIHsKPiArCQlpZiAoaTkxNV9zZXFub19wYXNzZWQocmVxdWVzdC0+c2Vxbm8sCj4gKwkJ CQkgICAgICB0b19zaWduYWxlcihwYXJlbnQpLT5zZXFubykpIHsKPiAgIAkJCXAgPSAmcGFyZW50 LT5yYl9yaWdodDsKPiAgIAkJCWZpcnN0ID0gZmFsc2U7Cj4gICAJCX0gZWxzZQo+ICAgCQkJcCA9 ICZwYXJlbnQtPnJiX2xlZnQ7Cj4gICAJfQo+IC0JcmJfbGlua19ub2RlKCZzaWduYWwtPm5vZGUs IHBhcmVudCwgcCk7Cj4gLQlyYl9pbnNlcnRfY29sb3IoJnNpZ25hbC0+bm9kZSwgJmItPnNpZ25h bHMpOwo+ICsJcmJfbGlua19ub2RlKCZyZXF1ZXN0LT5zaWduYWxpbmcubm9kZSwgcGFyZW50LCBw KTsKPiArCXJiX2luc2VydF9jb2xvcigmcmVxdWVzdC0+c2lnbmFsaW5nLm5vZGUsICZiLT5zaWdu YWxzKTsKPiAgIAlpZiAoZmlyc3QpCj4gLQkJc21wX3N0b3JlX21iKGItPmZpcnN0X3NpZ25hbCwg c2lnbmFsKTsKPiArCQlzbXBfc3RvcmVfbWIoYi0+Zmlyc3Rfc2lnbmFsLCByZXF1ZXN0KTsKPiAr Cj4gK3VubG9jazoKPiAgIAlzcGluX3VubG9jaygmYi0+bG9jayk7Cj4KPiAgIAlpZiAod2FrZXVw KQo+ICAgCQl3YWtlX3VwX3Byb2Nlc3MoYi0+c2lnbmFsZXIpOwo+IC0KPiAtCXJldHVybiAwOwo+ ICAgfQo+Cj4gICBpbnQgaW50ZWxfZW5naW5lX2luaXRfYnJlYWRjcnVtYnMoc3RydWN0IGludGVs X2VuZ2luZV9jcyAqZW5naW5lKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVy LmgKPiBpbmRleCBjMDViNDU3MjdmN2QuLmI1NWI5OTYxZDlmNiAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKPiBAQCAtMTg1LDcgKzE4NSw3IEBAIHN0cnVjdCBp bnRlbF9lbmdpbmVfY3Mgewo+ICAgCQlzdHJ1Y3QgaW50ZWxfd2FpdCAqZmlyc3Rfd2FpdDsgLyog b2xkZXN0IHdhaXRlciBieSByZXRpcmVtZW50ICovCj4gICAJCXN0cnVjdCB0YXNrX3N0cnVjdCAq dGFza2xldDsgLyogYmggZm9yIHVzZXIgaW50ZXJydXB0cyAqLwo+ICAgCQlzdHJ1Y3QgdGFza19z dHJ1Y3QgKnNpZ25hbGVyOyAvKiB1c2VkIGZvciBmZW5jZSBzaWduYWxsaW5nICovCj4gLQkJdm9p ZCAqZmlyc3Rfc2lnbmFsOwo+ICsJCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqZmlyc3Rf c2lnbmFsOwo+ICAgCQlzdHJ1Y3QgdGltZXJfbGlzdCBmYWtlX2lycTsgLyogdXNlZCBhZnRlciBh IG1pc3NlZCBpbnRlcnJ1cHQgKi8KPiAgIAkJYm9vbCBpcnFfZW5hYmxlZDsKPiAgIAkJYm9vbCBy cG1fd2FrZWxvY2s7Cj4gQEAgLTUzMCw2ICs1MzAsMTIgQEAgc3RydWN0IGludGVsX3dhaXQgewo+ ICAgCXN0cnVjdCB0YXNrX3N0cnVjdCAqdHNrOwo+ICAgCXUzMiBzZXFubzsKPiAgIH07Cj4gKwo+ ICtzdHJ1Y3QgaW50ZWxfc2lnbmFsX25vZGUgewo+ICsJc3RydWN0IHJiX25vZGUgbm9kZTsKPiAr CXN0cnVjdCBpbnRlbF93YWl0IHdhaXQ7Cj4gK307Cj4gKwo+ICAgaW50IGludGVsX2VuZ2luZV9p bml0X2JyZWFkY3J1bWJzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7Cj4gICBzdGF0 aWMgaW5saW5lIHZvaWQgaW50ZWxfd2FpdF9pbml0KHN0cnVjdCBpbnRlbF93YWl0ICp3YWl0LCB1 MzIgc2Vxbm8pCj4gICB7Cj4gQEAgLTU0NCw3ICs1NTAsNyBAQCBib29sIGludGVsX2VuZ2luZV9h ZGRfd2FpdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCj4gICAJCQkgICBzdHJ1Y3Qg aW50ZWxfd2FpdCAqd2FpdCk7Cj4gICB2b2lkIGludGVsX2VuZ2luZV9yZW1vdmVfd2FpdChzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCj4gICAJCQkgICAgICBzdHJ1Y3QgaW50ZWxfd2Fp dCAqd2FpdCk7Cj4gLWludCBpbnRlbF9lbmdpbmVfZW5hYmxlX3NpZ25hbGluZyhzdHJ1Y3QgZHJt X2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpOwo+ICt2b2lkIGludGVsX2VuZ2luZV9lbmFibGVf c2lnbmFsaW5nKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCk7Cj4gICBzdGF0 aWMgaW5saW5lIGJvb2wgaW50ZWxfZW5naW5lX2hhc193YWl0ZXIoc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lKQo+ICAgewo+ICAgCXJldHVybiBSRUFEX09OQ0UoZW5naW5lLT5icmVhZGNy dW1icy50YXNrbGV0KTsKPgoKTG9va3MgT0suCgpSZXZpZXdlZC1ieTogVHZydGtvIFVyc3VsaW4g PHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClJlZ2FyZHMsCgpUdnJ0a28KCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=