From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v2 04/28] drm/i915: Replace last_[rwf]_seqno with last_[rwf]_req Date: Fri, 14 Nov 2014 12:18:55 +0000 Message-ID: <1415967559-17074-5-git-send-email-John.C.Harrison@Intel.com> References: <1415967559-17074-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 2CF9A6EDB3 for ; Fri, 14 Nov 2014 04:19:27 -0800 (PST) In-Reply-To: <1415967559-17074-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 CnYyOiBDb3JyZWN0ZWQgJ2xhc3RfcmVuZGVyaW5nXycgdG8gJ2xhc3RfcmVhZF8nIGluIGEgbnVt YmVyIG9mIGNvbW1lbnRzIHRoYXQgZGlkCm5vdCBnZXQgdXBkYXRlZCB3aGVuICdsYXN0X3JlbmRl cmluZ19zZXFubycgYmVjYW1lICdsYXN0X3JlYWR8d3JpdGVfc2Vxbm8nCnNldmVyYWwgbWlsbGVu aWEgYWdvLgoKRm9yOiBWSVotNDM3NwpTaWduZWQtb2ZmLWJ5OiBKb2huIEhhcnJpc29uIDxKb2hu LkMuSGFycmlzb25ASW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVi dWdmcy5jICAgICAgICB8ICAgIDYgKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o ICAgICAgICAgICAgfCAgIDEzICsrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j ICAgICAgICAgICAgfCAgIDcxICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyB8ICAgIDYgKy0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaCAgICAgICAgfCAgICA0ICstCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV90aWxpbmcuYyAgICAgfCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dwdV9lcnJvci5jICAgICAgfCAgICA0ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMgICAgICAgfCAgICA2ICsrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfcmluZ2J1ZmZlci5oICAgIHwgICAgMiArLQogOSBmaWxlcyBjaGFuZ2VkLCA2NCBpbnNl cnRpb25zKCspLCA1MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5j CmluZGV4IDMxOWRhNjEuLmNhNzA0YWYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZGVidWdmcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5j CkBAIC0xMzMsOSArMTMzLDkgQEAgZGVzY3JpYmVfb2JqKHN0cnVjdCBzZXFfZmlsZSAqbSwgc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKIAkJICAgb2JqLT5iYXNlLnNpemUgLyAxMDI0 LAogCQkgICBvYmotPmJhc2UucmVhZF9kb21haW5zLAogCQkgICBvYmotPmJhc2Uud3JpdGVfZG9t YWluLAotCQkgICBvYmotPmxhc3RfcmVhZF9zZXFubywKLQkJICAgb2JqLT5sYXN0X3dyaXRlX3Nl cW5vLAotCQkgICBvYmotPmxhc3RfZmVuY2VkX3NlcW5vLAorCQkgICBpOTE1X2dlbV9yZXF1ZXN0 X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9yZXEpLAorCQkgICBpOTE1X2dlbV9yZXF1ZXN0X2dl dF9zZXFubyhvYmotPmxhc3Rfd3JpdGVfcmVxKSwKKwkJICAgaTkxNV9nZW1fcmVxdWVzdF9nZXRf c2Vxbm8ob2JqLT5sYXN0X2ZlbmNlZF9yZXEpLAogCQkgICBpOTE1X2NhY2hlX2xldmVsX3N0cih0 b19pOTE1KG9iai0+YmFzZS5kZXYpLCBvYmotPmNhY2hlX2xldmVsKSwKIAkJICAgb2JqLT5kaXJ0 eSA/ICIgZGlydHkiIDogIiIsCiAJCSAgIG9iai0+bWFkdiA9PSBJOTE1X01BRFZfRE9OVE5FRUQg PyAiIHB1cmdlYWJsZSIgOiAiIik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA5MDcxYmIx Li4zMWJhNDk2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE5MzgsMTAgKzE5MzgsMTAg QEAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgewogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KnJpbmc7CiAKIAkvKiogQnJlYWRjcnVtYiBvZiBsYXN0IHJlbmRlcmluZyB0byB0aGUgYnVmZmVy LiAqLwotCXVpbnQzMl90IGxhc3RfcmVhZF9zZXFubzsKLQl1aW50MzJfdCBsYXN0X3dyaXRlX3Nl cW5vOworCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqbGFzdF9yZWFkX3JlcTsKKwlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKmxhc3Rfd3JpdGVfcmVxOwogCS8qKiBCcmVhZGNydW1i IG9mIGxhc3QgZmVuY2VkIEdQVSBhY2Nlc3MgdG8gdGhlIGJ1ZmZlci4gKi8KLQl1aW50MzJfdCBs YXN0X2ZlbmNlZF9zZXFubzsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKmxhc3RfZmVu Y2VkX3JlcTsKIAogCS8qKiBDdXJyZW50IHRpbGluZyBzdHJpZGUgZm9yIHRoZSBvYmplY3QsIGlm IGl0J3MgdGlsZWQuICovCiAJdWludDMyX3Qgc3RyaWRlOwpAQCAtMTk4NCw5ICsxOTg0LDEwIEBA IHZvaWQgaTkxNV9nZW1fdHJhY2tfZmIoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9sZCwK ICAqIFRoZSByZXF1ZXN0IHF1ZXVlIGFsbG93cyB1cyB0byBub3RlIHNlcXVlbmNlIG51bWJlcnMg dGhhdCBoYXZlIGJlZW4gZW1pdHRlZAogICogYW5kIG1heSBiZSBhc3NvY2lhdGVkIHdpdGggYWN0 aXZlIGJ1ZmZlcnMgdG8gYmUgcmV0aXJlZC4KICAqCi0gKiBCeSBrZWVwaW5nIHRoaXMgbGlzdCwg d2UgY2FuIGF2b2lkIGhhdmluZyB0byBkbyBxdWVzdGlvbmFibGUKLSAqIHNlcXVlbmNlLW51bWJl ciBjb21wYXJpc29ucyBvbiBidWZmZXIgbGFzdF9yZW5kZXJpbmdfc2Vxbm9zLCBhbmQgYXNzb2Np YXRlCi0gKiBhbiBlbWlzc2lvbiB0aW1lIHdpdGggc2Vxbm9zIGZvciB0cmFja2luZyBob3cgZmFy IGFoZWFkIG9mIHRoZSBHUFUgd2UgYXJlLgorICogQnkga2VlcGluZyB0aGlzIGxpc3QsIHdlIGNh biBhdm9pZCBoYXZpbmcgdG8gZG8gcXVlc3Rpb25hYmxlIHNlcXVlbmNlCisgKiBudW1iZXIgY29t cGFyaXNvbnMgb24gYnVmZmVyIGxhc3RfcmVhZHx3cml0ZV9zZXFuby4gSXQgYWxzbyBhbGxvd3Mg YW4KKyAqIGVtaXNzaW9uIHRpbWUgdG8gYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSByZXF1ZXN0IGZv ciB0cmFja2luZyBob3cgZmFyIGFoZWFkCisgKiBvZiB0aGUgR1BVIHRoZSBzdWJtaXNzaW9uIGlz LgogICovCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgewogCXN0cnVjdCBrcmVmIHJlZjsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IGYwYjZmNWJhLi5hOGM5M2M0IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtLmMKQEAgLTEzNzEsMTEgKzEzNzEsMTEgQEAgaTkxNV9nZW1fb2JqZWN0X3dh aXRfcmVuZGVyaW5nX190YWlsKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiAJLyog TWFudWFsbHkgbWFuYWdlIHRoZSB3cml0ZSBmbHVzaCBhcyB3ZSBtYXkgaGF2ZSBub3QgeWV0CiAJ ICogcmV0aXJlZCB0aGUgYnVmZmVyLgogCSAqCi0JICogTm90ZSB0aGF0IHRoZSBsYXN0X3dyaXRl X3NlcW5vIGlzIGFsd2F5cyB0aGUgZWFybGllciBvZgotCSAqIHRoZSB0d28gKHJlYWQvd3JpdGUp IHNlcW5vLCBzbyBpZiB3ZSBoYXZlZCBzdWNjZXNzZnVsbHkgd2FpdGVkLAorCSAqIE5vdGUgdGhh dCB0aGUgbGFzdF93cml0ZV9yZXEgaXMgYWx3YXlzIHRoZSBlYXJsaWVyIG9mCisJICogdGhlIHR3 byAocmVhZC93cml0ZSkgcmVxdWVzdHMsIHNvIGlmIHdlIGhhdmVkIHN1Y2Nlc3NmdWxseSB3YWl0 ZWQsCiAJICogd2Uga25vdyB3ZSBoYXZlIHBhc3NlZCB0aGUgbGFzdCB3cml0ZS4KIAkgKi8KLQlv YmotPmxhc3Rfd3JpdGVfc2Vxbm8gPSAwOworCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZvYmot Pmxhc3Rfd3JpdGVfcmVxLCBOVUxMKTsKIAogCXJldHVybiAwOwogfQpAQCAtMTM4OCwxNCArMTM4 OCwxOCBAQCBzdGF0aWMgX19tdXN0X2NoZWNrIGludAogaTkxNV9nZW1fb2JqZWN0X3dhaXRfcmVu ZGVyaW5nKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkgICAgICAgYm9vbCBy ZWFkb25seSkKIHsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcTsKIAlzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICpyaW5nID0gb2JqLT5yaW5nOwogCXUzMiBzZXFubzsKIAlpbnQgcmV0 OwogCi0Jc2Vxbm8gPSByZWFkb25seSA/IG9iai0+bGFzdF93cml0ZV9zZXFubyA6IG9iai0+bGFz dF9yZWFkX3NlcW5vOwotCWlmIChzZXFubyA9PSAwKQorCXJlcSA9IHJlYWRvbmx5ID8gb2JqLT5s YXN0X3dyaXRlX3JlcSA6IG9iai0+bGFzdF9yZWFkX3JlcTsKKwlpZiAoIXJlcSkKIAkJcmV0dXJu IDA7CiAKKwlzZXFubyA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5vKHJlcSk7CisJV0FSTl9P TihzZXFubyA9PSAwKTsKKwogCXJldCA9IGk5MTVfd2FpdF9zZXFubyhyaW5nLCBzZXFubyk7CiAJ aWYgKHJldCkKIAkJcmV0dXJuIHJldDsKQEAgLTE0MTEsNiArMTQxNSw3IEBAIGk5MTVfZ2VtX29i amVjdF93YWl0X3JlbmRlcmluZ19fbm9uYmxvY2tpbmcoc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9iaiwKIAkJCQkJICAgIHN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJp diwKIAkJCQkJICAgIGJvb2wgcmVhZG9ubHkpCiB7CisJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXE7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IG9iai0+YmFzZS5kZXY7CiAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nID0gb2JqLT5yaW5nOwpAQCAtMTQyMSwxMCArMTQyNiwx MyBAQCBpOTE1X2dlbV9vYmplY3Rfd2FpdF9yZW5kZXJpbmdfX25vbmJsb2NraW5nKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJQlVHX09OKCFtdXRleF9pc19sb2NrZWQoJmRldi0+ c3RydWN0X211dGV4KSk7CiAJQlVHX09OKCFkZXZfcHJpdi0+bW0uaW50ZXJydXB0aWJsZSk7CiAK LQlzZXFubyA9IHJlYWRvbmx5ID8gb2JqLT5sYXN0X3dyaXRlX3NlcW5vIDogb2JqLT5sYXN0X3Jl YWRfc2Vxbm87Ci0JaWYgKHNlcW5vID09IDApCisJcmVxID0gcmVhZG9ubHkgPyBvYmotPmxhc3Rf d3JpdGVfcmVxIDogb2JqLT5sYXN0X3JlYWRfcmVxOworCWlmICghcmVxKQogCQlyZXR1cm4gMDsK IAorCXNlcW5vID0gaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8ocmVxKTsKKwlXQVJOX09OKHNl cW5vID09IDApOworCiAJcmV0ID0gaTkxNV9nZW1fY2hlY2tfd2VkZ2UoJmRldl9wcml2LT5ncHVf ZXJyb3IsIHRydWUpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CkBAIC0yMjYyLDEyICsyMjcw LDEyIEBAIHN0YXRpYyB2b2lkCiBpOTE1X2dlbV9vYmplY3RfbW92ZV90b19hY3RpdmUoc3RydWN0 IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICpyaW5nKQogewotCXUzMiBzZXFubyA9IGludGVsX3JpbmdfZ2V0X3NlcW5vKHJpbmcpOwor CXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxID0gaW50ZWxfcmluZ19nZXRfcmVxdWVz dChyaW5nKTsKIAogCUJVR19PTihyaW5nID09IE5VTEwpOwotCWlmIChvYmotPnJpbmcgIT0gcmlu ZyAmJiBvYmotPmxhc3Rfd3JpdGVfc2Vxbm8pIHsKLQkJLyogS2VlcCB0aGUgc2Vxbm8gcmVsYXRp dmUgdG8gdGhlIGN1cnJlbnQgcmluZyAqLwotCQlvYmotPmxhc3Rfd3JpdGVfc2Vxbm8gPSBzZXFu bzsKKwlpZiAob2JqLT5yaW5nICE9IHJpbmcgJiYgb2JqLT5sYXN0X3dyaXRlX3JlcSkgeworCQkv KiBLZWVwIHRoZSByZXF1ZXN0IHJlbGF0aXZlIHRvIHRoZSBjdXJyZW50IHJpbmcgKi8KKwkJaTkx NV9nZW1fcmVxdWVzdF9hc3NpZ24oJm9iai0+bGFzdF93cml0ZV9yZXEsIHJlcSk7CiAJfQogCW9i ai0+cmluZyA9IHJpbmc7CiAKQEAgLTIyNzksNyArMjI4Nyw3IEBAIGk5MTVfZ2VtX29iamVjdF9t b3ZlX3RvX2FjdGl2ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCiAJbGlzdF9t b3ZlX3RhaWwoJm9iai0+cmluZ19saXN0LCAmcmluZy0+YWN0aXZlX2xpc3QpOwogCi0Jb2JqLT5s YXN0X3JlYWRfc2Vxbm8gPSBzZXFubzsKKwlpOTE1X2dlbV9yZXF1ZXN0X2Fzc2lnbigmb2JqLT5s YXN0X3JlYWRfcmVxLCByZXEpOwogfQogCiB2b2lkIGk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKHN0 cnVjdCBpOTE1X3ZtYSAqdm1hLApAQCAtMjMxMCwxMSArMjMxOCwxMSBAQCBpOTE1X2dlbV9vYmpl Y3RfbW92ZV90b19pbmFjdGl2ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCWxp c3RfZGVsX2luaXQoJm9iai0+cmluZ19saXN0KTsKIAlvYmotPnJpbmcgPSBOVUxMOwogCi0Jb2Jq LT5sYXN0X3JlYWRfc2Vxbm8gPSAwOwotCW9iai0+bGFzdF93cml0ZV9zZXFubyA9IDA7CisJaTkx NV9nZW1fcmVxdWVzdF9hc3NpZ24oJm9iai0+bGFzdF9yZWFkX3JlcSwgTlVMTCk7CisJaTkxNV9n ZW1fcmVxdWVzdF9hc3NpZ24oJm9iai0+bGFzdF93cml0ZV9yZXEsIE5VTEwpOwogCW9iai0+YmFz ZS53cml0ZV9kb21haW4gPSAwOwogCi0Jb2JqLT5sYXN0X2ZlbmNlZF9zZXFubyA9IDA7CisJaTkx NV9nZW1fcmVxdWVzdF9hc3NpZ24oJm9iai0+bGFzdF9mZW5jZWRfcmVxLCBOVUxMKTsKIAogCW9i ai0+YWN0aXZlID0gMDsKIAlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZSgmb2JqLT5iYXNlKTsK QEAgLTIzMzEsNyArMjMzOSw3IEBAIGk5MTVfZ2VtX29iamVjdF9yZXRpcmUoc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaikKIAkJcmV0dXJuOwogCiAJaWYgKGk5MTVfc2Vxbm9fcGFzc2Vk KHJpbmctPmdldF9zZXFubyhyaW5nLCB0cnVlKSwKLQkJCSAgICAgIG9iai0+bGFzdF9yZWFkX3Nl cW5vKSkKKwkJCSAgICAgIGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5vKG9iai0+bGFzdF9yZWFk X3JlcSkpKQogCQlpOTE1X2dlbV9vYmplY3RfbW92ZV90b19pbmFjdGl2ZShvYmopOwogfQogCkBA IC0yNzQ2LDcgKzI3NTQsOCBAQCBpOTE1X2dlbV9yZXRpcmVfcmVxdWVzdHNfcmluZyhzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICpyaW5nKQogCQkJCSAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0LAogCQkJCSAgICAgIHJpbmdfbGlzdCk7CiAKLQkJaWYgKCFpOTE1X3NlcW5vX3Bhc3NlZChz ZXFubywgb2JqLT5sYXN0X3JlYWRfc2Vxbm8pKQorCQlpZiAoIWk5MTVfc2Vxbm9fcGFzc2VkKHNl cW5vLAorCQkJICAgICBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9y ZXEpKSkKIAkJCWJyZWFrOwogCiAJCWk5MTVfZ2VtX29iamVjdF9tb3ZlX3RvX2luYWN0aXZlKG9i aik7CkBAIC0yODU2LDcgKzI4NjUsOCBAQCBpOTE1X2dlbV9vYmplY3RfZmx1c2hfYWN0aXZlKHN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiAJaW50IHJldDsKIAogCWlmIChvYmotPmFj dGl2ZSkgewotCQlyZXQgPSBpOTE1X2dlbV9jaGVja19vbHIob2JqLT5yaW5nLCBvYmotPmxhc3Rf cmVhZF9zZXFubyk7CisJCXJldCA9IGk5MTVfZ2VtX2NoZWNrX29scihvYmotPnJpbmcsCisJCQkg ICAgIGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5vKG9iai0+bGFzdF9yZWFkX3JlcSkpOwogCQlp ZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIApAQCAtMjkxNywxMyArMjkyNywxMiBAQCBpOTE1X2dl bV93YWl0X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBk cm1fZmlsZSAqZmlsZSkKIAlpZiAocmV0KQogCQlnb3RvIG91dDsKIAotCWlmIChvYmotPmFjdGl2 ZSkgewotCQlzZXFubyA9IG9iai0+bGFzdF9yZWFkX3NlcW5vOwotCQlyaW5nID0gb2JqLT5yaW5n OwotCX0KKwlpZiAoIW9iai0+YWN0aXZlIHx8ICFvYmotPmxhc3RfcmVhZF9yZXEpCisJCWdvdG8g b3V0OwogCi0JaWYgKHNlcW5vID09IDApCi0JCSBnb3RvIG91dDsKKwlzZXFubyA9IGk5MTVfZ2Vt X3JlcXVlc3RfZ2V0X3NlcW5vKG9iai0+bGFzdF9yZWFkX3JlcSk7CisJV0FSTl9PTihzZXFubyA9 PSAwKTsKKwlyaW5nID0gb2JqLT5yaW5nOwogCiAJLyogRG8gdGhpcyBhZnRlciBPTFIgY2hlY2sg dG8gbWFrZSBzdXJlIHdlIG1ha2UgZm9yd2FyZCBwcm9ncmVzcyBwb2xsaW5nCiAJICogb24gdGhp cyBJT0NUTCB3aXRoIGEgdGltZW91dCA8PTAgKGxpa2UgYnVzeSBpb2N0bCkKQEAgLTI5NzQsNyAr Mjk4Myw3IEBAIGk5MTVfZ2VtX29iamVjdF9zeW5jKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmosCiAKIAlpZHggPSBpbnRlbF9yaW5nX3N5bmNfaW5kZXgoZnJvbSwgdG8pOwogCi0Jc2Vx bm8gPSBvYmotPmxhc3RfcmVhZF9zZXFubzsKKwlzZXFubyA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0 X3NlcW5vKG9iai0+bGFzdF9yZWFkX3JlcSk7CiAJLyogT3B0aW1pemF0aW9uOiBBdm9pZCBzZW1h cGhvcmUgc3luYyB3aGVuIHdlIGFyZSBzdXJlIHdlIGFscmVhZHkKIAkgKiB3YWl0ZWQgZm9yIGFu IG9iamVjdCB3aXRoIGhpZ2hlciBzZXFubyAqLwogCWlmIChzZXFubyA8PSBmcm9tLT5zZW1hcGhv cmUuc3luY19zZXFub1tpZHhdKQpAQCAtMjk4NywxMSArMjk5NiwxMiBAQCBpOTE1X2dlbV9vYmpl Y3Rfc3luYyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCXRyYWNlX2k5MTVfZ2Vt X3Jpbmdfc3luY190byhmcm9tLCB0bywgc2Vxbm8pOwogCXJldCA9IHRvLT5zZW1hcGhvcmUuc3lu Y190byh0bywgZnJvbSwgc2Vxbm8pOwogCWlmICghcmV0KQotCQkvKiBXZSB1c2UgbGFzdF9yZWFk X3NlcW5vIGJlY2F1c2Ugc3luY190bygpCisJCS8qIFdlIHVzZSBsYXN0X3JlYWRfcmVxIGJlY2F1 c2Ugc3luY190bygpCiAJCSAqIG1pZ2h0IGhhdmUganVzdCBjYXVzZWQgc2Vxbm8gd3JhcCB1bmRl cgogCQkgKiB0aGUgcmFkYXIuCiAJCSAqLwotCQlmcm9tLT5zZW1hcGhvcmUuc3luY19zZXFub1tp ZHhdID0gb2JqLT5sYXN0X3JlYWRfc2Vxbm87CisJCWZyb20tPnNlbWFwaG9yZS5zeW5jX3NlcW5v W2lkeF0gPQorCQkJCWk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5vKG9iai0+bGFzdF9yZWFkX3Jl cSk7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAtMzMwNSwxMiArMzMxNSwxMyBAQCBzdGF0aWMgdm9p ZCBpOTE1X2dlbV9vYmplY3RfdXBkYXRlX2ZlbmNlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0 ICpvYmosCiBzdGF0aWMgaW50CiBpOTE1X2dlbV9vYmplY3Rfd2FpdF9mZW5jZShzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewotCWlmIChvYmotPmxhc3RfZmVuY2VkX3NlcW5vKSB7 Ci0JCWludCByZXQgPSBpOTE1X3dhaXRfc2Vxbm8ob2JqLT5yaW5nLCBvYmotPmxhc3RfZmVuY2Vk X3NlcW5vKTsKKwlpZiAob2JqLT5sYXN0X2ZlbmNlZF9yZXEpIHsKKwkJaW50IHJldCA9IGk5MTVf d2FpdF9zZXFubyhvYmotPnJpbmcsCisJCQkgICBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhv YmotPmxhc3RfZmVuY2VkX3JlcSkpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIAotCQlv YmotPmxhc3RfZmVuY2VkX3NlcW5vID0gMDsKKwkJaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24oJm9i ai0+bGFzdF9mZW5jZWRfcmVxLCBOVUxMKTsKIAl9CiAKIAlyZXR1cm4gMDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCBlMWVkODVhLi4wOTRkYjE4IDEw 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 X2d0dC5oCmluZGV4IGQwNTYyZDAuLjgxZGU3Y2MgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2d0dC5oCkBAIC0xODIsNyArMTgyLDcgQEAgc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSB7CiAJ ICogTGlzdCBvZiBvYmplY3RzIGN1cnJlbnRseSBpbnZvbHZlZCBpbiByZW5kZXJpbmcuCiAJICoK IAkgKiBJbmNsdWRlcyBidWZmZXJzIGhhdmluZyB0aGUgY29udGVudHMgb2YgdGhlaXIgR1BVIGNh Y2hlcwotCSAqIGZsdXNoZWQsIG5vdCBuZWNlc3NhcmlseSBwcmltaXRpdmVzLiAgbGFzdF9yZW5k ZXJpbmdfc2Vxbm8KKwkgKiBmbHVzaGVkLCBub3QgbmVjZXNzYXJpbHkgcHJpbWl0aXZlcy4gbGFz dF9yZWFkX3JlcQogCSAqIHJlcHJlc2VudHMgd2hlbiB0aGUgcmVuZGVyaW5nIGludm9sdmVkIHdp bGwgYmUgY29tcGxldGVkLgogCSAqCiAJICogQSByZWZlcmVuY2UgaXMgaGVsZCBvbiB0aGUgYnVm ZmVyIHdoaWxlIG9uIHRoaXMgbGlzdC4KQEAgLTE5Myw3ICsxOTMsNyBAQCBzdHJ1Y3QgaTkxNV9h ZGRyZXNzX3NwYWNlIHsKIAkgKiBMUlUgbGlzdCBvZiBvYmplY3RzIHdoaWNoIGFyZSBub3QgaW4g dGhlIHJpbmdidWZmZXIgYW5kCiAJICogYXJlIHJlYWR5IHRvIHVuYmluZCwgYnV0IGFyZSBzdGls bCBpbiB0aGUgR1RULgogCSAqCi0JICogbGFzdF9yZW5kZXJpbmdfc2Vxbm8gaXMgMCB3aGlsZSBh biBvYmplY3QgaXMgaW4gdGhpcyBsaXN0LgorCSAqIGxhc3RfcmVhZF9yZXEgaXMgTlVMTCB3aGls ZSBhbiBvYmplY3QgaXMgaW4gdGhpcyBsaXN0LgogCSAqCiAJICogQSByZWZlcmVuY2UgaXMgbm90 IGhlbGQgb24gdGhlIGJ1ZmZlciB3aGlsZSBvbiB0aGlzIGxpc3QsCiAJICogYXMgbWVyZWx5IGJl aW5nIEdUVC1ib3VuZCBzaG91bGRuJ3QgcHJldmVudCBpdHMgYmVpbmcKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fdGlsaW5nLmMKaW5kZXggY2Q3ZjQ3My4uMGEwYTU2ZiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fdGlsaW5nLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fdGlsaW5nLmMKQEAgLTM4MSw3ICszODEsNyBAQCBpOTE1X2dlbV9z ZXRfdGlsaW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAKIAkJaWYgKHJl dCA9PSAwKSB7CiAJCQlvYmotPmZlbmNlX2RpcnR5ID0KLQkJCQlvYmotPmxhc3RfZmVuY2VkX3Nl cW5vIHx8CisJCQkJb2JqLT5sYXN0X2ZlbmNlZF9yZXEgfHwKIAkJCQlvYmotPmZlbmNlX3JlZyAh PSBJOTE1X0ZFTkNFX1JFR19OT05FOwogCiAJCQlvYmotPnRpbGluZ19tb2RlID0gYXJncy0+dGls aW5nX21vZGU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJv ci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ncHVfZXJyb3IuYwppbmRleCA4OWEyZjNk Li45OTQzM2Q5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dwdV9lcnJv ci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3B1X2Vycm9yLmMKQEAgLTY2OCw4 ICs2NjgsOCBAQCBzdGF0aWMgdm9pZCBjYXB0dXJlX2JvKHN0cnVjdCBkcm1faTkxNV9lcnJvcl9i dWZmZXIgKmVyciwKIAogCWVyci0+c2l6ZSA9IG9iai0+YmFzZS5zaXplOwogCWVyci0+bmFtZSA9 IG9iai0+YmFzZS5uYW1lOwotCWVyci0+cnNlcW5vID0gb2JqLT5sYXN0X3JlYWRfc2Vxbm87Ci0J ZXJyLT53c2Vxbm8gPSBvYmotPmxhc3Rfd3JpdGVfc2Vxbm87CisJZXJyLT5yc2Vxbm8gPSBpOTE1 X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3RfcmVhZF9yZXEpOworCWVyci0+d3NlcW5v ID0gaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8ob2JqLT5sYXN0X3dyaXRlX3JlcSk7CiAJZXJy LT5ndHRfb2Zmc2V0ID0gdm1hLT5ub2RlLnN0YXJ0OwogCWVyci0+cmVhZF9kb21haW5zID0gb2Jq LT5iYXNlLnJlYWRfZG9tYWluczsKIAllcnItPndyaXRlX2RvbWFpbiA9IG9iai0+YmFzZS53cml0 ZV9kb21haW47CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggNDcwNjg1Ni4u NjBiNjYyYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtOTQ1MSw3ICs5 NDUxLDggQEAgc3RhdGljIGludCBpbnRlbF9xdWV1ZV9tbWlvX2ZsaXAoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwKIHsKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2Ny dGMoY3J0Yyk7CiAKLQlpbnRlbF9jcnRjLT5tbWlvX2ZsaXAuc2Vxbm8gPSBvYmotPmxhc3Rfd3Jp dGVfc2Vxbm87CisJaW50ZWxfY3J0Yy0+bW1pb19mbGlwLnNlcW5vID0KKwkJCSAgICAgaTkxNV9n ZW1fcmVxdWVzdF9nZXRfc2Vxbm8ob2JqLT5sYXN0X3dyaXRlX3JlcSk7CiAJaW50ZWxfY3J0Yy0+ bW1pb19mbGlwLnJpbmcgPSBvYmotPnJpbmc7CiAKIAlzY2hlZHVsZV93b3JrKCZpbnRlbF9jcnRj LT5tbWlvX2ZsaXAud29yayk7CkBAIC05NjUxLDcgKzk2NTIsOCBAQCBzdGF0aWMgaW50IGludGVs X2NydGNfcGFnZV9mbGlwKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJaWYgKHJldCkKIAkJCWdv dG8gY2xlYW51cF91bnBpbjsKIAotCQl3b3JrLT5mbGlwX3F1ZXVlZF9zZXFubyA9IG9iai0+bGFz dF93cml0ZV9zZXFubzsKKwkJd29yay0+ZmxpcF9xdWV1ZWRfc2Vxbm8gPQorCQkJICAgICBpOTE1 X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhvYmotPmxhc3Rfd3JpdGVfcmVxKTsKIAkJd29yay0+Zmxp cF9xdWV1ZWRfcmluZyA9IG9iai0+cmluZzsKIAl9IGVsc2UgewogCQlyZXQgPSBkZXZfcHJpdi0+ ZGlzcGxheS5xdWV1ZV9mbGlwKGRldiwgY3J0YywgZmIsIG9iaiwgcmluZywKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAppbmRleCBlZWNkNzcwLi44MTQwZWE0IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCkBAIC0yNTAsNyArMjUwLDcgQEAgc3Ry dWN0ICBpbnRlbF9lbmdpbmVfY3MgewogCSAqIHJpbmdidWZmZXIuCiAJICoKIAkgKiBJbmNsdWRl cyBidWZmZXJzIGhhdmluZyB0aGUgY29udGVudHMgb2YgdGhlaXIgR1BVIGNhY2hlcwotCSAqIGZs dXNoZWQsIG5vdCBuZWNlc3NhcmlseSBwcmltaXRpdmVzLiAgbGFzdF9yZW5kZXJpbmdfc2Vxbm8K KwkgKiBmbHVzaGVkLCBub3QgbmVjZXNzYXJpbHkgcHJpbWl0aXZlcy4gIGxhc3RfcmVhZF9yZXEK IAkgKiByZXByZXNlbnRzIHdoZW4gdGhlIHJlbmRlcmluZyBpbnZvbHZlZCB3aWxsIGJlIGNvbXBs ZXRlZC4KIAkgKgogCSAqIEEgcmVmZXJlbmNlIGlzIGhlbGQgb24gdGhlIGJ1ZmZlciB3aGlsZSBv biB0aGlzIGxpc3QuCi0tIAoxLjcuOS41CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=