From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [RFC 1/4] drm/i915: Convert requests to use struct fence Date: Fri, 20 Mar 2015 17:48:34 +0000 Message-ID: <1426873717-10176-2-git-send-email-John.C.Harrison@Intel.com> References: <1426873717-10176-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 9A2F76E31C for ; Fri, 20 Mar 2015 10:48:40 -0700 (PDT) In-Reply-To: <1426873717-10176-1-git-send-email-John.C.Harrison@Intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-GFX@Lists.FreeDesktop.Org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZXJlIGlz IGEgY29uc3RydWN0IGluIHRoZSBsaW51eCBrZXJuZWwgY2FsbGVkICdzdHJ1Y3QgZmVuY2UnIHRo YXQgaXMgaW50ZW5kZWQKdG8ga2VlcCB0cmFjayBvZiB3b3JrIHRoYXQgaXMgZXhlY3V0ZWQgb24g aGFyZHdhcmUuIEkuZS4gaXQgc29sdmVzIHRoZSBiYXNpYwpwcm9ibGVtIHRoYXQgdGhlIGRyaXZl cnMgJ3N0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCcgaXMgdHJ5aW5nIHRvIGFkZHJlc3MuIFRo ZQpyZXF1ZXN0IHN0cnVjdHVyZSBkb2VzIHF1aXRlIGEgbG90IG1vcmUgdGhhbiBzaW1wbHkgdHJh Y2sgdGhlIGV4ZWN1dGlvbiBwcm9ncmVzcwpzbyBpcyB2ZXJ5IGRlZmluaXRlbHkgc3RpbGwgcmVx dWlyZWQuIEhvd2V2ZXIsIHRoZSBiYXNpYyBjb21wbGV0aW9uIHN0YXR1cyBzaWRlCmNvdWxkIGJl IHVwZGF0ZWQgdG8gdXNlIHRoZSByZWFkeSBtYWRlIGZlbmNlIGltcGxlbWVudGF0aW9uIGFuZCBn YWluIGFsbCB0aGUKYWR2YW50YWdlcyB0aGF0IHByb3ZpZGVzLgoKVGhpcyBwYXRjaCBtYWtlcyB0 aGUgZmlyc3Qgc3RlcCBvZiBpbnRlZ3JhdGluZyBhIHN0cnVjdCBmZW5jZSBpbnRvIHRoZSByZXF1 ZXN0LgpJdCByZXBsYWNlcyB0aGUgZXhwbGljaXQgcmVmZXJlbmNlIGNvdW50IHdpdGggdGhhdCBv ZiB0aGUgZmVuY2UuIEl0IGFsc28KcmVwbGFjZXMgdGhlICdpcyBjb21wbGV0ZWQnIHRlc3Qgd2l0 aCB0aGUgZmVuY2UncyBlcXVpdmFsZW50LiBDdXJyZW50bHksIHRoYXQKc2ltcGx5IGNoYWlucyBv biB0byB0aGUgb3JpZ2luYWwgcmVxdWVzdCBpbXBsZW1lbnRhdGlvbi4gQSBmdXR1cmUgcGF0Y2gg d2lsbAppbXByb3ZlIHRoaXMuCgpGb3I6IFZJWi01MTkwClNpZ25lZC1vZmYtYnk6IEpvaG4gSGFy cmlzb24gPEpvaG4uQy5IYXJyaXNvbkBJbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCAgICAgICAgIHwgICAzNyArKysrKysrKystLS0tLS0tLS0tLS0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICB8ICAgNTUgKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAg IHwgICAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgfCAgICAx ICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCB8ICAgIDMgKysKIDUg ZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgMjcgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKaW5kZXggY2UzYTUzNi4uN2RjYWY4YyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5oCkBAIC01MCw2ICs1MCw3IEBACiAjaW5jbHVkZSA8bGludXgvaW50ZWwtaW9tbXUuaD4K ICNpbmNsdWRlIDxsaW51eC9rcmVmLmg+CiAjaW5jbHVkZSA8bGludXgvcG1fcW9zLmg+CisjaW5j bHVkZSA8bGludXgvZmVuY2UuaD4KIAogLyogR2VuZXJhbCBjdXN0b21pemF0aW9uOgogICovCkBA IC0yMDQ4LDcgKzIwNDksMTEgQEAgdm9pZCBpOTE1X2dlbV90cmFja19mYihzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2xkLAogICogaW5pdGlhbCByZWZlcmVuY2UgdGFrZW4gdXNpbmcga3Jl Zl9pbml0CiAgKi8KIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCB7Ci0Jc3RydWN0IGtyZWYg cmVmOworCS8qKiBVbmRlcmx5aW5nIG9iamVjdCBmb3IgaW1wbGVtZW50aW5nIHRoZSBzaWduYWwv d2FpdCBzdHVmZi4KKwkgICogTkI6IE5ldmVyIGNhbGwgZmVuY2VfbGF0ZXIoKSEgRHVlIHRvIGxh enkgYWxsb2NhdGlvbiwgc2NoZWR1bGVyCisJICAqIHJlLW9yZGVyaW5nLCBwcmUtZW1wdGlvbiwg ZXRjLiwgdGhlcmUgaXMgbm8gZ3VhcmFudGVlIGF0IGFsbAorCSAgKiBhYm91dCB0aGUgdmFsaWRp dHkgb3Igc2VxdWVudGlhbGlhdHkgb2YgdGhlIGZlbmNlJ3Mgc2Vxbm8hICovCisJc3RydWN0IGZl bmNlIGZlbmNlOwogCiAJLyoqIE9uIFdoaWNoIHJpbmcgdGhpcyByZXF1ZXN0IHdhcyBnZW5lcmF0 ZWQgKi8KIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOwpAQCAtMjEyNiw3ICsyMTMxLDEz IEBAIGludCBpOTE1X2dlbV9yZXF1ZXN0X2FsbG9jKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJp bmcsCiAJCQkgICBzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAogCQkJICAgc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICoqcmVxX291dCk7CiB2b2lkIGk5MTVfZ2VtX3JlcXVlc3RfY2FuY2Vs KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKTsKLXZvaWQgaTkxNV9nZW1fcmVxdWVz dF9mcmVlKHN0cnVjdCBrcmVmICpyZXFfcmVmKTsKKworc3RhdGljIGlubGluZSBib29sIGk5MTVf Z2VtX3JlcXVlc3RfY29tcGxldGVkKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAor CQkJCQkgICAgICBib29sIGxhenlfY29oZXJlbmN5KQoreworCXJldHVybiBmZW5jZV9pc19zaWdu YWxlZCgmcmVxLT5mZW5jZSk7Cit9CisKIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9yZW1vdmVfZnJv bV9jbGllbnQoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0KTsKIGludCBpOTE1 X2dlbV9yZXF1ZXN0X2FkZF90b19jbGllbnQoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXEsCiAJCQkJICAgc3RydWN0IGRybV9maWxlICpmaWxlKTsKQEAgLTIxNDYsMTQgKzIxNTcsMTQg QEAgaTkxNV9nZW1fcmVxdWVzdF9nZXRfcmluZyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg KnJlcSkKIHN0YXRpYyBpbmxpbmUgdm9pZAogaTkxNV9nZW1fcmVxdWVzdF9yZWZlcmVuY2Uoc3Ry dWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiB7Ci0Ja3JlZl9nZXQoJnJlcS0+cmVmKTsK KwlmZW5jZV9nZXQoJnJlcS0+ZmVuY2UpOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQKIGk5MTVf Z2VtX3JlcXVlc3RfdW5yZWZlcmVuY2Uoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEp CiB7CiAJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZyZXEtPnJpbmctPmRldi0+c3RydWN0X211 dGV4KSk7Ci0Ja3JlZl9wdXQoJnJlcS0+cmVmLCBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUpOworCWZl bmNlX3B1dCgmcmVxLT5mZW5jZSk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X2dlbV9y ZXF1ZXN0X2Fzc2lnbihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKipwZHN0LApAQCAtMjE2 OCwxMiArMjE3OSw2IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2Fzc2ln bihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKipwZHN0LAogCSpwZHN0ID0gc3JjOwogfQog Ci0vKgotICogWFhYOiBpOTE1X2dlbV9yZXF1ZXN0X2NvbXBsZXRlZCBzaG91bGQgYmUgaGVyZSBi dXQgY3VycmVudGx5IG5lZWRzIHRoZQotICogZGVmaW5pdGlvbiBvZiBpOTE1X3NlcW5vX3Bhc3Nl ZCgpIHdoaWNoIGlzIGJlbG93LiBJdCB3aWxsIGJlIG1vdmVkIGluCi0gKiBhIGxhdGVyIHBhdGNo IHdoZW4gdGhlIGNhbGwgdG8gaTkxNV9zZXFub19wYXNzZWQoKSBpcyBvYnNvbGV0ZWQuLi4KLSAq LwotCiBzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRlIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXY7CiAJc3RydWN0IGRybV9maWxlICpmaWxlOwpAQCAtMjY5MSwxOCArMjY5 Niw2IEBAIGk5MTVfc2Vxbm9fcGFzc2VkKHVpbnQzMl90IHNlcTEsIHVpbnQzMl90IHNlcTIpCiAJ cmV0dXJuIChpbnQzMl90KShzZXExIC0gc2VxMikgPj0gMDsKIH0KIAotc3RhdGljIGlubGluZSBi b29sIGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCAqcmVxLAotCQkJCQkgICAgICBib29sIGxhenlfY29oZXJlbmN5KQotewotCXUzMiBzZXFubzsK LQotCUJVR19PTihyZXEgPT0gTlVMTCk7Ci0KLQlzZXFubyA9IHJlcS0+cmluZy0+Z2V0X3NlcW5v KHJlcS0+cmluZywgbGF6eV9jb2hlcmVuY3kpOwotCi0JcmV0dXJuIGk5MTVfc2Vxbm9fcGFzc2Vk KHNlcW5vLCByZXEtPnNlcW5vKTsKLX0KLQogaW50IF9fbXVzdF9jaGVjayBpOTE1X2dlbV9nZXRf c2Vxbm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyICpzZXFubyk7CiBpbnQgX19tdXN0X2No ZWNrIGk5MTVfZ2VtX3NldF9zZXFubyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1MzIgc2Vxbm8p OwogaW50IF9fbXVzdF9jaGVjayBpOTE1X2dlbV9vYmplY3RfZ2V0X2ZlbmNlKHN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmopOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggNGViN2Zj Mi4uNWVkZTI5NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0yNDk1LDEwICsyNDk1LDEw IEBAIHN0YXRpYyB2b2lkIGk5MTVfZ2VtX2ZyZWVfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcXVlc3QpCiAJaTkxNV9nZW1fcmVxdWVzdF91bnJlZmVyZW5jZShyZXF1ZXN0 KTsKIH0KIAotdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUoc3RydWN0IGtyZWYgKnJlcV9yZWYp CitzdGF0aWMgdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUoc3RydWN0IGZlbmNlICpyZXFfZmVu Y2UpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEgPSBjb250YWluZXJfb2Yo cmVxX3JlZiwKLQkJCQkJCSB0eXBlb2YoKnJlcSksIHJlZik7CisJc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEgPSBjb250YWluZXJfb2YocmVxX2ZlbmNlLAorCQkJCQkJIHR5cGVvZigq cmVxKSwgZmVuY2UpOwogCXN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHggPSByZXEtPmN0eDsKIAog CWlmIChyZXEtPmZpbGVfcHJpdikKQEAgLTI1MTgsNiArMjUxOCw0NiBAQCB2b2lkIGk5MTVfZ2Vt X3JlcXVlc3RfZnJlZShzdHJ1Y3Qga3JlZiAqcmVxX3JlZikKIAlrZnJlZShyZXEpOwogfQogCitz dGF0aWMgY29uc3QgY2hhciAqaTkxNV9nZW1fcmVxdWVzdF9nZXRfZHJpdmVyX25hbWUoc3RydWN0 IGZlbmNlICpyZXFfZmVuY2UpCit7CisJcmV0dXJuICJpOTE1X3JlcXVlc3QiOworfQorCitzdGF0 aWMgY29uc3QgY2hhciAqaTkxNV9nZW1fcmVxdWVzdF9nZXRfdGltZWxpbmVfbmFtZShzdHJ1Y3Qg ZmVuY2UgKnJlcV9mZW5jZSkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSA9 IGNvbnRhaW5lcl9vZihyZXFfZmVuY2UsCisJCQkJCQkgdHlwZW9mKCpyZXEpLCBmZW5jZSk7CisJ cmV0dXJuIHJlcS0+cmluZy0+bmFtZTsKK30KKworc3RhdGljIGJvb2wgaTkxNV9nZW1fcmVxdWVz dF9lbmFibGVfc2lnbmFsaW5nKHN0cnVjdCBmZW5jZSAqcmVxX2ZlbmNlKQoreworCVdBUk4odHJ1 ZSwgIklzIHRoaXMgcmVxdWlyZWQ/Iik7CisJcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBib29s IGk5MTVfZ2VtX3JlcXVlc3RfaXNfY29tcGxldGVkKHN0cnVjdCBmZW5jZSAqcmVxX2ZlbmNlKQor eworCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxID0gY29udGFpbmVyX29mKHJlcV9m ZW5jZSwKKwkJCQkJCSB0eXBlb2YoKnJlcSksIGZlbmNlKTsKKwl1MzIgc2Vxbm87CisKKwlCVUdf T04ocmVxID09IE5VTEwpOworCisJc2Vxbm8gPSByZXEtPnJpbmctPmdldF9zZXFubyhyZXEtPnJp bmcsIGZhbHNlLypsYXp5X2NvaGVyZW5jeSovKTsKKworCXJldHVybiBpOTE1X3NlcW5vX3Bhc3Nl ZChzZXFubywgcmVxLT5zZXFubyk7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZmVuY2Vfb3Bz IGk5MTVfZ2VtX3JlcXVlc3RfZm9wcyA9IHsKKwkuZ2V0X2RyaXZlcl9uYW1lCT0gaTkxNV9nZW1f cmVxdWVzdF9nZXRfZHJpdmVyX25hbWUsCisJLmdldF90aW1lbGluZV9uYW1lCT0gaTkxNV9nZW1f cmVxdWVzdF9nZXRfdGltZWxpbmVfbmFtZSwKKwkuZW5hYmxlX3NpZ25hbGluZwk9IGk5MTVfZ2Vt X3JlcXVlc3RfZW5hYmxlX3NpZ25hbGluZywKKwkuc2lnbmFsZWQJCT0gaTkxNV9nZW1fcmVxdWVz dF9pc19jb21wbGV0ZWQsCisJLndhaXQJCQk9IGZlbmNlX2RlZmF1bHRfd2FpdCwKKwkucmVsZWFz ZQkJPSBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUsCit9OworCiBpbnQgaTkxNV9nZW1fcmVxdWVzdF9h bGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQkJICAgc3RydWN0IGludGVsX2Nv bnRleHQgKmN0eCwKIAkJCSAgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnJlcV9vdXQp CkBAIC0yNTQxLDcgKzI1ODEsNiBAQCBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQlyZXR1cm4gcmV0OwogCX0KIAotCWtyZWZfaW5pdCgm cmVxdWVzdC0+cmVmKTsKIAlyZXF1ZXN0LT5yaW5nID0gcmluZzsKIAlyZXF1ZXN0LT51bmlxID0g ZGV2X3ByaXZhdGUtPnJlcXVlc3RfdW5pcSsrOwogCXJlcXVlc3QtPmN0eCAgPSBjdHg7CkBAIC0y NTU3LDYgKzI1OTYsOCBAQCBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICpyaW5nLAogCQlyZXR1cm4gcmV0OwogCX0KIAorCWZlbmNlX2luaXQoJnJlcXVl c3QtPmZlbmNlLCAmaTkxNV9nZW1fcmVxdWVzdF9mb3BzLCAmcmluZy0+ZmVuY2VfbG9jaywgcmlu Zy0+ZmVuY2VfY29udGV4dCwgcmVxdWVzdC0+c2Vxbm8pOworCiAJLyoKIAkgKiBSZXNlcnZlIHNw YWNlIGluIHRoZSByaW5nIGJ1ZmZlciBmb3IgYWxsIHRoZSBjb21tYW5kcyByZXF1aXJlZCB0bwog CSAqIGV2ZW50dWFsbHkgZW1pdCB0aGlzIHJlcXVlc3QuIFRoaXMgaXMgdG8gZ3VhcmFudGVlIHRo YXQgdGhlCkBAIC00ODI1LDcgKzQ4NjYsNyBAQCBpOTE1X2dlbV9pbml0X2h3KHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2 LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOwotCWludCByZXQs IGk7CisJaW50IHJldCwgaSwgZmVuY2VfYmFzZTsKIAogCWlmIChJTlRFTF9JTkZPKGRldiktPmdl biA8IDYgJiYgIWludGVsX2VuYWJsZV9ndHQoKSkKIAkJcmV0dXJuIC1FSU87CkBAIC00ODc3LDEy ICs0OTE4LDE2IEBAIGk5MTVfZ2VtX2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJ CWdvdG8gb3V0OwogCX0KIAorCWZlbmNlX2Jhc2UgPSBmZW5jZV9jb250ZXh0X2FsbG9jKEk5MTVf TlVNX1JJTkdTKTsKKwogCS8qIE5vdyBpdCBpcyBzYWZlIHRvIGdvIGJhY2sgcm91bmQgYW5kIGRv IGV2ZXJ5dGhpbmcgZWxzZTogKi8KIAlmb3JfZWFjaF9yaW5nKHJpbmcsIGRldl9wcml2LCBpKSB7 CiAJCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxOwogCiAJCVdBUk5fT04oIXJpbmct PmRlZmF1bHRfY29udGV4dCk7CiAKKwkJcmluZy0+ZmVuY2VfY29udGV4dCA9IGZlbmNlX2Jhc2Ug KyBpOworCiAJCXJldCA9IGk5MTVfZ2VtX3JlcXVlc3RfYWxsb2MocmluZywgcmluZy0+ZGVmYXVs dF9jb250ZXh0LCAmcmVxKTsKIAkJaWYgKHJldCkgewogCQkJaTkxNV9nZW1fY2xlYW51cF9yaW5n YnVmZmVyKGRldik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IGFlMDAwNTQuLmMxMDcy YjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCkBAIC0xMzM3LDYgKzEzMzcsNyBAQCBzdGF0 aWMgaW50IGxvZ2ljYWxfcmluZ19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbgogCXJpbmctPmRldiA9IGRldjsKIAlJTklUX0xJU1RfSEVBRCgm cmluZy0+YWN0aXZlX2xpc3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5yZXF1ZXN0X2xpc3Qp OworCXNwaW5fbG9ja19pbml0KCZyaW5nLT5mZW5jZV9sb2NrKTsKIAlpbml0X3dhaXRxdWV1ZV9o ZWFkKCZyaW5nLT5pcnFfcXVldWUpOwogCiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmV4ZWNsaXN0 X3F1ZXVlKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwppbmRleCA2MDk5 ZmNlLi5mZDY1YzBkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5n YnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCkBA IC0xOTgxLDYgKzE5ODEsNyBAQCBzdGF0aWMgaW50IGludGVsX2luaXRfcmluZ19idWZmZXIoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+YWN0aXZlX2xpc3Qp OwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5yZXF1ZXN0X2xpc3QpOwogCUlOSVRfTElTVF9IRUFE KCZyaW5nLT5leGVjbGlzdF9xdWV1ZSk7CisJc3Bpbl9sb2NrX2luaXQoJnJpbmctPmZlbmNlX2xv Y2spOwogCXJpbmdidWYtPnNpemUgPSAzMiAqIFBBR0VfU0laRTsKIAlyaW5nYnVmLT5yaW5nID0g cmluZzsKIAltZW1zZXQocmluZy0+c2VtYXBob3JlLnN5bmNfc2Vxbm8sIDAsIHNpemVvZihyaW5n LT5zZW1hcGhvcmUuc3luY19zZXFubykpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1 ZmZlci5oCmluZGV4IDY4MDk3YzEuLmEwY2UwOGUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9yaW5nYnVmZmVyLmgKQEAgLTMwOCw2ICszMDgsOSBAQCBzdHJ1Y3QgIGludGVsX2VuZ2luZV9j cyB7CiAJICogdG8gZW5jb2RlIHRoZSBjb21tYW5kIGxlbmd0aCBpbiB0aGUgaGVhZGVyKS4KIAkg Ki8KIAl1MzIgKCpnZXRfY21kX2xlbmd0aF9tYXNrKSh1MzIgY21kX2hlYWRlcik7CisKKwl1bnNp Z25lZCBmZW5jZV9jb250ZXh0OworCXNwaW5sb2NrX3QgZmVuY2VfbG9jazsKIH07CiAKIGJvb2wg aW50ZWxfcmluZ19pbml0aWFsaXplZChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKTsKLS0g CjEuNy45LjUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==