From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 05/29] drm/i915: Replace last_[rwf]_seqno with last_[rwf]_req Date: Thu, 30 Oct 2014 18:40:57 +0000 Message-ID: <1414694481-15724-6-git-send-email-John.C.Harrison@Intel.com> References: <1414694481-15724-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 mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 6FA806E0CA for ; Thu, 30 Oct 2014 11:41:29 -0700 (PDT) In-Reply-To: <1414694481-15724-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBvYmpl Y3Qgc3RydWN0dXJlIGNvbnRhaW5zIHRoZSBsYXN0IHJlYWQsIHdyaXRlIGFuZCBmZW5jZWQgc2Vx bm8gdmFsdWVzIGZvcgp1c2UgaW4gc3luY3Job25pc2F0aW9uIG9wZXJhdGlvbnMuIFRoZXNlIGhh dmUgbm93IGJlZW4gcmVwbGFjZWQgd2l0aCB0aGVpcgpyZXF1ZXN0IHN0cnVjdHVyZSBjb3VudGVy cGFydHMuCgpOb3RlIHRoYXQgdG8gZW5zdXJlIHRoYXQgb2JqZWN0cyBkbyBub3QgZW5kIHVwIHdp dGggZGFuZ2xpbmcgcG9pbnRlcnMsIHRoZQphc3NpZ25tZW50cyBvZiBsYXN0XypfcmVxIGluY2x1 ZGUgcmVmZXJlbmNlIGNvdW50IHVwZGF0ZXMuIFRodXMgYSByZXF1ZXN0IGNhbm5vdApiZSBmcmVl ZCBpZiBhbiBvYmplY3QgaXMgc3RpbGwgaGFuZ2luZyBvbiB0byBpdCBmb3IgYW55IHJlYXNvbi4K CkZvcjogVklaLTQzNzcKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJp c29uQEludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyAg ICAgICAgfCAgICA2ICstLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAg ICAgIHwgICAgNiArLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAg ICB8ICAgNjggKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jIHwgICAgNiArLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2d0dC5oICAgICAgICB8ICAgIDQgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX3RpbGluZy5jICAgICB8ICAgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z3B1X2Vycm9yLmMgICAgICB8ICAgIDQgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYyAgICAgICB8ICAgMTAgKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmlu Z2J1ZmZlci5oICAgIHwgICAgMiArLQogOSBmaWxlcyBjaGFuZ2VkLCA1OCBpbnNlcnRpb25zKCsp LCA1MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCmluZGV4IGE3 OWY4M2MuLjc5Y2U1YzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVi dWdmcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCkBAIC0xMzMs OSArMTMzLDkgQEAgZGVzY3JpYmVfb2JqKHN0cnVjdCBzZXFfZmlsZSAqbSwgc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaikKIAkJICAgb2JqLT5iYXNlLnNpemUgLyAxMDI0LAogCQkgICBv YmotPmJhc2UucmVhZF9kb21haW5zLAogCQkgICBvYmotPmJhc2Uud3JpdGVfZG9tYWluLAotCQkg ICBvYmotPmxhc3RfcmVhZF9zZXFubywKLQkJICAgb2JqLT5sYXN0X3dyaXRlX3NlcW5vLAotCQkg ICBvYmotPmxhc3RfZmVuY2VkX3NlcW5vLAorCQkgICBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFu byhvYmotPmxhc3RfcmVhZF9yZXEpLAorCQkgICBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhv YmotPmxhc3Rfd3JpdGVfcmVxKSwKKwkJICAgaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8ob2Jq LT5sYXN0X2ZlbmNlZF9yZXEpLAogCQkgICBpOTE1X2NhY2hlX2xldmVsX3N0cih0b19pOTE1KG9i ai0+YmFzZS5kZXYpLCBvYmotPmNhY2hlX2xldmVsKSwKIAkJICAgb2JqLT5kaXJ0eSA/ICIgZGly dHkiIDogIiIsCiAJCSAgIG9iai0+bWFkdiA9PSBJOTE1X01BRFZfRE9OVE5FRUQgPyAiIHB1cmdl YWJsZSIgOiAiIik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA3YTA0M2I4Li4wNTllYzQz IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE4NzEsMTAgKzE4NzEsMTAgQEAgc3RydWN0 IGRybV9pOTE1X2dlbV9vYmplY3QgewogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CiAK IAkvKiogQnJlYWRjcnVtYiBvZiBsYXN0IHJlbmRlcmluZyB0byB0aGUgYnVmZmVyLiAqLwotCXVp bnQzMl90IGxhc3RfcmVhZF9zZXFubzsKLQl1aW50MzJfdCBsYXN0X3dyaXRlX3NlcW5vOworCXN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqbGFzdF9yZWFkX3JlcTsKKwlzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKmxhc3Rfd3JpdGVfcmVxOwogCS8qKiBCcmVhZGNydW1iIG9mIGxhc3Qg ZmVuY2VkIEdQVSBhY2Nlc3MgdG8gdGhlIGJ1ZmZlci4gKi8KLQl1aW50MzJfdCBsYXN0X2ZlbmNl ZF9zZXFubzsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKmxhc3RfZmVuY2VkX3JlcTsK IAogCS8qKiBDdXJyZW50IHRpbGluZyBzdHJpZGUgZm9yIHRoZSBvYmplY3QsIGlmIGl0J3MgdGls ZWQuICovCiAJdWludDMyX3Qgc3RyaWRlOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggZDQ2 YTcwZC4uYTI4NDMyYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0xMjg5LDExICsxMjg5 LDExIEBAIGk5MTVfZ2VtX29iamVjdF93YWl0X3JlbmRlcmluZ19fdGFpbChzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqb2JqKQogCS8qIE1hbnVhbGx5IG1hbmFnZSB0aGUgd3JpdGUgZmx1c2gg YXMgd2UgbWF5IGhhdmUgbm90IHlldAogCSAqIHJldGlyZWQgdGhlIGJ1ZmZlci4KIAkgKgotCSAq IE5vdGUgdGhhdCB0aGUgbGFzdF93cml0ZV9zZXFubyBpcyBhbHdheXMgdGhlIGVhcmxpZXIgb2YK LQkgKiB0aGUgdHdvIChyZWFkL3dyaXRlKSBzZXFubywgc28gaWYgd2UgaGF2ZWQgc3VjY2Vzc2Z1 bGx5IHdhaXRlZCwKKwkgKiBOb3RlIHRoYXQgdGhlIGxhc3Rfd3JpdGVfcmVxIGlzIGFsd2F5cyB0 aGUgZWFybGllciBvZgorCSAqIHRoZSB0d28gKHJlYWQvd3JpdGUpIHJlcXVlc3RzLCBzbyBpZiB3 ZSBoYXZlZCBzdWNjZXNzZnVsbHkgd2FpdGVkLAogCSAqIHdlIGtub3cgd2UgaGF2ZSBwYXNzZWQg dGhlIGxhc3Qgd3JpdGUuCiAJICovCi0Jb2JqLT5sYXN0X3dyaXRlX3NlcW5vID0gMDsKKwlpOTE1 X2dlbV9yZXF1ZXN0X2Fzc2lnbigmb2JqLT5sYXN0X3dyaXRlX3JlcSwgTlVMTCk7CiAKIAlyZXR1 cm4gMDsKIH0KQEAgLTEzMDYsMTQgKzEzMDYsMTggQEAgc3RhdGljIF9fbXVzdF9jaGVjayBpbnQK IGk5MTVfZ2VtX29iamVjdF93YWl0X3JlbmRlcmluZyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqLAogCQkJICAgICAgIGJvb2wgcmVhZG9ubHkpCiB7CisJc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXE7CiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IG9iai0+cmlu ZzsKIAl1MzIgc2Vxbm87CiAJaW50IHJldDsKIAotCXNlcW5vID0gcmVhZG9ubHkgPyBvYmotPmxh c3Rfd3JpdGVfc2Vxbm8gOiBvYmotPmxhc3RfcmVhZF9zZXFubzsKLQlpZiAoc2Vxbm8gPT0gMCkK KwlyZXEgPSByZWFkb25seSA/IG9iai0+bGFzdF93cml0ZV9yZXEgOiBvYmotPmxhc3RfcmVhZF9y ZXE7CisJaWYgKCFyZXEpCiAJCXJldHVybiAwOwogCisJc2Vxbm8gPSBpOTE1X2dlbV9yZXF1ZXN0 X2dldF9zZXFubyhyZXEpOworCVdBUk5fT04oc2Vxbm8gPT0gMCk7CisKIAlyZXQgPSBpOTE1X3dh aXRfc2Vxbm8ocmluZywgc2Vxbm8pOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CkBAIC0xMzI5 LDYgKzEzMzMsNyBAQCBpOTE1X2dlbV9vYmplY3Rfd2FpdF9yZW5kZXJpbmdfX25vbmJsb2NraW5n KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkJCSAgICBzdHJ1Y3QgZHJtX2k5 MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYsCiAJCQkJCSAgICBib29sIHJlYWRvbmx5KQogewor CXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxOwogCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBvYmotPmJhc2UuZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IG9iai0+ cmluZzsKQEAgLTEzMzksMTAgKzEzNDQsMTMgQEAgaTkxNV9nZW1fb2JqZWN0X3dhaXRfcmVuZGVy aW5nX19ub25ibG9ja2luZyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCUJVR19P TighbXV0ZXhfaXNfbG9ja2VkKCZkZXYtPnN0cnVjdF9tdXRleCkpOwogCUJVR19PTighZGV2X3By aXYtPm1tLmludGVycnVwdGlibGUpOwogCi0Jc2Vxbm8gPSByZWFkb25seSA/IG9iai0+bGFzdF93 cml0ZV9zZXFubyA6IG9iai0+bGFzdF9yZWFkX3NlcW5vOwotCWlmIChzZXFubyA9PSAwKQorCXJl cSA9IHJlYWRvbmx5ID8gb2JqLT5sYXN0X3dyaXRlX3JlcSA6IG9iai0+bGFzdF9yZWFkX3JlcTsK KwlpZiAoIXJlcSkKIAkJcmV0dXJuIDA7CiAKKwlzZXFubyA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0 X3NlcW5vKHJlcSk7CisJV0FSTl9PTihzZXFubyA9PSAwKTsKKwogCXJldCA9IGk5MTVfZ2VtX2No ZWNrX3dlZGdlKCZkZXZfcHJpdi0+Z3B1X2Vycm9yLCB0cnVlKTsKIAlpZiAocmV0KQogCQlyZXR1 cm4gcmV0OwpAQCAtMjE3OSwxMiArMjE4NywxMiBAQCBzdGF0aWMgdm9pZAogaTkxNV9nZW1fb2Jq ZWN0X21vdmVfdG9fYWN0aXZlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkg ICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIHsKLQl1MzIgc2Vxbm8gPSBpbnRl bF9yaW5nX2dldF9zZXFubyhyaW5nKTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJl cSA9IGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyk7CiAKIAlCVUdfT04ocmluZyA9PSBOVUxM KTsKLQlpZiAob2JqLT5yaW5nICE9IHJpbmcgJiYgb2JqLT5sYXN0X3dyaXRlX3NlcW5vKSB7Ci0J CS8qIEtlZXAgdGhlIHNlcW5vIHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHJpbmcgKi8KLQkJb2Jq LT5sYXN0X3dyaXRlX3NlcW5vID0gc2Vxbm87CisJaWYgKG9iai0+cmluZyAhPSByaW5nICYmIG9i ai0+bGFzdF93cml0ZV9yZXEpIHsKKwkJLyogS2VlcCB0aGUgcmVxdWVzdCByZWxhdGl2ZSB0byB0 aGUgY3VycmVudCByaW5nICovCisJCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZvYmotPmxhc3Rf d3JpdGVfcmVxLCByZXEpOwogCX0KIAlvYmotPnJpbmcgPSByaW5nOwogCkBAIC0yMTk2LDcgKzIy MDQsNyBAQCBpOTE1X2dlbV9vYmplY3RfbW92ZV90b19hY3RpdmUoc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKm9iaiwKIAogCWxpc3RfbW92ZV90YWlsKCZvYmotPnJpbmdfbGlzdCwgJnJpbmct PmFjdGl2ZV9saXN0KTsKIAotCW9iai0+bGFzdF9yZWFkX3NlcW5vID0gc2Vxbm87CisJaTkxNV9n ZW1fcmVxdWVzdF9hc3NpZ24oJm9iai0+bGFzdF9yZWFkX3JlcSwgcmVxKTsKIH0KIAogdm9pZCBp OTE1X3ZtYV9tb3ZlX3RvX2FjdGl2ZShzdHJ1Y3QgaTkxNV92bWEgKnZtYSwKQEAgLTIyMjcsMTEg KzIyMzUsMTEgQEAgaTkxNV9nZW1fb2JqZWN0X21vdmVfdG9faW5hY3RpdmUoc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaikKIAlsaXN0X2RlbF9pbml0KCZvYmotPnJpbmdfbGlzdCk7CiAJ b2JqLT5yaW5nID0gTlVMTDsKIAotCW9iai0+bGFzdF9yZWFkX3NlcW5vID0gMDsKLQlvYmotPmxh c3Rfd3JpdGVfc2Vxbm8gPSAwOworCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZvYmotPmxhc3Rf cmVhZF9yZXEsIE5VTEwpOworCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZvYmotPmxhc3Rfd3Jp dGVfcmVxLCBOVUxMKTsKIAlvYmotPmJhc2Uud3JpdGVfZG9tYWluID0gMDsKIAotCW9iai0+bGFz dF9mZW5jZWRfc2Vxbm8gPSAwOworCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZvYmotPmxhc3Rf ZmVuY2VkX3JlcSwgTlVMTCk7CiAKIAlvYmotPmFjdGl2ZSA9IDA7CiAJZHJtX2dlbV9vYmplY3Rf dW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7CkBAIC0yMjQ4LDcgKzIyNTYsNyBAQCBpOTE1X2dlbV9v YmplY3RfcmV0aXJlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiAJCXJldHVybjsK IAogCWlmIChpOTE1X3NlcW5vX3Bhc3NlZChyaW5nLT5nZXRfc2Vxbm8ocmluZywgdHJ1ZSksCi0J CQkgICAgICBvYmotPmxhc3RfcmVhZF9zZXFubykpCisJCQkgICAgICBpOTE1X2dlbV9yZXF1ZXN0 X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9yZXEpKSkKIAkJaTkxNV9nZW1fb2JqZWN0X21vdmVf dG9faW5hY3RpdmUob2JqKTsKIH0KIApAQCAtMjY2Myw3ICsyNjcxLDcgQEAgaTkxNV9nZW1fcmV0 aXJlX3JlcXVlc3RzX3Jpbmcoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIAkJCQkgICAg ICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCwKIAkJCQkgICAgICByaW5nX2xpc3QpOwogCi0J CWlmICghaTkxNV9zZXFub19wYXNzZWQoc2Vxbm8sIG9iai0+bGFzdF9yZWFkX3NlcW5vKSkKKwkJ aWYgKCFpOTE1X3NlcW5vX3Bhc3NlZChzZXFubywgaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8o b2JqLT5sYXN0X3JlYWRfcmVxKSkpCiAJCQlicmVhazsKIAogCQlpOTE1X2dlbV9vYmplY3RfbW92 ZV90b19pbmFjdGl2ZShvYmopOwpAQCAtMjc3Myw3ICsyNzgxLDcgQEAgaTkxNV9nZW1fb2JqZWN0 X2ZsdXNoX2FjdGl2ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCWludCByZXQ7 CiAKIAlpZiAob2JqLT5hY3RpdmUpIHsKLQkJcmV0ID0gaTkxNV9nZW1fY2hlY2tfb2xyKG9iai0+ cmluZywgb2JqLT5sYXN0X3JlYWRfc2Vxbm8pOworCQlyZXQgPSBpOTE1X2dlbV9jaGVja19vbHIo b2JqLT5yaW5nLCBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9yZXEp KTsKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7CiAKQEAgLTI4MzQsMTMgKzI4NDIsMTIgQEAg aTkxNV9nZW1fd2FpdF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBz dHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpCiAJaWYgKHJldCkKIAkJZ290byBvdXQ7CiAKLQlpZiAob2Jq LT5hY3RpdmUpIHsKLQkJc2Vxbm8gPSBvYmotPmxhc3RfcmVhZF9zZXFubzsKLQkJcmluZyA9IG9i ai0+cmluZzsKLQl9CisJaWYgKCFvYmotPmFjdGl2ZSB8fCAhb2JqLT5sYXN0X3JlYWRfcmVxKQor CQlnb3RvIG91dDsKIAotCWlmIChzZXFubyA9PSAwKQotCQkgZ290byBvdXQ7CisJc2Vxbm8gPSBp OTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9yZXEpOworCVdBUk5fT04o c2Vxbm8gPT0gMCk7CisJcmluZyA9IG9iai0+cmluZzsKIAogCS8qIERvIHRoaXMgYWZ0ZXIgT0xS IGNoZWNrIHRvIG1ha2Ugc3VyZSB3ZSBtYWtlIGZvcndhcmQgcHJvZ3Jlc3MgcG9sbGluZwogCSAq IG9uIHRoaXMgSU9DVEwgd2l0aCBhIHRpbWVvdXQgPD0wIChsaWtlIGJ1c3kgaW9jdGwpCkBAIC0y ODkxLDcgKzI4OTgsNyBAQCBpOTE1X2dlbV9vYmplY3Rfc3luYyhzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqLAogCiAJaWR4ID0gaW50ZWxfcmluZ19zeW5jX2luZGV4KGZyb20sIHRvKTsK IAotCXNlcW5vID0gb2JqLT5sYXN0X3JlYWRfc2Vxbm87CisJc2Vxbm8gPSBpOTE1X2dlbV9yZXF1 ZXN0X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9yZXEpOwogCS8qIE9wdGltaXphdGlvbjogQXZv aWQgc2VtYXBob3JlIHN5bmMgd2hlbiB3ZSBhcmUgc3VyZSB3ZSBhbHJlYWR5CiAJICogd2FpdGVk IGZvciBhbiBvYmplY3Qgd2l0aCBoaWdoZXIgc2Vxbm8gKi8KIAlpZiAoc2Vxbm8gPD0gZnJvbS0+ c2VtYXBob3JlLnN5bmNfc2Vxbm9baWR4XSkKQEAgLTI5MDQsMTEgKzI5MTEsMTIgQEAgaTkxNV9n ZW1fb2JqZWN0X3N5bmMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAl0cmFjZV9p OTE1X2dlbV9yaW5nX3N5bmNfdG8oZnJvbSwgdG8sIHNlcW5vKTsKIAlyZXQgPSB0by0+c2VtYXBo b3JlLnN5bmNfdG8odG8sIGZyb20sIHNlcW5vKTsKIAlpZiAoIXJldCkKLQkJLyogV2UgdXNlIGxh c3RfcmVhZF9zZXFubyBiZWNhdXNlIHN5bmNfdG8oKQorCQkvKiBXZSB1c2UgbGFzdF9yZWFkX3Jl cSBiZWNhdXNlIHN5bmNfdG8oKQogCQkgKiBtaWdodCBoYXZlIGp1c3QgY2F1c2VkIHNlcW5vIHdy YXAgdW5kZXIKIAkJICogdGhlIHJhZGFyLgogCQkgKi8KLQkJZnJvbS0+c2VtYXBob3JlLnN5bmNf c2Vxbm9baWR4XSA9IG9iai0+bGFzdF9yZWFkX3NlcW5vOworCQlmcm9tLT5zZW1hcGhvcmUuc3lu Y19zZXFub1tpZHhdID0KKwkJCQlpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3Rf cmVhZF9yZXEpOwogCiAJcmV0dXJuIHJldDsKIH0KQEAgLTMyMjIsMTIgKzMyMzAsMTIgQEAgc3Rh dGljIHZvaWQgaTkxNV9nZW1fb2JqZWN0X3VwZGF0ZV9mZW5jZShzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqLAogc3RhdGljIGludAogaTkxNV9nZW1fb2JqZWN0X3dhaXRfZmVuY2Uoc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKIHsKLQlpZiAob2JqLT5sYXN0X2ZlbmNlZF9z ZXFubykgewotCQlpbnQgcmV0ID0gaTkxNV93YWl0X3NlcW5vKG9iai0+cmluZywgb2JqLT5sYXN0 X2ZlbmNlZF9zZXFubyk7CisJaWYgKG9iai0+bGFzdF9mZW5jZWRfcmVxKSB7CisJCWludCByZXQg PSBpOTE1X3dhaXRfc2Vxbm8ob2JqLT5yaW5nLCBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhv YmotPmxhc3RfZmVuY2VkX3JlcSkpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIAotCQlv YmotPmxhc3RfZmVuY2VkX3NlcW5vID0gMDsKKwkJaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24oJm9i ai0+bGFzdF9mZW5jZWRfcmVxLCBOVUxMKTsKIAl9CiAKIAlyZXR1cm4gMDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCA0YjdmNWMxLi43ZWQwOWZjIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCkBAIC05NDMsNyAr OTQzLDcgQEAgdm9pZAogaTkxNV9nZW1fZXhlY2J1ZmZlcl9tb3ZlX3RvX2FjdGl2ZShzdHJ1Y3Qg bGlzdF9oZWFkICp2bWFzLAogCQkJCSAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCiB7 Ci0JdTMyIHNlcW5vID0gaW50ZWxfcmluZ19nZXRfc2Vxbm8ocmluZyk7CisJc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEgPSBpbnRlbF9yaW5nX2dldF9yZXF1ZXN0KHJpbmcpOwogCXN0 cnVjdCBpOTE1X3ZtYSAqdm1hOwogCiAJbGlzdF9mb3JfZWFjaF9lbnRyeSh2bWEsIHZtYXMsIGV4 ZWNfbGlzdCkgewpAQCAtOTYwLDcgKzk2MCw3IEBAIGk5MTVfZ2VtX2V4ZWNidWZmZXJfbW92ZV90 b19hY3RpdmUoc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKIAkJaTkxNV92bWFfbW92ZV90b19hY3Rp dmUodm1hLCByaW5nKTsKIAkJaWYgKG9iai0+YmFzZS53cml0ZV9kb21haW4pIHsKIAkJCW9iai0+ ZGlydHkgPSAxOwotCQkJb2JqLT5sYXN0X3dyaXRlX3NlcW5vID0gc2Vxbm87CisJCQlpOTE1X2dl bV9yZXF1ZXN0X2Fzc2lnbigmb2JqLT5sYXN0X3dyaXRlX3JlcSwgcmVxKTsKIAogCQkJaW50ZWxf ZmJfb2JqX2ludmFsaWRhdGUob2JqLCByaW5nKTsKIApAQCAtOTY4LDcgKzk2OCw3IEBAIGk5MTVf Z2VtX2V4ZWNidWZmZXJfbW92ZV90b19hY3RpdmUoc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKIAkJ CW9iai0+YmFzZS53cml0ZV9kb21haW4gJj0gfkk5MTVfR0VNX0dQVV9ET01BSU5TOwogCQl9CiAJ CWlmIChlbnRyeS0+ZmxhZ3MgJiBFWEVDX09CSkVDVF9ORUVEU19GRU5DRSkgewotCQkJb2JqLT5s YXN0X2ZlbmNlZF9zZXFubyA9IHNlcW5vOworCQkJaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24oJm9i ai0+bGFzdF9mZW5jZWRfcmVxLCByZXEpOwogCQkJaWYgKGVudHJ5LT5mbGFncyAmIF9fRVhFQ19P QkpFQ1RfSEFTX0ZFTkNFKSB7CiAJCQkJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gdG9faTkxNShyaW5nLT5kZXYpOwogCQkJCWxpc3RfbW92ZV90YWlsKCZkZXZfcHJpdi0+ZmVu Y2VfcmVnc1tvYmotPmZlbmNlX3JlZ10ubHJ1X2xpc3QsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5oCmluZGV4IGQwNTYyZDAuLjY5ZDliYTEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5oCkBAIC0xODIsNyArMTgyLDcgQEAgc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSB7CiAJ ICogTGlzdCBvZiBvYmplY3RzIGN1cnJlbnRseSBpbnZvbHZlZCBpbiByZW5kZXJpbmcuCiAJICoK IAkgKiBJbmNsdWRlcyBidWZmZXJzIGhhdmluZyB0aGUgY29udGVudHMgb2YgdGhlaXIgR1BVIGNh Y2hlcwotCSAqIGZsdXNoZWQsIG5vdCBuZWNlc3NhcmlseSBwcmltaXRpdmVzLiAgbGFzdF9yZW5k ZXJpbmdfc2Vxbm8KKwkgKiBmbHVzaGVkLCBub3QgbmVjZXNzYXJpbHkgcHJpbWl0aXZlcy4gIGxh c3RfcmVuZGVyaW5nX3JlcQogCSAqIHJlcHJlc2VudHMgd2hlbiB0aGUgcmVuZGVyaW5nIGludm9s dmVkIHdpbGwgYmUgY29tcGxldGVkLgogCSAqCiAJICogQSByZWZlcmVuY2UgaXMgaGVsZCBvbiB0 aGUgYnVmZmVyIHdoaWxlIG9uIHRoaXMgbGlzdC4KQEAgLTE5Myw3ICsxOTMsNyBAQCBzdHJ1Y3Qg aTkxNV9hZGRyZXNzX3NwYWNlIHsKIAkgKiBMUlUgbGlzdCBvZiBvYmplY3RzIHdoaWNoIGFyZSBu b3QgaW4gdGhlIHJpbmdidWZmZXIgYW5kCiAJICogYXJlIHJlYWR5IHRvIHVuYmluZCwgYnV0IGFy ZSBzdGlsbCBpbiB0aGUgR1RULgogCSAqCi0JICogbGFzdF9yZW5kZXJpbmdfc2Vxbm8gaXMgMCB3 aGlsZSBhbiBvYmplY3QgaXMgaW4gdGhpcyBsaXN0LgorCSAqIGxhc3RfcmVuZGVyaW5nX3JlcSBp cyBOVUxMIHdoaWxlIGFuIG9iamVjdCBpcyBpbiB0aGlzIGxpc3QuCiAJICoKIAkgKiBBIHJlZmVy ZW5jZSBpcyBub3QgaGVsZCBvbiB0aGUgYnVmZmVyIHdoaWxlIG9uIHRoaXMgbGlzdCwKIAkgKiBh cyBtZXJlbHkgYmVpbmcgR1RULWJvdW5kIHNob3VsZG4ndCBwcmV2ZW50IGl0cyBiZWluZwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fdGlsaW5nLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV90aWxpbmcuYwppbmRleCBkMWU3YTNlLi4yNDNiYTEyIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV90aWxpbmcuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV90aWxpbmcuYwpAQCAtMzk0LDcgKzM5NCw3IEBA IGk5MTVfZ2VtX3NldF90aWxpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwK IAogCQlpZiAocmV0ID09IDApIHsKIAkJCW9iai0+ZmVuY2VfZGlydHkgPQotCQkJCW9iai0+bGFz dF9mZW5jZWRfc2Vxbm8gfHwKKwkJCQlvYmotPmxhc3RfZmVuY2VkX3JlcSB8fAogCQkJCW9iai0+ ZmVuY2VfcmVnICE9IEk5MTVfRkVOQ0VfUkVHX05PTkU7CiAKIAkJCW9iai0+dGlsaW5nX21vZGUg PSBhcmdzLT50aWxpbmdfbW9kZTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ3B1X2Vycm9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJvci5jCmlu ZGV4IGQxNzM2MGIuLjEwYmExODggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ3B1X2Vycm9yLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3Iu YwpAQCAtNjY4LDggKzY2OCw4IEBAIHN0YXRpYyB2b2lkIGNhcHR1cmVfYm8oc3RydWN0IGRybV9p OTE1X2Vycm9yX2J1ZmZlciAqZXJyLAogCiAJZXJyLT5zaXplID0gb2JqLT5iYXNlLnNpemU7CiAJ ZXJyLT5uYW1lID0gb2JqLT5iYXNlLm5hbWU7Ci0JZXJyLT5yc2Vxbm8gPSBvYmotPmxhc3RfcmVh ZF9zZXFubzsKLQllcnItPndzZXFubyA9IG9iai0+bGFzdF93cml0ZV9zZXFubzsKKwllcnItPnJz ZXFubyA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5vKG9iai0+bGFzdF9yZWFkX3JlcSk7CisJ ZXJyLT53c2Vxbm8gPSBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3Rfd3JpdGVf cmVxKTsKIAllcnItPmd0dF9vZmZzZXQgPSB2bWEtPm5vZGUuc3RhcnQ7CiAJZXJyLT5yZWFkX2Rv bWFpbnMgPSBvYmotPmJhc2UucmVhZF9kb21haW5zOwogCWVyci0+d3JpdGVfZG9tYWluID0gb2Jq LT5iYXNlLndyaXRlX2RvbWFpbjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRl eCA5MmYwMDA1Li41MWFhZTc1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBA IC05MzQxLDE2ICs5MzQxLDE2IEBAIHN0YXRpYyBpbnQgaW50ZWxfcG9zdHBvbmVfZmxpcChzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCiAJbG9ja2RlcF9hc3NlcnRfaGVsZCgmb2Jq LT5iYXNlLmRldi0+c3RydWN0X211dGV4KTsKIAotCWlmICghb2JqLT5sYXN0X3dyaXRlX3NlcW5v KQorCWlmICghb2JqLT5sYXN0X3dyaXRlX3JlcSkKIAkJcmV0dXJuIDA7CiAKIAlyaW5nID0gb2Jq LT5yaW5nOwogCiAJaWYgKGk5MTVfc2Vxbm9fcGFzc2VkKHJpbmctPmdldF9zZXFubyhyaW5nLCB0 cnVlKSwKLQkJCSAgICAgIG9iai0+bGFzdF93cml0ZV9zZXFubykpCisJCQkgICAgICBpOTE1X2dl bV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3Rfd3JpdGVfcmVxKSkpCiAJCXJldHVybiAwOwog Ci0JcmV0ID0gaTkxNV9nZW1fY2hlY2tfb2xyKHJpbmcsIG9iai0+bGFzdF93cml0ZV9zZXFubyk7 CisJcmV0ID0gaTkxNV9nZW1fY2hlY2tfb2xyKHJpbmcsIGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3Nl cW5vKG9iai0+bGFzdF93cml0ZV9yZXEpKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBA IC05NDEyLDcgKzk0MTIsNyBAQCBzdGF0aWMgaW50IGludGVsX3F1ZXVlX21taW9fZmxpcChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAogCX0KIAogCXNwaW5fbG9ja19pcnEoJmRldl9wcml2LT5tbWlv X2ZsaXBfbG9jayk7Ci0JaW50ZWxfY3J0Yy0+bW1pb19mbGlwLnNlcW5vID0gb2JqLT5sYXN0X3dy aXRlX3NlcW5vOworCWludGVsX2NydGMtPm1taW9fZmxpcC5zZXFubyA9IGk5MTVfZ2VtX3JlcXVl c3RfZ2V0X3NlcW5vKG9iai0+bGFzdF93cml0ZV9yZXEpOwogCWludGVsX2NydGMtPm1taW9fZmxp cC5yaW5nX2lkID0gb2JqLT5yaW5nLT5pZDsKIAlzcGluX3VubG9ja19pcnEoJmRldl9wcml2LT5t bWlvX2ZsaXBfbG9jayk7CiAKQEAgLTk2MTYsNyArOTYxNiw3IEBAIHN0YXRpYyBpbnQgaW50ZWxf Y3J0Y19wYWdlX2ZsaXAoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQlpZiAocmV0KQogCQkJZ290 byBjbGVhbnVwX3VucGluOwogCi0JCXdvcmstPmZsaXBfcXVldWVkX3NlcW5vID0gb2JqLT5sYXN0 X3dyaXRlX3NlcW5vOworCQl3b3JrLT5mbGlwX3F1ZXVlZF9zZXFubyA9IGk5MTVfZ2VtX3JlcXVl c3RfZ2V0X3NlcW5vKG9iai0+bGFzdF93cml0ZV9yZXEpOwogCQl3b3JrLT5mbGlwX3F1ZXVlZF9y aW5nID0gb2JqLT5yaW5nOwogCX0gZWxzZSB7CiAJCXJldCA9IGRldl9wcml2LT5kaXNwbGF5LnF1 ZXVlX2ZsaXAoZGV2LCBjcnRjLCBmYiwgb2JqLCByaW5nLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcmluZ2J1ZmZlci5oCmluZGV4IGNjMWI2MmYuLmQ5OGI5NjQgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKQEAgLTI0OSw3ICsyNDksNyBAQCBzdHJ1Y3QgIGludGVs X2VuZ2luZV9jcyB7CiAJICogcmluZ2J1ZmZlci4KIAkgKgogCSAqIEluY2x1ZGVzIGJ1ZmZlcnMg aGF2aW5nIHRoZSBjb250ZW50cyBvZiB0aGVpciBHUFUgY2FjaGVzCi0JICogZmx1c2hlZCwgbm90 IG5lY2Vzc2FyaWx5IHByaW1pdGl2ZXMuICBsYXN0X3JlbmRlcmluZ19zZXFubworCSAqIGZsdXNo ZWQsIG5vdCBuZWNlc3NhcmlseSBwcmltaXRpdmVzLiAgbGFzdF9yZW5kZXJpbmdfcmVxCiAJICog cmVwcmVzZW50cyB3aGVuIHRoZSByZW5kZXJpbmcgaW52b2x2ZWQgd2lsbCBiZSBjb21wbGV0ZWQu CiAJICoKIAkgKiBBIHJlZmVyZW5jZSBpcyBoZWxkIG9uIHRoZSBidWZmZXIgd2hpbGUgb24gdGhp cyBsaXN0LgotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK