From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 05/13] drm/i915: Convert requests to use struct fence Date: Fri, 11 Dec 2015 13:11:53 +0000 Message-ID: <1449839521-21958-6-git-send-email-John.C.Harrison@Intel.com> References: <1449839521-21958-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 mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 4A6CA6EFA1 for ; Fri, 11 Dec 2015 05:12:26 -0800 (PST) In-Reply-To: <1449839521-21958-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 YXQgaXMKaW50ZW5kZWQgdG8ga2VlcCB0cmFjayBvZiB3b3JrIHRoYXQgaXMgZXhlY3V0ZWQgb24g aGFyZHdhcmUuIEkuZS4gaXQKc29sdmVzIHRoZSBiYXNpYyBwcm9ibGVtIHRoYXQgdGhlIGRyaXZl cnMgJ3N0cnVjdApkcm1faTkxNV9nZW1fcmVxdWVzdCcgaXMgdHJ5aW5nIHRvIGFkZHJlc3MuIFRo ZSByZXF1ZXN0IHN0cnVjdHVyZSBkb2VzCnF1aXRlIGEgbG90IG1vcmUgdGhhbiBzaW1wbHkgdHJh Y2sgdGhlIGV4ZWN1dGlvbiBwcm9ncmVzcyBzbyBpcyB2ZXJ5CmRlZmluaXRlbHkgc3RpbGwgcmVx dWlyZWQuIEhvd2V2ZXIsIHRoZSBiYXNpYyBjb21wbGV0aW9uIHN0YXR1cyBzaWRlCmNvdWxkIGJl IHVwZGF0ZWQgdG8gdXNlIHRoZSByZWFkeSBtYWRlIGZlbmNlIGltcGxlbWVudGF0aW9uIGFuZCBn YWluCmFsbCB0aGUgYWR2YW50YWdlcyB0aGF0IHByb3ZpZGVzLgoKVGhpcyBwYXRjaCBtYWtlcyB0 aGUgZmlyc3Qgc3RlcCBvZiBpbnRlZ3JhdGluZyBhIHN0cnVjdCBmZW5jZSBpbnRvIHRoZQpyZXF1 ZXN0LiBJdCByZXBsYWNlcyB0aGUgZXhwbGljaXQgcmVmZXJlbmNlIGNvdW50IHdpdGggdGhhdCBv ZiB0aGUKZmVuY2UuIEl0IGFsc28gcmVwbGFjZXMgdGhlICdpcyBjb21wbGV0ZWQnIHRlc3Qgd2l0 aCB0aGUgZmVuY2UncwplcXVpdmFsZW50LiBDdXJyZW50bHksIHRoYXQgc2ltcGx5IGNoYWlucyBv biB0byB0aGUgb3JpZ2luYWwgcmVxdWVzdAppbXBsZW1lbnRhdGlvbi4gQSBmdXR1cmUgcGF0Y2gg d2lsbCBpbXByb3ZlIHRoaXMuCgp2MzogVXBkYXRlZCBhZnRlciByZXZpZXcgY29tbWVudHMgYnkg VHZydGtvIFVyc3VsaW4uIEFkZGVkIGZlbmNlCmNvbnRleHQvc2Vxbm8gcGFpciB0byB0aGUgZGVi dWdmcyByZXF1ZXN0IGluZm8uIFJlbmFtZWQgZmVuY2UgJ2RyaXZlcgpuYW1lJyB0byBqdXN0ICdp OTE1Jy4gUmVtb3ZlZCBCVUdfT05zLgoKRm9yOiBWSVotNTE5MApTaWduZWQtb2ZmLWJ5OiBKb2hu IEhhcnJpc29uIDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgpDYzogVHZydGtvIFVyc3VsaW4g PHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2RlYnVnZnMuYyAgICAgfCAgNSArLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg ICAgICAgICB8IDQ1ICsrKysrKysrKysrKystLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbS5jICAgICAgICAgfCA1NiArKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8ICAxICsKIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyB8ICAxICsKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCB8ICAzICsrCiA2IGZpbGVzIGNoYW5nZWQsIDgx IGluc2VydGlvbnMoKyksIDMwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1 Z2ZzLmMKaW5kZXggNzQxNTYwNi4uNWIzMTE4NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kZWJ1Z2ZzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1 Z2ZzLmMKQEAgLTcwOSwxMSArNzA5LDEyIEBAIHN0YXRpYyBpbnQgaTkxNV9nZW1fcmVxdWVzdF9p bmZvKHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqZGF0YSkKIAkJCXRhc2sgPSBOVUxMOwogCQkJ aWYgKHJlcS0+cGlkKQogCQkJCXRhc2sgPSBwaWRfdGFzayhyZXEtPnBpZCwgUElEVFlQRV9QSUQp OwotCQkJc2VxX3ByaW50ZihtLCAiICAgICV4IEAgJWQ6ICVzIFslZF1cbiIsCisJCQlzZXFfcHJp bnRmKG0sICIgICAgJXggQCAlZDogJXMgWyVkXSwgZmVuY2UgPSAldS4ldVxuIiwKIAkJCQkgICBy ZXEtPnNlcW5vLAogCQkJCSAgIChpbnQpIChqaWZmaWVzIC0gcmVxLT5lbWl0dGVkX2ppZmZpZXMp LAogCQkJCSAgIHRhc2sgPyB0YXNrLT5jb21tIDogIjx1bmtub3duPiIsCi0JCQkJICAgdGFzayA/ IHRhc2stPnBpZCA6IC0xKTsKKwkJCQkgICB0YXNrID8gdGFzay0+cGlkIDogLTEsCisJCQkJICAg cmVxLT5mZW5jZS5jb250ZXh0LCByZXEtPmZlbmNlLnNlcW5vKTsKIAkJCXJjdV9yZWFkX3VubG9j aygpOwogCQl9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDQzNjE0OWUuLmFhNWNiYTcg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1ZGUgPGxp bnV4L2tyZWYuaD4KICNpbmNsdWRlIDxsaW51eC9wbV9xb3MuaD4KICNpbmNsdWRlICJpbnRlbF9n dWMuaCIKKyNpbmNsdWRlIDxsaW51eC9mZW5jZS5oPgogCiAvKiBHZW5lcmFsIGN1c3RvbWl6YXRp b246CiAgKi8KQEAgLTIxNzQsNyArMjE3NSwxNyBAQCB2b2lkIGk5MTVfZ2VtX3RyYWNrX2ZiKHN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvbGQsCiAgKiBpbml0aWFsIHJlZmVyZW5jZSB0YWtl biB1c2luZyBrcmVmX2luaXQKICAqLwogc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0IHsKLQlz dHJ1Y3Qga3JlZiByZWY7CisJLyoqCisJICogVW5kZXJseWluZyBvYmplY3QgZm9yIGltcGxlbWVu dGluZyB0aGUgc2lnbmFsL3dhaXQgc3R1ZmYuCisJICogTkI6IE5ldmVyIGNhbGwgZmVuY2VfbGF0 ZXIoKSBvciByZXR1cm4gdGhpcyBmZW5jZSBvYmplY3QgdG8gdXNlcgorCSAqIGxhbmQhIER1ZSB0 byBsYXp5IGFsbG9jYXRpb24sIHNjaGVkdWxlciByZS1vcmRlcmluZywgcHJlLWVtcHRpb24sCisJ ICogZXRjLiwgdGhlcmUgaXMgbm8gZ3VhcmFudGVlIGF0IGFsbCBhYm91dCB0aGUgdmFsaWRpdHkg b3IKKwkgKiBzZXF1ZW50aWFsaXR5IG9mIHRoZSBmZW5jZSdzIHNlcW5vISBJdCBpcyBhbHNvIHVu c2FmZSB0byBsZXQKKwkgKiBhbnl0aGluZyBvdXRzaWRlIG9mIHRoZSBpOTE1IGRyaXZlciBnZXQg aG9sZCBvZiB0aGUgZmVuY2Ugb2JqZWN0CisJICogYXMgdGhlIGNsZWFuIHVwIHdoZW4gZGVjcmVt ZW50aW5nIHRoZSByZWZlcmVuY2UgY291bnQgcmVxdWlyZXMKKwkgKiBob2xkaW5nIHRoZSBkcml2 ZXIgbXV0ZXggbG9jay4KKwkgKi8KKwlzdHJ1Y3QgZmVuY2UgZmVuY2U7CiAKIAkvKiogT24gV2hp Y2ggcmluZyB0aGlzIHJlcXVlc3Qgd2FzIGdlbmVyYXRlZCAqLwogCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICppOTE1OwpAQCAtMjI1MSw3ICsyMjYyLDEzIEBAIGludCBpOTE1X2dlbV9yZXF1ZXN0 X2FsbG9jKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJCQkgICBzdHJ1Y3QgaW50ZWxf Y29udGV4dCAqY3R4LAogCQkJICAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICoqcmVxX291 dCk7CiB2b2lkIGk5MTVfZ2VtX3JlcXVlc3RfY2FuY2VsKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVx dWVzdCAqcmVxKTsKLXZvaWQgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKHN0cnVjdCBrcmVmICpyZXFf cmVmKTsKKworc3RhdGljIGlubGluZSBib29sIGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkKHN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAorCQkJCQkgICAgICBib29sIGxhenlfY29o ZXJlbmN5KQoreworCXJldHVybiBmZW5jZV9pc19zaWduYWxlZCgmcmVxLT5mZW5jZSk7Cit9CisK IGludCBpOTE1X2dlbV9yZXF1ZXN0X2FkZF90b19jbGllbnQoc3RydWN0IGRybV9pOTE1X2dlbV9y ZXF1ZXN0ICpyZXEsCiAJCQkJICAgc3RydWN0IGRybV9maWxlICpmaWxlKTsKIApAQCAtMjI3MSw3 ICsyMjg4LDcgQEAgc3RhdGljIGlubGluZSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKgog aTkxNV9nZW1fcmVxdWVzdF9yZWZlcmVuY2Uoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXEpCiB7CiAJaWYgKHJlcSkKLQkJa3JlZl9nZXQoJnJlcS0+cmVmKTsKKwkJZmVuY2VfZ2V0KCZy ZXEtPmZlbmNlKTsKIAlyZXR1cm4gcmVxOwogfQogCkBAIC0yMjc5LDcgKzIyOTYsNyBAQCBzdGF0 aWMgaW5saW5lIHZvaWQKIGk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZlcmVuY2Uoc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiB7CiAJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZyZXEt PnJpbmctPmRldi0+c3RydWN0X211dGV4KSk7Ci0Ja3JlZl9wdXQoJnJlcS0+cmVmLCBpOTE1X2dl bV9yZXF1ZXN0X2ZyZWUpOworCWZlbmNlX3B1dCgmcmVxLT5mZW5jZSk7CiB9CiAKIHN0YXRpYyBp bmxpbmUgdm9pZApAQCAtMjI5MSw3ICsyMzA4LDcgQEAgaTkxNV9nZW1fcmVxdWVzdF91bnJlZmVy ZW5jZV9fdW5sb2NrZWQoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiAJCXJldHVy bjsKIAogCWRldiA9IHJlcS0+cmluZy0+ZGV2OwotCWlmIChrcmVmX3B1dF9tdXRleCgmcmVxLT5y ZWYsIGk5MTVfZ2VtX3JlcXVlc3RfZnJlZSwgJmRldi0+c3RydWN0X211dGV4KSkKKwlpZiAoa3Jl Zl9wdXRfbXV0ZXgoJnJlcS0+ZmVuY2UucmVmY291bnQsIGZlbmNlX3JlbGVhc2UsICZkZXYtPnN0 cnVjdF9tdXRleCkpCiAJCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogfQogCkBA IC0yMzA4LDEyICsyMzI1LDYgQEAgc3RhdGljIGlubGluZSB2b2lkIGk5MTVfZ2VtX3JlcXVlc3Rf YXNzaWduKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnBkc3QsCiB9CiAKIC8qCi0gKiBY WFg6IGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkIHNob3VsZCBiZSBoZXJlIGJ1dCBjdXJyZW50 bHkgbmVlZHMgdGhlCi0gKiBkZWZpbml0aW9uIG9mIGk5MTVfc2Vxbm9fcGFzc2VkKCkgd2hpY2gg aXMgYmVsb3cuIEl0IHdpbGwgYmUgbW92ZWQgaW4KLSAqIGEgbGF0ZXIgcGF0Y2ggd2hlbiB0aGUg Y2FsbCB0byBpOTE1X3NlcW5vX3Bhc3NlZCgpIGlzIG9ic29sZXRlZC4uLgotICovCi0KLS8qCiAg KiBBIGNvbW1hbmQgdGhhdCByZXF1aXJlcyBzcGVjaWFsIGhhbmRsaW5nIGJ5IHRoZSBjb21tYW5k IHBhcnNlci4KICAqLwogc3RydWN0IGRybV9pOTE1X2NtZF9kZXNjcmlwdG9yIHsKQEAgLTI5MTYs MTggKzI5MjcsNiBAQCBpOTE1X3NlcW5vX3Bhc3NlZCh1aW50MzJfdCBzZXExLCB1aW50MzJfdCBz ZXEyKQogCXJldHVybiAoaW50MzJfdCkoc2VxMSAtIHNlcTIpID49IDA7CiB9CiAKLXN0YXRpYyBp bmxpbmUgYm9vbCBpOTE1X2dlbV9yZXF1ZXN0X2NvbXBsZXRlZChzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcSwKLQkJCQkJICAgICAgYm9vbCBsYXp5X2NvaGVyZW5jeSkKLXsKLQl1MzIg c2Vxbm87Ci0KLQlCVUdfT04ocmVxID09IE5VTEwpOwotCi0Jc2Vxbm8gPSByZXEtPnJpbmctPmdl dF9zZXFubyhyZXEtPnJpbmcsIGxhenlfY29oZXJlbmN5KTsKLQotCXJldHVybiBpOTE1X3NlcW5v X3Bhc3NlZChzZXFubywgcmVxLT5zZXFubyk7Ci19Ci0KIGludCBfX211c3RfY2hlY2sgaTkxNV9n ZW1fZ2V0X3NlcW5vKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHUzMiAqc2Vxbm8pOwogaW50IF9f bXVzdF9jaGVjayBpOTE1X2dlbV9zZXRfc2Vxbm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMy IHNlcW5vKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggZTQwNTZhMy4uYTFiNGRiZCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0yNjE3LDEyICsyNjE3LDE0IEBAIHN0YXRpYyB2 b2lkIGk5MTVfc2V0X3Jlc2V0X3N0YXR1cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYsCiAJfQogfQogCi12b2lkIGk5MTVfZ2VtX3JlcXVlc3RfZnJlZShzdHJ1Y3Qga3JlZiAqcmVx X3JlZikKK3N0YXRpYyB2b2lkIGk5MTVfZ2VtX3JlcXVlc3RfZnJlZShzdHJ1Y3QgZmVuY2UgKnJl cV9mZW5jZSkKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSA9IGNvbnRhaW5l cl9vZihyZXFfcmVmLAotCQkJCQkJIHR5cGVvZigqcmVxKSwgcmVmKTsKKwlzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKnJlcSA9IGNvbnRhaW5lcl9vZihyZXFfZmVuY2UsCisJCQkJCQkgdHlw ZW9mKCpyZXEpLCBmZW5jZSk7CiAJc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCA9IHJlcS0+Y3R4 OwogCisJV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZyZXEtPnJpbmctPmRldi0+c3RydWN0X211 dGV4KSk7CisKIAlpZiAocmVxLT5maWxlX3ByaXYpCiAJCWk5MTVfZ2VtX3JlcXVlc3RfcmVtb3Zl X2Zyb21fY2xpZW50KHJlcSk7CiAKQEAgLTI2MzgsNiArMjY0MCw0NSBAQCB2b2lkIGk5MTVfZ2Vt X3JlcXVlc3RfZnJlZShzdHJ1Y3Qga3JlZiAqcmVxX3JlZikKIAlrbWVtX2NhY2hlX2ZyZWUocmVx LT5pOTE1LT5yZXF1ZXN0cywgcmVxKTsKIH0KIAorc3RhdGljIGJvb2wgaTkxNV9nZW1fcmVxdWVz dF9lbmFibGVfc2lnbmFsaW5nKHN0cnVjdCBmZW5jZSAqcmVxX2ZlbmNlKQoreworCS8qIEludGVy cnVwdCBkcml2ZW4gZmVuY2VzIGFyZSBub3QgaW1wbGVtZW50ZWQgeWV0LiovCisJV0FSTih0cnVl LCAiVGhpcyBzaG91bGQgbm90IGJlIGNhbGxlZCEiKTsKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3Rh dGljIGJvb2wgaTkxNV9nZW1fcmVxdWVzdF9pc19jb21wbGV0ZWQoc3RydWN0IGZlbmNlICpyZXFf ZmVuY2UpCit7CisJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEgPSBjb250YWluZXJf b2YocmVxX2ZlbmNlLAorCQkJCQkJIHR5cGVvZigqcmVxKSwgZmVuY2UpOworCXUzMiBzZXFubzsK KworCXNlcW5vID0gcmVxLT5yaW5nLT5nZXRfc2Vxbm8ocmVxLT5yaW5nLCBmYWxzZS8qbGF6eV9j b2hlcmVuY3kqLyk7CisKKwlyZXR1cm4gaTkxNV9zZXFub19wYXNzZWQoc2Vxbm8sIHJlcS0+c2Vx bm8pOworfQorCitzdGF0aWMgY29uc3QgY2hhciAqaTkxNV9nZW1fcmVxdWVzdF9nZXRfZHJpdmVy X25hbWUoc3RydWN0IGZlbmNlICpyZXFfZmVuY2UpCit7CisJcmV0dXJuICJpOTE1IjsKK30KKwor c3RhdGljIGNvbnN0IGNoYXIgKmk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3RpbWVsaW5lX25hbWUoc3Ry dWN0IGZlbmNlICpyZXFfZmVuY2UpCit7CisJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXEgPSBjb250YWluZXJfb2YocmVxX2ZlbmNlLAorCQkJCQkJIHR5cGVvZigqcmVxKSwgZmVuY2Up OworCXJldHVybiByZXEtPnJpbmctPm5hbWU7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZmVu Y2Vfb3BzIGk5MTVfZ2VtX3JlcXVlc3RfZm9wcyA9IHsKKwkuZW5hYmxlX3NpZ25hbGluZwk9IGk5 MTVfZ2VtX3JlcXVlc3RfZW5hYmxlX3NpZ25hbGluZywKKwkuc2lnbmFsZWQJCT0gaTkxNV9nZW1f cmVxdWVzdF9pc19jb21wbGV0ZWQsCisJLndhaXQJCQk9IGZlbmNlX2RlZmF1bHRfd2FpdCwKKwku cmVsZWFzZQkJPSBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUsCisJLmdldF9kcml2ZXJfbmFtZQk9IGk5 MTVfZ2VtX3JlcXVlc3RfZ2V0X2RyaXZlcl9uYW1lLAorCS5nZXRfdGltZWxpbmVfbmFtZQk9IGk5 MTVfZ2VtX3JlcXVlc3RfZ2V0X3RpbWVsaW5lX25hbWUsCit9OworCiBpbnQgaTkxNV9nZW1fcmVx dWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQkJICAgc3RydWN0IGlu dGVsX2NvbnRleHQgKmN0eCwKIAkJCSAgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnJl cV9vdXQpCkBAIC0yNjU5LDcgKzI3MDAsNiBAQCBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCWlmIChyZXQpCiAJCWdvdG8gZXJyOwogCi0J a3JlZl9pbml0KCZyZXEtPnJlZik7CiAJcmVxLT5pOTE1ID0gZGV2X3ByaXY7CiAJcmVxLT5yaW5n ID0gcmluZzsKIAlyZXEtPmN0eCAgPSBjdHg7CkBAIC0yNjc0LDYgKzI3MTQsOCBAQCBpbnQgaTkx NV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQlnb3Rv IGVycjsKIAl9CiAKKwlmZW5jZV9pbml0KCZyZXEtPmZlbmNlLCAmaTkxNV9nZW1fcmVxdWVzdF9m b3BzLCAmcmluZy0+ZmVuY2VfbG9jaywgcmluZy0+ZmVuY2VfY29udGV4dCwgcmVxLT5zZXFubyk7 CisKIAkvKgogCSAqIFJlc2VydmUgc3BhY2UgaW4gdGhlIHJpbmcgYnVmZmVyIGZvciBhbGwgdGhl IGNvbW1hbmRzIHJlcXVpcmVkIHRvCiAJICogZXZlbnR1YWxseSBlbWl0IHRoaXMgcmVxdWVzdC4g VGhpcyBpcyB0byBndWFyYW50ZWUgdGhhdCB0aGUKQEAgLTQ3MjMsNyArNDc2NSw3IEBAIGk5MTVf Z2VtX2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgKnJpbmc7Ci0JaW50IHJldCwgaSwgajsKKwlpbnQgcmV0LCBpLCBqLCBmZW5jZV9iYXNl OwogCiAJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgNiAmJiAhaW50ZWxfZW5hYmxlX2d0dCgp KQogCQlyZXR1cm4gLUVJTzsKQEAgLTQ3OTMsMTIgKzQ4MzUsMTYgQEAgaTkxNV9nZW1faW5pdF9o dyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWlmIChyZXQpCiAJCWdvdG8gb3V0OwogCisJZmVu Y2VfYmFzZSA9IGZlbmNlX2NvbnRleHRfYWxsb2MoSTkxNV9OVU1fUklOR1MpOworCiAJLyogTm93 IGl0IGlzIHNhZmUgdG8gZ28gYmFjayByb3VuZCBhbmQgZG8gZXZlcnl0aGluZyBlbHNlOiAqLwog CWZvcl9lYWNoX3JpbmcocmluZywgZGV2X3ByaXYsIGkpIHsKIAkJc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXE7CiAKIAkJV0FSTl9PTighcmluZy0+ZGVmYXVsdF9jb250ZXh0KTsKIAor CQlyaW5nLT5mZW5jZV9jb250ZXh0ID0gZmVuY2VfYmFzZSArIGk7CisKIAkJcmV0ID0gaTkxNV9n ZW1fcmVxdWVzdF9hbGxvYyhyaW5nLCByaW5nLT5kZWZhdWx0X2NvbnRleHQsICZyZXEpOwogCQlp ZiAocmV0KSB7CiAJCQlpOTE1X2dlbV9jbGVhbnVwX3JpbmdidWZmZXIoZGV2KTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfbHJjLmMKaW5kZXggMDYxODBkYy4uYjhjOGY5YiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHJjLmMKQEAgLTE5MjAsNiArMTkyMCw3IEBAIHN0YXRpYyBpbnQgbG9naWNhbF9yaW5nX2lu aXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluCiAJ cmluZy0+ZGV2ID0gZGV2OwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5hY3RpdmVfbGlzdCk7CiAJ SU5JVF9MSVNUX0hFQUQoJnJpbmctPnJlcXVlc3RfbGlzdCk7CisJc3Bpbl9sb2NrX2luaXQoJnJp bmctPmZlbmNlX2xvY2spOwogCWk5MTVfZ2VtX2JhdGNoX3Bvb2xfaW5pdChkZXYsICZyaW5nLT5i YXRjaF9wb29sKTsKIAlpbml0X3dhaXRxdWV1ZV9oZWFkKCZyaW5nLT5pcnFfcXVldWUpOwogCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKaW5kZXggYzliMDgxZi4uZjRhNjQw MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwpAQCAtMjE1OCw2ICsy MTU4LDcgQEAgc3RhdGljIGludCBpbnRlbF9pbml0X3JpbmdfYnVmZmVyKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPnJlcXVlc3RfbGlzdCk7CiAJSU5JVF9M SVNUX0hFQUQoJnJpbmctPmV4ZWNsaXN0X3F1ZXVlKTsKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+ YnVmZmVycyk7CisJc3Bpbl9sb2NrX2luaXQoJnJpbmctPmZlbmNlX2xvY2spOwogCWk5MTVfZ2Vt X2JhdGNoX3Bvb2xfaW5pdChkZXYsICZyaW5nLT5iYXRjaF9wb29sKTsKIAltZW1zZXQocmluZy0+ c2VtYXBob3JlLnN5bmNfc2Vxbm8sIDAsIHNpemVvZihyaW5nLT5zZW1hcGhvcmUuc3luY19zZXFu bykpOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVy LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKaW5kZXggNThiMTk3 Ni4uNDU0NzY0NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1 ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaApAQCAt MzQ4LDYgKzM0OCw5IEBAIHN0cnVjdCAgaW50ZWxfZW5naW5lX2NzIHsKIAkgKiB0byBlbmNvZGUg dGhlIGNvbW1hbmQgbGVuZ3RoIGluIHRoZSBoZWFkZXIpLgogCSAqLwogCXUzMiAoKmdldF9jbWRf bGVuZ3RoX21hc2spKHUzMiBjbWRfaGVhZGVyKTsKKworCXVuc2lnbmVkIGZlbmNlX2NvbnRleHQ7 CisJc3BpbmxvY2tfdCBmZW5jZV9sb2NrOwogfTsKIAogYm9vbCBpbnRlbF9yaW5nX2luaXRpYWxp emVkKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOwotLSAKMS45LjEKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==