From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 32/46] drm/i915: Pull VM lists under the VM mutex. Date: Mon, 7 Jan 2019 11:54:55 +0000 Message-ID: <20190107115509.12523-32-chris@chris-wilson.co.uk> References: <20190107115509.12523-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9E1D16EB4C for ; Mon, 7 Jan 2019 11:55:47 +0000 (UTC) In-Reply-To: <20190107115509.12523-1-chris@chris-wilson.co.uk> 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 QSBzdGFydGluZyBwb2ludCB0byBjb3VudGVyIHRoZSBwZXJ2YXNpdmUgc3RydWN0X211dGV4LiBG b3IgdGhlIGdvYWwgb2YKYXZvaWRpbmcgKG9yIGF0IGxlYXN0IGJsb2NraW5nIHVuZGVyIHRoZW0h KSBnbG9iYWwgbG9ja3MgZHVyaW5nIHVzZXIKcmVxdWVzdCBzdWJtaXNzaW9uLCBhIHNpbXBsZSBi dXQgaW1wb3J0YW50IHN0ZXAgaXMgYmVpbmcgYWJsZSB0byBtYW5hZ2UKZWFjaCBjbGllbnRzIEdU VCBzZXBhcmF0ZWx5LiBGb3Igd2hpY2gsIHdlIHdhbnQgdG8gcmVwbGFjZSB1c2luZyB0aGUKc3Ry dWN0X211dGV4IGFzIHRoZSBndWFyZCBmb3IgYWxsIHRoaW5ncyBHVFQvVk0gYW5kIHN3aXRjaCBp bnN0ZWFkIHRvIGEKc3BlY2lmaWMgbXV0ZXggaW5zaWRlIGk5MTVfYWRkcmVzc19zcGFjZS4KClNp Z25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgotLS0K IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICAgICAgIHwgMTQgKysr KysrKystLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V2aWN0LmMgICAgICAg ICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jICAgICAgICAg ICAgIHwgMTUgKysrKysrKysrKysrKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9z aHJpbmtlci5jICAgICAgICB8ICA0ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X3N0b2xlbi5jICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1h LmMgICAgICAgICAgICAgICAgIHwgMTEgKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ldmljdC5jIHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9zZWxmdGVzdHMvaTkxNV9nZW1fZ3R0LmMgICB8ICAzICsrKwogOCBmaWxlcyBjaGFuZ2VkLCA0 NiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmlu ZGV4IDZlZDQ0YWVlZTU4My4uNTE0MWE4YmE0ODM2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMK QEAgLTI0NiwxOCArMjQ2LDE5IEBAIGludAogaTkxNV9nZW1fZ2V0X2FwZXJ0dXJlX2lvY3RsKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQkgICAgc3RydWN0IGRybV9maWxl ICpmaWxlKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUo ZGV2KTsKLQlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gJmRldl9wcml2LT5nZ3R0OworCXN0cnVj dCBpOTE1X2dndHQgKmdndHQgPSAmdG9faTkxNShkZXYpLT5nZ3R0OwogCXN0cnVjdCBkcm1faTkx NV9nZW1fZ2V0X2FwZXJ0dXJlICphcmdzID0gZGF0YTsKIAlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsK IAl1NjQgcGlubmVkOwogCisJbXV0ZXhfbG9jaygmZ2d0dC0+dm0ubXV0ZXgpOworCiAJcGlubmVk ID0gZ2d0dC0+dm0ucmVzZXJ2ZWQ7Ci0JbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwog CWxpc3RfZm9yX2VhY2hfZW50cnkodm1hLCAmZ2d0dC0+dm0uYm91bmRfbGlzdCwgdm1fbGluaykK IAkJaWYgKGk5MTVfdm1hX2lzX3Bpbm5lZCh2bWEpKQogCQkJcGlubmVkICs9IHZtYS0+bm9kZS5z aXplOwotCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCisJbXV0ZXhfdW5sb2Nr KCZnZ3R0LT52bS5tdXRleCk7CiAKIAlhcmdzLT5hcGVyX3NpemUgPSBnZ3R0LT52bS50b3RhbDsK IAlhcmdzLT5hcGVyX2F2YWlsYWJsZV9zaXplID0gYXJncy0+YXBlcl9zaXplIC0gcGlubmVkOwpA QCAtMTUzMCwyMCArMTUzMSwyMSBAQCBpOTE1X2dlbV9wd3JpdGVfaW9jdGwoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAogc3RhdGljIHZvaWQgaTkxNV9nZW1fb2JqZWN0X2J1 bXBfaW5hY3RpdmVfZ2d0dChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewotCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1OworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpp OTE1ID0gdG9faTkxNShvYmotPmJhc2UuZGV2KTsKIAlzdHJ1Y3QgbGlzdF9oZWFkICpsaXN0Owog CXN0cnVjdCBpOTE1X3ZtYSAqdm1hOwogCiAJR0VNX0JVR19PTighaTkxNV9nZW1fb2JqZWN0X2hh c19waW5uZWRfcGFnZXMob2JqKSk7CiAKKwltdXRleF9sb2NrKCZpOTE1LT5nZ3R0LnZtLm11dGV4 KTsKIAlmb3JfZWFjaF9nZ3R0X3ZtYSh2bWEsIG9iaikgewogCQlpZiAoIWRybV9tbV9ub2RlX2Fs bG9jYXRlZCgmdm1hLT5ub2RlKSkKIAkJCWNvbnRpbnVlOwogCiAJCWxpc3RfbW92ZV90YWlsKCZ2 bWEtPnZtX2xpbmssICZ2bWEtPnZtLT5ib3VuZF9saXN0KTsKIAl9CisJbXV0ZXhfdW5sb2NrKCZp OTE1LT5nZ3R0LnZtLm11dGV4KTsKIAotCWk5MTUgPSB0b19pOTE1KG9iai0+YmFzZS5kZXYpOwog CXNwaW5fbG9jaygmaTkxNS0+bW0ub2JqX2xvY2spOwogCWxpc3QgPSBvYmotPmJpbmRfY291bnQg PyAmaTkxNS0+bW0uYm91bmRfbGlzdCA6ICZpOTE1LT5tbS51bmJvdW5kX2xpc3Q7CiAJbGlzdF9t b3ZlX3RhaWwoJm9iai0+bW0ubGluaywgbGlzdCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ldmljdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f ZXZpY3QuYwppbmRleCBhNzZmNjVmZTg2YmUuLjRhMGM2ODMwNjU5ZCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXZpY3QuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9ldmljdC5jCkBAIC00MzMsNiArNDMzLDcgQEAgaW50IGk5MTVfZ2VtX2V2 aWN0X3ZtKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogCX0KIAogCUlOSVRfTElTVF9I RUFEKCZldmljdGlvbl9saXN0KTsKKwltdXRleF9sb2NrKCZ2bS0+bXV0ZXgpOwogCWxpc3RfZm9y X2VhY2hfZW50cnkodm1hLCAmdm0tPmJvdW5kX2xpc3QsIHZtX2xpbmspIHsKIAkJaWYgKGk5MTVf dm1hX2lzX3Bpbm5lZCh2bWEpKQogCQkJY29udGludWU7CkBAIC00NDAsNiArNDQxLDcgQEAgaW50 IGk5MTVfZ2VtX2V2aWN0X3ZtKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogCQlfX2k5 MTVfdm1hX3Bpbih2bWEpOwogCQlsaXN0X2FkZCgmdm1hLT5ldmljdF9saW5rLCAmZXZpY3Rpb25f bGlzdCk7CiAJfQorCW11dGV4X3VubG9jaygmdm0tPm11dGV4KTsKIAogCXJldCA9IDA7CiAJbGlz dF9mb3JfZWFjaF9lbnRyeV9zYWZlKHZtYSwgbmV4dCwgJmV2aWN0aW9uX2xpc3QsIGV2aWN0X2xp bmspIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKaW5kZXggYWQ0ZWY4OTgwYjk3Li5j MzM2M2E5YjU4NmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0 dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC0xOTMyLDcg KzE5MzIsMTAgQEAgc3RhdGljIHN0cnVjdCBpOTE1X3ZtYSAqcGRfdm1hX2NyZWF0ZShzdHJ1Y3Qg Z2VuNl9od19wcGd0dCAqcHBndHQsIGludCBzaXplKQogCXZtYS0+Z2d0dF92aWV3LnR5cGUgPSBJ OTE1X0dHVFRfVklFV19ST1RBVEVEOyAvKiBwcmV2ZW50IGZlbmNpbmcgKi8KIAogCUlOSVRfTElT VF9IRUFEKCZ2bWEtPm9ial9saW5rKTsKKworCW11dGV4X2xvY2soJnZtYS0+dm0tPm11dGV4KTsK IAlsaXN0X2FkZCgmdm1hLT52bV9saW5rLCAmdm1hLT52bS0+dW5ib3VuZF9saXN0KTsKKwltdXRl eF91bmxvY2soJnZtYS0+dm0tPm11dGV4KTsKIAogCXJldHVybiB2bWE7CiB9CkBAIC0zNTA0LDkg KzM1MDcsMTAgQEAgdm9pZCBpOTE1X2dlbV9yZXN0b3JlX2d0dF9tYXBwaW5ncyhzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAlpOTE1X2NoZWNrX2FuZF9jbGVhcl9mYXVsdHMo ZGV2X3ByaXYpOwogCisJbXV0ZXhfbG9jaygmZ2d0dC0+dm0ubXV0ZXgpOworCiAJLyogRmlyc3Qg ZmlsbCBvdXIgcG9ydGlvbiBvZiB0aGUgR1RUIHdpdGggc2NyYXRjaCBwYWdlcyAqLwogCWdndHQt PnZtLmNsZWFyX3JhbmdlKCZnZ3R0LT52bSwgMCwgZ2d0dC0+dm0udG90YWwpOwotCiAJZ2d0dC0+ dm0uY2xvc2VkID0gdHJ1ZTsgLyogc2tpcCByZXdyaXRpbmcgUFRFIG9uIFZNQSB1bmJpbmQgKi8K IAogCS8qIGNsZmx1c2ggb2JqZWN0cyBib3VuZCBpbnRvIHRoZSBHR1RUIGFuZCByZWJpbmQgdGhl bS4gKi8KQEAgLTM1MTYsMTkgKzM1MjAsMjYgQEAgdm9pZCBpOTE1X2dlbV9yZXN0b3JlX2d0dF9t YXBwaW5ncyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJCWlmICghKHZtYS0+ ZmxhZ3MgJiBJOTE1X1ZNQV9HTE9CQUxfQklORCkpCiAJCQljb250aW51ZTsKIAorCQltdXRleF91 bmxvY2soJmdndHQtPnZtLm11dGV4KTsKKwogCQlpZiAoIWk5MTVfdm1hX3VuYmluZCh2bWEpKQot CQkJY29udGludWU7CisJCQlnb3RvIGxvY2s7CiAKIAkJV0FSTl9PTihpOTE1X3ZtYV9iaW5kKHZt YSwKIAkJCQkgICAgICBvYmogPyBvYmotPmNhY2hlX2xldmVsIDogMCwKIAkJCQkgICAgICBQSU5f VVBEQVRFKSk7CiAJCWlmIChvYmopCiAJCQlXQVJOX09OKGk5MTVfZ2VtX29iamVjdF9zZXRfdG9f Z3R0X2RvbWFpbihvYmosIGZhbHNlKSk7CisKK2xvY2s6CisJCW11dGV4X2xvY2soJmdndHQtPnZt Lm11dGV4KTsKIAl9CiAKIAlnZ3R0LT52bS5jbG9zZWQgPSBmYWxzZTsKIAlpOTE1X2dndHRfaW52 YWxpZGF0ZShkZXZfcHJpdik7CiAKKwltdXRleF91bmxvY2soJmdndHQtPnZtLm11dGV4KTsKKwog CWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDgpIHsKIAkJc3RydWN0IGludGVsX3BwYXQgKnBw YXQgPSAmZGV2X3ByaXYtPnBwYXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX3Nocmlua2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJp bmtlci5jCmluZGV4IDE1MzE1MzRlZWEwMi4uNzg2MTIxNjA5MDE2IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJpbmtlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX3Nocmlua2VyLmMKQEAgLTQ4OSw2ICs0ODksNyBAQCBpOTE1X2dlbV9z aHJpbmtlcl92bWFwKHN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIsIHVuc2lnbmVkIGxvbmcgZXZl bnQsIHZvaWQgKnB0cgogCQkJCQkgICAgICAgSTkxNV9TSFJJTktfVk1BUFMpOwogCiAJLyogV2Ug YWxzbyB3YW50IHRvIGNsZWFyIGFueSBjYWNoZWQgaW9tYXBzIGFzIHRoZXkgd3JhcCB2bWFwICov CisJbXV0ZXhfbG9jaygmaTkxNS0+Z2d0dC52bS5tdXRleCk7CiAJbGlzdF9mb3JfZWFjaF9lbnRy eV9zYWZlKHZtYSwgbmV4dCwKIAkJCQkgJmk5MTUtPmdndHQudm0uYm91bmRfbGlzdCwgdm1fbGlu aykgewogCQl1bnNpZ25lZCBsb25nIGNvdW50ID0gdm1hLT5ub2RlLnNpemUgPj4gUEFHRV9TSElG VDsKQEAgLTQ5Niw5ICs0OTcsMTIgQEAgaTkxNV9nZW1fc2hyaW5rZXJfdm1hcChzdHJ1Y3Qgbm90 aWZpZXJfYmxvY2sgKm5iLCB1bnNpZ25lZCBsb25nIGV2ZW50LCB2b2lkICpwdHIKIAkJaWYgKCF2 bWEtPmlvbWFwIHx8IGk5MTVfdm1hX2lzX2FjdGl2ZSh2bWEpKQogCQkJY29udGludWU7CiAKKwkJ bXV0ZXhfdW5sb2NrKCZpOTE1LT5nZ3R0LnZtLm11dGV4KTsKIAkJaWYgKGk5MTVfdm1hX3VuYmlu ZCh2bWEpID09IDApCiAJCQlmcmVlZF9wYWdlcyArPSBjb3VudDsKKwkJbXV0ZXhfbG9jaygmaTkx NS0+Z2d0dC52bS5tdXRleCk7CiAJfQorCW11dGV4X3VubG9jaygmaTkxNS0+Z2d0dC52bS5tdXRl eCk7CiAKIG91dDoKIAlzaHJpbmtlcl91bmxvY2soaTkxNSwgdW5sb2NrKTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fc3RvbGVuLmMKaW5kZXggNzViOTdkNzFmMDcyLi4yMWRlM2E1ZTk5MTAg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC03MDMsNyArNzAzLDkg QEAgaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9zdG9sZW5fZm9yX3ByZWFsbG9jYXRlZChzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYKIAl2bWEtPmZsYWdzIHw9IEk5MTVfVk1BX0dMT0JB TF9CSU5EOwogCV9faTkxNV92bWFfc2V0X21hcF9hbmRfZmVuY2VhYmxlKHZtYSk7CiAKKwltdXRl eF9sb2NrKCZnZ3R0LT52bS5tdXRleCk7CiAJbGlzdF9tb3ZlX3RhaWwoJnZtYS0+dm1fbGluaywg JmdndHQtPnZtLmJvdW5kX2xpc3QpOworCW11dGV4X3VubG9jaygmZ2d0dC0+dm0ubXV0ZXgpOwog CiAJc3Bpbl9sb2NrKCZkZXZfcHJpdi0+bW0ub2JqX2xvY2spOwogCWxpc3RfbW92ZV90YWlsKCZv YmotPm1tLmxpbmssICZkZXZfcHJpdi0+bW0uYm91bmRfbGlzdCk7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92 bWEuYwppbmRleCA3ZGUyOGJhZmZiOGYuLmRjYmQwZDM0NWM3MiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV92bWEuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3ZtYS5jCkBAIC0yMTMsNyArMjEzLDEwIEBAIHZtYV9jcmVhdGUoc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKm9iaiwKIAl9CiAJcmJfbGlua19ub2RlKCZ2bWEtPm9ial9ub2RlLCByYiwgcCk7 CiAJcmJfaW5zZXJ0X2NvbG9yKCZ2bWEtPm9ial9ub2RlLCAmb2JqLT52bWFfdHJlZSk7CisKKwlt dXRleF9sb2NrKCZ2bS0+bXV0ZXgpOwogCWxpc3RfYWRkKCZ2bWEtPnZtX2xpbmssICZ2bS0+dW5i b3VuZF9saXN0KTsKKwltdXRleF91bmxvY2soJnZtLT5tdXRleCk7CiAKIAlyZXR1cm4gdm1hOwog CkBAIC02NTYsNyArNjU5LDkgQEAgaTkxNV92bWFfaW5zZXJ0KHN0cnVjdCBpOTE1X3ZtYSAqdm1h LCB1NjQgc2l6ZSwgdTY0IGFsaWdubWVudCwgdTY0IGZsYWdzKQogCUdFTV9CVUdfT04oIWRybV9t bV9ub2RlX2FsbG9jYXRlZCgmdm1hLT5ub2RlKSk7CiAJR0VNX0JVR19PTighaTkxNV9nZW1fdmFs aWRfZ3R0X3NwYWNlKHZtYSwgY2FjaGVfbGV2ZWwpKTsKIAorCW11dGV4X2xvY2soJnZtYS0+dm0t Pm11dGV4KTsKIAlsaXN0X21vdmVfdGFpbCgmdm1hLT52bV9saW5rLCAmdm1hLT52bS0+Ym91bmRf bGlzdCk7CisJbXV0ZXhfdW5sb2NrKCZ2bWEtPnZtLT5tdXRleCk7CiAKIAlpZiAodm1hLT5vYmop IHsKIAkJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9IHZtYS0+b2JqOwpAQCAtNjg5 LDggKzY5NCwxMCBAQCBpOTE1X3ZtYV9yZW1vdmUoc3RydWN0IGk5MTVfdm1hICp2bWEpCiAKIAl2 bWEtPm9wcy0+Y2xlYXJfcGFnZXModm1hKTsKIAorCW11dGV4X2xvY2soJnZtYS0+dm0tPm11dGV4 KTsKIAlkcm1fbW1fcmVtb3ZlX25vZGUoJnZtYS0+bm9kZSk7CiAJbGlzdF9tb3ZlX3RhaWwoJnZt YS0+dm1fbGluaywgJnZtYS0+dm0tPnVuYm91bmRfbGlzdCk7CisJbXV0ZXhfdW5sb2NrKCZ2bWEt PnZtLT5tdXRleCk7CiAKIAkvKgogCSAqIFNpbmNlIHRoZSB1bmJvdW5kIGxpc3QgaXMgZ2xvYmFs LCBvbmx5IG1vdmUgdG8gdGhhdCBsaXN0IGlmCkBAIC04MDIsNyArODA5LDExIEBAIHN0YXRpYyB2 b2lkIF9faTkxNV92bWFfZGVzdHJveShzdHJ1Y3QgaTkxNV92bWEgKnZtYSkKIAlHRU1fQlVHX09O KGk5MTVfZ2VtX2FjdGl2ZV9pc3NldCgmdm1hLT5sYXN0X2ZlbmNlKSk7CiAKIAlsaXN0X2RlbCgm dm1hLT5vYmpfbGluayk7CisKKwltdXRleF9sb2NrKCZ2bWEtPnZtLT5tdXRleCk7CiAJbGlzdF9k ZWwoJnZtYS0+dm1fbGluayk7CisJbXV0ZXhfdW5sb2NrKCZ2bWEtPnZtLT5tdXRleCk7CisKIAlp ZiAodm1hLT5vYmopCiAJCXJiX2VyYXNlKCZ2bWEtPm9ial9ub2RlLCAmdm1hLT5vYmotPnZtYV90 cmVlKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVf Z2VtX2V2aWN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fZXZp Y3QuYwppbmRleCA5ZDBmZThhYWMyMTkuLmVhZWZiYTc0NzBmNyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVfZ2VtX2V2aWN0LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVfZ2VtX2V2aWN0LmMKQEAgLTY3LDEwICs2NywxMyBA QCBzdGF0aWMgaW50IHBvcHVsYXRlX2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp CiAKIHN0YXRpYyB2b2lkIHVucGluX2dndHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp CiB7CisJc3RydWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZpOTE1LT5nZ3R0OwogCXN0cnVjdCBpOTE1 X3ZtYSAqdm1hOwogCisJbXV0ZXhfbG9jaygmZ2d0dC0+dm0ubXV0ZXgpOwogCWxpc3RfZm9yX2Vh Y2hfZW50cnkodm1hLCAmaTkxNS0+Z2d0dC52bS5ib3VuZF9saXN0LCB2bV9saW5rKQogCQlpOTE1 X3ZtYV91bnBpbih2bWEpOworCW11dGV4X3VubG9jaygmZ2d0dC0+dm0ubXV0ZXgpOwogfQogCiBz dGF0aWMgdm9pZCBjbGVhbnVwX29iamVjdHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fZ3R0 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fZ3R0LmMKaW5kZXgg ODUyYjA2Y2I1MGEwLi4zNWViNDBlNWRlOTEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9z ZWxmdGVzdHMvaTkxNV9nZW1fZ3R0LmMKQEAgLTEyMzcsNyArMTIzNywxMCBAQCBzdGF0aWMgdm9p ZCB0cmFja192bWFfYmluZChzdHJ1Y3QgaTkxNV92bWEgKnZtYSkKIAlfX2k5MTVfZ2VtX29iamVj dF9waW5fcGFnZXMob2JqKTsKIAogCXZtYS0+cGFnZXMgPSBvYmotPm1tLnBhZ2VzOworCisJbXV0 ZXhfbG9jaygmdm1hLT52bS0+bXV0ZXgpOwogCWxpc3RfbW92ZV90YWlsKCZ2bWEtPnZtX2xpbmss ICZ2bWEtPnZtLT5ib3VuZF9saXN0KTsKKwltdXRleF91bmxvY2soJnZtYS0+dm0tPm11dGV4KTsK IH0KIAogc3RhdGljIGludCBleGVyY2lzZV9tb2NrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpp OTE1LAotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngK