From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 1/7] drm/i915: Convert requests to use struct fence Date: Fri, 8 Jan 2016 18:47:22 +0000 Message-ID: <1452278848-33708-2-git-send-email-John.C.Harrison@Intel.com> References: <1449839521-21958-1-git-send-email-John.C.Harrison@Intel.com> <1452278848-33708-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 mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 9B6356E03F for ; Fri, 8 Jan 2016 10:47:31 -0800 (PST) In-Reply-To: <1452278848-33708-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 OTE1Jy4gUmVtb3ZlZCBCVUdfT05zLgoKdjU6IENoYW5nZWQgc2Vxbm8gZm9ybWF0IGluIGRlYnVn ZnMgdG8gJXggcmF0aGVyIHRoYW4gJXUgYXMgdGhhdCBpcwphcHBhcmVudGx5IHRoZSBwcmVmZXJy ZWQgYXBwZWFyYW5jZS4gTGluZSB3cmFwcGVkIHNvbWUgbG9uZyBsaW5lcyB0bwprZWVwIHRoZSBz dHlsZSBjaGVja2VyIGhhcHB5LgoKRm9yOiBWSVotNTE5MApTaWduZWQtb2ZmLWJ5OiBKb2huIEhh cnJpc29uIDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgpDYzogVHZydGtvIFVyc3VsaW4gPHR2 cnRrby51cnN1bGluQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IEplc3NlIEJhcm5lcyA8amJhcm5l c0B2aXJ0dW91c2dlZWsub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdm cy5jICAgICB8ICA1ICstLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAg IHwgNDUgKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtLmMgICAgICAgICB8IDU3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgIHwgIDEgKwogZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5oIHwgIDMgKysKIDYgZmlsZXMgY2hhbmdlZCwgODIgaW5zZXJ0 aW9ucygrKSwgMzAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpp bmRleCA3NDE1NjA2Li5hZjQxZTVjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpA QCAtNzA5LDExICs3MDksMTIgQEAgc3RhdGljIGludCBpOTE1X2dlbV9yZXF1ZXN0X2luZm8oc3Ry dWN0IHNlcV9maWxlICptLCB2b2lkICpkYXRhKQogCQkJdGFzayA9IE5VTEw7CiAJCQlpZiAocmVx LT5waWQpCiAJCQkJdGFzayA9IHBpZF90YXNrKHJlcS0+cGlkLCBQSURUWVBFX1BJRCk7Ci0JCQlz ZXFfcHJpbnRmKG0sICIgICAgJXggQCAlZDogJXMgWyVkXVxuIiwKKwkJCXNlcV9wcmludGYobSwg IiAgICAleCBAICVkOiAlcyBbJWRdLCBmZW5jZSA9ICV4OiV4XG4iLAogCQkJCSAgIHJlcS0+c2Vx bm8sCiAJCQkJICAgKGludCkgKGppZmZpZXMgLSByZXEtPmVtaXR0ZWRfamlmZmllcyksCiAJCQkJ ICAgdGFzayA/IHRhc2stPmNvbW0gOiAiPHVua25vd24+IiwKLQkJCQkgICB0YXNrID8gdGFzay0+ cGlkIDogLTEpOworCQkJCSAgIHRhc2sgPyB0YXNrLT5waWQgOiAtMSwKKwkJCQkgICByZXEtPmZl bmNlLmNvbnRleHQsIHJlcS0+ZmVuY2Uuc2Vxbm8pOwogCQkJcmN1X3JlYWRfdW5sb2NrKCk7CiAJ CX0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggNDM2MTQ5ZS4uYWE1Y2JhNyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCkBAIC01MSw2ICs1MSw3IEBACiAjaW5jbHVkZSA8bGludXgva3Jl Zi5oPgogI2luY2x1ZGUgPGxpbnV4L3BtX3Fvcy5oPgogI2luY2x1ZGUgImludGVsX2d1Yy5oIgor I2luY2x1ZGUgPGxpbnV4L2ZlbmNlLmg+CiAKIC8qIEdlbmVyYWwgY3VzdG9taXphdGlvbjoKICAq LwpAQCAtMjE3NCw3ICsyMTc1LDE3IEBAIHZvaWQgaTkxNV9nZW1fdHJhY2tfZmIoc3RydWN0IGRy bV9pOTE1X2dlbV9vYmplY3QgKm9sZCwKICAqIGluaXRpYWwgcmVmZXJlbmNlIHRha2VuIHVzaW5n IGtyZWZfaW5pdAogICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgewotCXN0cnVjdCBr cmVmIHJlZjsKKwkvKioKKwkgKiBVbmRlcmx5aW5nIG9iamVjdCBmb3IgaW1wbGVtZW50aW5nIHRo ZSBzaWduYWwvd2FpdCBzdHVmZi4KKwkgKiBOQjogTmV2ZXIgY2FsbCBmZW5jZV9sYXRlcigpIG9y IHJldHVybiB0aGlzIGZlbmNlIG9iamVjdCB0byB1c2VyCisJICogbGFuZCEgRHVlIHRvIGxhenkg YWxsb2NhdGlvbiwgc2NoZWR1bGVyIHJlLW9yZGVyaW5nLCBwcmUtZW1wdGlvbiwKKwkgKiBldGMu LCB0aGVyZSBpcyBubyBndWFyYW50ZWUgYXQgYWxsIGFib3V0IHRoZSB2YWxpZGl0eSBvcgorCSAq IHNlcXVlbnRpYWxpdHkgb2YgdGhlIGZlbmNlJ3Mgc2Vxbm8hIEl0IGlzIGFsc28gdW5zYWZlIHRv IGxldAorCSAqIGFueXRoaW5nIG91dHNpZGUgb2YgdGhlIGk5MTUgZHJpdmVyIGdldCBob2xkIG9m IHRoZSBmZW5jZSBvYmplY3QKKwkgKiBhcyB0aGUgY2xlYW4gdXAgd2hlbiBkZWNyZW1lbnRpbmcg dGhlIHJlZmVyZW5jZSBjb3VudCByZXF1aXJlcworCSAqIGhvbGRpbmcgdGhlIGRyaXZlciBtdXRl eCBsb2NrLgorCSAqLworCXN0cnVjdCBmZW5jZSBmZW5jZTsKIAogCS8qKiBPbiBXaGljaCByaW5n IHRoaXMgcmVxdWVzdCB3YXMgZ2VuZXJhdGVkICovCiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg Kmk5MTU7CkBAIC0yMjUxLDcgKzIyNjIsMTMgQEAgaW50IGk5MTVfZ2VtX3JlcXVlc3RfYWxsb2Mo c3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKIAkJCSAgIHN0cnVjdCBpbnRlbF9jb250ZXh0 ICpjdHgsCiAJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKipyZXFfb3V0KTsKIHZv aWQgaTkxNV9nZW1fcmVxdWVzdF9jYW5jZWwoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXEpOwotdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUoc3RydWN0IGtyZWYgKnJlcV9yZWYpOwor CitzdGF0aWMgaW5saW5lIGJvb2wgaTkxNV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQoc3RydWN0IGRy bV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCisJCQkJCSAgICAgIGJvb2wgbGF6eV9jb2hlcmVuY3kp Cit7CisJcmV0dXJuIGZlbmNlX2lzX3NpZ25hbGVkKCZyZXEtPmZlbmNlKTsKK30KKwogaW50IGk5 MTVfZ2VtX3JlcXVlc3RfYWRkX3RvX2NsaWVudChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg KnJlcSwKIAkJCQkgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpOwogCkBAIC0yMjcxLDcgKzIyODgs NyBAQCBzdGF0aWMgaW5saW5lIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqCiBpOTE1X2dl bV9yZXF1ZXN0X3JlZmVyZW5jZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIHsK IAlpZiAocmVxKQotCQlrcmVmX2dldCgmcmVxLT5yZWYpOworCQlmZW5jZV9nZXQoJnJlcS0+ZmVu Y2UpOwogCXJldHVybiByZXE7CiB9CiAKQEAgLTIyNzksNyArMjI5Niw3IEBAIHN0YXRpYyBpbmxp bmUgdm9pZAogaTkxNV9nZW1fcmVxdWVzdF91bnJlZmVyZW5jZShzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcSkKIHsKIAlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJnJlcS0+cmluZy0+ ZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKLQlrcmVmX3B1dCgmcmVxLT5yZWYsIGk5MTVfZ2VtX3JlcXVl c3RfZnJlZSk7CisJZmVuY2VfcHV0KCZyZXEtPmZlbmNlKTsKIH0KIAogc3RhdGljIGlubGluZSB2 b2lkCkBAIC0yMjkxLDcgKzIzMDgsNyBAQCBpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlX191 bmxvY2tlZChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIAkJcmV0dXJuOwogCiAJ ZGV2ID0gcmVxLT5yaW5nLT5kZXY7Ci0JaWYgKGtyZWZfcHV0X211dGV4KCZyZXEtPnJlZiwgaTkx NV9nZW1fcmVxdWVzdF9mcmVlLCAmZGV2LT5zdHJ1Y3RfbXV0ZXgpKQorCWlmIChrcmVmX3B1dF9t dXRleCgmcmVxLT5mZW5jZS5yZWZjb3VudCwgZmVuY2VfcmVsZWFzZSwgJmRldi0+c3RydWN0X211 dGV4KSkKIAkJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CiB9CiAKQEAgLTIzMDgs MTIgKzIzMjUsNiBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24o c3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICoqcGRzdCwKIH0KIAogLyoKLSAqIFhYWDogaTkx NV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQgc2hvdWxkIGJlIGhlcmUgYnV0IGN1cnJlbnRseSBuZWVk cyB0aGUKLSAqIGRlZmluaXRpb24gb2YgaTkxNV9zZXFub19wYXNzZWQoKSB3aGljaCBpcyBiZWxv dy4gSXQgd2lsbCBiZSBtb3ZlZCBpbgotICogYSBsYXRlciBwYXRjaCB3aGVuIHRoZSBjYWxsIHRv IGk5MTVfc2Vxbm9fcGFzc2VkKCkgaXMgb2Jzb2xldGVkLi4uCi0gKi8KLQotLyoKICAqIEEgY29t bWFuZCB0aGF0IHJlcXVpcmVzIHNwZWNpYWwgaGFuZGxpbmcgYnkgdGhlIGNvbW1hbmQgcGFyc2Vy LgogICovCiBzdHJ1Y3QgZHJtX2k5MTVfY21kX2Rlc2NyaXB0b3IgewpAQCAtMjkxNiwxOCArMjky Nyw2IEBAIGk5MTVfc2Vxbm9fcGFzc2VkKHVpbnQzMl90IHNlcTEsIHVpbnQzMl90IHNlcTIpCiAJ cmV0dXJuIChpbnQzMl90KShzZXExIC0gc2VxMikgPj0gMDsKIH0KIAotc3RhdGljIGlubGluZSBi b29sIGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCAqcmVxLAotCQkJCQkgICAgICBib29sIGxhenlfY29oZXJlbmN5KQotewotCXUzMiBzZXFubzsK LQotCUJVR19PTihyZXEgPT0gTlVMTCk7Ci0KLQlzZXFubyA9IHJlcS0+cmluZy0+Z2V0X3NlcW5v KHJlcS0+cmluZywgbGF6eV9jb2hlcmVuY3kpOwotCi0JcmV0dXJuIGk5MTVfc2Vxbm9fcGFzc2Vk KHNlcW5vLCByZXEtPnNlcW5vKTsKLX0KLQogaW50IF9fbXVzdF9jaGVjayBpOTE1X2dlbV9nZXRf c2Vxbm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyICpzZXFubyk7CiBpbnQgX19tdXN0X2No ZWNrIGk5MTVfZ2VtX3NldF9zZXFubyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1MzIgc2Vxbm8p OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCBlNDA1NmEzLi4xMTM4OTkwIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTI2MTcsMTIgKzI2MTcsMTQgQEAgc3RhdGljIHZvaWQgaTkx NV9zZXRfcmVzZXRfc3RhdHVzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAl9 CiB9CiAKLXZvaWQgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKHN0cnVjdCBrcmVmICpyZXFfcmVmKQor c3RhdGljIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKHN0cnVjdCBmZW5jZSAqcmVxX2ZlbmNl KQogewotCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxID0gY29udGFpbmVyX29mKHJl cV9yZWYsCi0JCQkJCQkgdHlwZW9mKCpyZXEpLCByZWYpOworCXN0cnVjdCBkcm1faTkxNV9nZW1f cmVxdWVzdCAqcmVxID0gY29udGFpbmVyX29mKHJlcV9mZW5jZSwKKwkJCQkJCSB0eXBlb2YoKnJl cSksIGZlbmNlKTsKIAlzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4ID0gcmVxLT5jdHg7CiAKKwlX QVJOX09OKCFtdXRleF9pc19sb2NrZWQoJnJlcS0+cmluZy0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsK KwogCWlmIChyZXEtPmZpbGVfcHJpdikKIAkJaTkxNV9nZW1fcmVxdWVzdF9yZW1vdmVfZnJvbV9j bGllbnQocmVxKTsKIApAQCAtMjYzOCw2ICsyNjQwLDQ1IEBAIHZvaWQgaTkxNV9nZW1fcmVxdWVz dF9mcmVlKHN0cnVjdCBrcmVmICpyZXFfcmVmKQogCWttZW1fY2FjaGVfZnJlZShyZXEtPmk5MTUt PnJlcXVlc3RzLCByZXEpOwogfQogCitzdGF0aWMgYm9vbCBpOTE1X2dlbV9yZXF1ZXN0X2VuYWJs ZV9zaWduYWxpbmcoc3RydWN0IGZlbmNlICpyZXFfZmVuY2UpCit7CisJLyogSW50ZXJydXB0IGRy aXZlbiBmZW5jZXMgYXJlIG5vdCBpbXBsZW1lbnRlZCB5ZXQuKi8KKwlXQVJOKHRydWUsICJUaGlz IHNob3VsZCBub3QgYmUgY2FsbGVkISIpOworCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgYm9v bCBpOTE1X2dlbV9yZXF1ZXN0X2lzX2NvbXBsZXRlZChzdHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSkK K3sKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSA9IGNvbnRhaW5lcl9vZihyZXFf ZmVuY2UsCisJCQkJCQkgdHlwZW9mKCpyZXEpLCBmZW5jZSk7CisJdTMyIHNlcW5vOworCisJc2Vx bm8gPSByZXEtPnJpbmctPmdldF9zZXFubyhyZXEtPnJpbmcsIGZhbHNlLypsYXp5X2NvaGVyZW5j eSovKTsKKworCXJldHVybiBpOTE1X3NlcW5vX3Bhc3NlZChzZXFubywgcmVxLT5zZXFubyk7Cit9 CisKK3N0YXRpYyBjb25zdCBjaGFyICppOTE1X2dlbV9yZXF1ZXN0X2dldF9kcml2ZXJfbmFtZShz dHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSkKK3sKKwlyZXR1cm4gImk5MTUiOworfQorCitzdGF0aWMg Y29uc3QgY2hhciAqaTkxNV9nZW1fcmVxdWVzdF9nZXRfdGltZWxpbmVfbmFtZShzdHJ1Y3QgZmVu Y2UgKnJlcV9mZW5jZSkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSA9IGNv bnRhaW5lcl9vZihyZXFfZmVuY2UsCisJCQkJCQkgdHlwZW9mKCpyZXEpLCBmZW5jZSk7CisJcmV0 dXJuIHJlcS0+cmluZy0+bmFtZTsKK30KKworc3RhdGljIGNvbnN0IHN0cnVjdCBmZW5jZV9vcHMg aTkxNV9nZW1fcmVxdWVzdF9mb3BzID0geworCS5lbmFibGVfc2lnbmFsaW5nCT0gaTkxNV9nZW1f cmVxdWVzdF9lbmFibGVfc2lnbmFsaW5nLAorCS5zaWduYWxlZAkJPSBpOTE1X2dlbV9yZXF1ZXN0 X2lzX2NvbXBsZXRlZCwKKwkud2FpdAkJCT0gZmVuY2VfZGVmYXVsdF93YWl0LAorCS5yZWxlYXNl CQk9IGk5MTVfZ2VtX3JlcXVlc3RfZnJlZSwKKwkuZ2V0X2RyaXZlcl9uYW1lCT0gaTkxNV9nZW1f cmVxdWVzdF9nZXRfZHJpdmVyX25hbWUsCisJLmdldF90aW1lbGluZV9uYW1lCT0gaTkxNV9nZW1f cmVxdWVzdF9nZXRfdGltZWxpbmVfbmFtZSwKK307CisKIGludCBpOTE1X2dlbV9yZXF1ZXN0X2Fs bG9jKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJCQkgICBzdHJ1Y3QgaW50ZWxfY29u dGV4dCAqY3R4LAogCQkJICAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICoqcmVxX291dCkK QEAgLTI2NTksNyArMjcwMCw2IEBAIGludCBpOTE1X2dlbV9yZXF1ZXN0X2FsbG9jKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJaWYgKHJldCkKIAkJZ290byBlcnI7CiAKLQlrcmVmX2lu aXQoJnJlcS0+cmVmKTsKIAlyZXEtPmk5MTUgPSBkZXZfcHJpdjsKIAlyZXEtPnJpbmcgPSByaW5n OwogCXJlcS0+Y3R4ICA9IGN0eDsKQEAgLTI2NzQsNiArMjcxNCw5IEBAIGludCBpOTE1X2dlbV9y ZXF1ZXN0X2FsbG9jKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJCWdvdG8gZXJyOwog CX0KIAorCWZlbmNlX2luaXQoJnJlcS0+ZmVuY2UsICZpOTE1X2dlbV9yZXF1ZXN0X2ZvcHMsICZy aW5nLT5mZW5jZV9sb2NrLAorCQkgICByaW5nLT5mZW5jZV9jb250ZXh0LCByZXEtPnNlcW5vKTsK KwogCS8qCiAJICogUmVzZXJ2ZSBzcGFjZSBpbiB0aGUgcmluZyBidWZmZXIgZm9yIGFsbCB0aGUg Y29tbWFuZHMgcmVxdWlyZWQgdG8KIAkgKiBldmVudHVhbGx5IGVtaXQgdGhpcyByZXF1ZXN0LiBU aGlzIGlzIHRvIGd1YXJhbnRlZSB0aGF0IHRoZQpAQCAtNDcyMyw3ICs0NzY2LDcgQEAgaTkxNV9n ZW1faW5pdF9odyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewogCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqcmluZzsKLQlpbnQgcmV0LCBpLCBqOworCWludCByZXQsIGksIGosIGZlbmNlX2Jhc2U7 CiAKIAlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPCA2ICYmICFpbnRlbF9lbmFibGVfZ3R0KCkp CiAJCXJldHVybiAtRUlPOwpAQCAtNDc5MywxMiArNDgzNiwxNiBAQCBpOTE1X2dlbV9pbml0X2h3 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJaWYgKHJldCkKIAkJZ290byBvdXQ7CiAKKwlmZW5j ZV9iYXNlID0gZmVuY2VfY29udGV4dF9hbGxvYyhJOTE1X05VTV9SSU5HUyk7CisKIAkvKiBOb3cg aXQgaXMgc2FmZSB0byBnbyBiYWNrIHJvdW5kIGFuZCBkbyBldmVyeXRoaW5nIGVsc2U6ICovCiAJ Zm9yX2VhY2hfcmluZyhyaW5nLCBkZXZfcHJpdiwgaSkgewogCQlzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnJlcTsKIAogCQlXQVJOX09OKCFyaW5nLT5kZWZhdWx0X2NvbnRleHQpOwogCisJ CXJpbmctPmZlbmNlX2NvbnRleHQgPSBmZW5jZV9iYXNlICsgaTsKKwogCQlyZXQgPSBpOTE1X2dl bV9yZXF1ZXN0X2FsbG9jKHJpbmcsIHJpbmctPmRlZmF1bHRfY29udGV4dCwgJnJlcSk7CiAJCWlm IChyZXQpIHsKIAkJCWk5MTVfZ2VtX2NsZWFudXBfcmluZ2J1ZmZlcihkZXYpOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYwppbmRleCAwNjE4MGRjLi5iOGM4ZjliIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9scmMuYwpAQCAtMTkyMCw2ICsxOTIwLDcgQEAgc3RhdGljIGludCBsb2dpY2FsX3JpbmdfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW4KIAly aW5nLT5kZXYgPSBkZXY7CiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmFjdGl2ZV9saXN0KTsKIAlJ TklUX0xJU1RfSEVBRCgmcmluZy0+cmVxdWVzdF9saXN0KTsKKwlzcGluX2xvY2tfaW5pdCgmcmlu Zy0+ZmVuY2VfbG9jayk7CiAJaTkxNV9nZW1fYmF0Y2hfcG9vbF9pbml0KGRldiwgJnJpbmctPmJh dGNoX3Bvb2wpOwogCWluaXRfd2FpdHF1ZXVlX2hlYWQoJnJpbmctPmlycV9xdWV1ZSk7CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYwppbmRleCBjOWIwODFmLi5mNGE2NDAz IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCkBAIC0yMTU4LDYgKzIx NTgsNyBAQCBzdGF0aWMgaW50IGludGVsX2luaXRfcmluZ19idWZmZXIoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+cmVxdWVzdF9saXN0KTsKIAlJTklUX0xJ U1RfSEVBRCgmcmluZy0+ZXhlY2xpc3RfcXVldWUpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5i dWZmZXJzKTsKKwlzcGluX2xvY2tfaW5pdCgmcmluZy0+ZmVuY2VfbG9jayk7CiAJaTkxNV9nZW1f YmF0Y2hfcG9vbF9pbml0KGRldiwgJnJpbmctPmJhdGNoX3Bvb2wpOwogCW1lbXNldChyaW5nLT5z ZW1hcGhvcmUuc3luY19zZXFubywgMCwgc2l6ZW9mKHJpbmctPnNlbWFwaG9yZS5zeW5jX3NlcW5v KSk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAppbmRleCA1OGIxOTc2 Li40NTQ3NjQ1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCkBAIC0z NDgsNiArMzQ4LDkgQEAgc3RydWN0ICBpbnRlbF9lbmdpbmVfY3MgewogCSAqIHRvIGVuY29kZSB0 aGUgY29tbWFuZCBsZW5ndGggaW4gdGhlIGhlYWRlcikuCiAJICovCiAJdTMyICgqZ2V0X2NtZF9s ZW5ndGhfbWFzaykodTMyIGNtZF9oZWFkZXIpOworCisJdW5zaWduZWQgZmVuY2VfY29udGV4dDsK KwlzcGlubG9ja190IGZlbmNlX2xvY2s7CiB9OwogCiBib29sIGludGVsX3JpbmdfaW5pdGlhbGl6 ZWQoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyk7Ci0tIAoxLjkuMQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK