From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Lai Subject: [PATCH v2 Altp2m cleanup v3 2/3] Move altp2m specific functions to altp2m files. Date: Fri, 19 Aug 2016 10:22:12 -0700 Message-ID: <1471627333-4534-3-git-send-email-paul.c.lai@intel.com> References: <1471627333-4534-1-git-send-email-paul.c.lai@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1471627333-4534-1-git-send-email-paul.c.lai@intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xensource.com Cc: ravi.sahita@intel.com, george.dunlap@citrix.com, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org TW92ZSBhbHRwMm0gc3BlY2lmaWMgZnVuY3Rpb25zIHRvIGFsdHAybSBmaWxlcy4gIFRoaXMgbWFr ZXMgdGhlIGNvZGUKYSBsaXR0bGUgZWFzaWVyIHRvIHJlYWQuCgpBbHNvIG1vdmluZyBlcHQgY29k ZSB0byBlcHQgc3BlY2lmaWMgZmlsZXMgYXMgcmVxdWVzdGVkIGluOgogIGh0dHBzOi8vbGlzdHMu eGVucHJvamVjdC5vcmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2ZWwvMjAxNS0wNy9tc2cwNDMyMy5o dG1sCgpTaWduZWQtb2ZmLWJ5OiBQYXVsIExhaSA8cGF1bC5jLmxhaUBpbnRlbC5jb20+Ci0tLQog eGVuL2FyY2gveDg2L21tL2FsdHAybS5jICAgICAgICAgIHwgNDUgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCiB4ZW4vYXJjaC94ODYvbW0vaGFwL2hhcC5jICAgICAgICAg fCAzNSArKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHhlbi9hcmNoL3g4Ni9tbS9wMm0t ZXB0LmMgICAgICAgICB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVu L2FyY2gveDg2L21tL3AybS5jICAgICAgICAgICAgIHwgNDUgKysrLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiB4ZW4vaW5jbHVkZS9hc20teDg2L2FsdHAybS5oICAgICAgfCAg NCArKystCiB4ZW4vaW5jbHVkZS9hc20teDg2L2h2bS92bXgvdm14LmggfCAgMyArKysKIHhlbi9p bmNsdWRlL2FzbS14ODYvcDJtLmggICAgICAgICB8ICA5ICsrKy0tLS0tCiA3IGZpbGVzIGNoYW5n ZWQsIDEwMSBpbnNlcnRpb25zKCspLCA3OSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4v YXJjaC94ODYvbW0vYWx0cDJtLmMgYi94ZW4vYXJjaC94ODYvbW0vYWx0cDJtLmMKaW5kZXggOTMw YmRjMi4uY2M5YjBmYyAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L21tL2FsdHAybS5jCisrKyBi L3hlbi9hcmNoL3g4Ni9tbS9hbHRwMm0uYwpAQCAtMTcsNiArMTcsNyBAQAogCiAjaW5jbHVkZSA8 YXNtL2h2bS9zdXBwb3J0Lmg+CiAjaW5jbHVkZSA8YXNtL2h2bS9odm0uaD4KKyNpbmNsdWRlIDxh c20vZG9tYWluLmg+CiAjaW5jbHVkZSA8YXNtL3AybS5oPgogI2luY2x1ZGUgPGFzbS9hbHRwMm0u aD4KIApAQCAtNjUsNiArNjYsNTAgQEAgYWx0cDJtX3ZjcHVfZGVzdHJveShzdHJ1Y3QgdmNwdSAq dikKICAgICAgICAgdmNwdV91bnBhdXNlKHYpOwogfQogCitpbnQKK2h2bV9hbHRwMm1faW5pdCgg c3RydWN0IGRvbWFpbiAqZCkKK3sKKyAgICBpbnQgcmMgPSAwOworICAgIHVuc2lnbmVkIGludCBp ID0gMDsKKworICAgIC8qIEluaXQgYWx0ZXJuYXRlIHAybSBkYXRhLiAqLworICAgIGlmICggKGQt PmFyY2guYWx0cDJtX2VwdHAgPSBhbGxvY194ZW5oZWFwX3BhZ2UoKSkgPT0gTlVMTCApCisgICAg eworICAgICAgICByYyA9IC1FTk9NRU07CisgICAgICAgIGdvdG8gb3V0OworICAgIH0KKworICAg IGZvciAoIGkgPSAwOyBpIDwgTUFYX0VQVFA7IGkrKyApCisgICAgICAgIGQtPmFyY2guYWx0cDJt X2VwdHBbaV0gPSBtZm5feChJTlZBTElEX01GTik7CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IE1B WF9BTFRQMk07IGkrKyApCisgICAgeworICAgICAgICByYyA9IHAybV9hbGxvY190YWJsZShkLT5h cmNoLmFsdHAybV9wMm1baV0pOworICAgICAgICBpZiAoIHJjICE9IDAgKQorICAgICAgICAgICBn b3RvIG91dDsKKyAgICB9CisKKyAgICBkLT5hcmNoLmFsdHAybV9hY3RpdmUgPSAwOworIG91dDoK KyAgICByZXR1cm4gcmM7Cit9CisKK3ZvaWQKK2h2bV9hbHRwMm1fdGVhcmRvd24oIHN0cnVjdCBk b21haW4gKmQpCit7CisgICAgdW5zaWduZWQgaW50IGkgPSAwOworICAgIGQtPmFyY2guYWx0cDJt X2FjdGl2ZSA9IDA7CisKKyAgICBpZiAoIGQtPmFyY2guYWx0cDJtX2VwdHAgKQorICAgIHsKKyAg ICAgICAgZnJlZV94ZW5oZWFwX3BhZ2UoZC0+YXJjaC5hbHRwMm1fZXB0cCk7CisgICAgICAgIGQt PmFyY2guYWx0cDJtX2VwdHAgPSBOVUxMOworICAgIH0KKworICAgIGZvciAoIGkgPSAwOyBpIDwg TUFYX0FMVFAyTTsgaSsrICkKKyAgICAgICAgcDJtX3RlYXJkb3duKGQtPmFyY2guYWx0cDJtX3Ay bVtpXSk7Cit9CisKIC8qCiAgKiBMb2NhbCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1n aXQgYS94ZW4vYXJjaC94ODYvbW0vaGFwL2hhcC5jIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAu YwppbmRleCAzMjE4ZmEyLi42ZTFlOWE1IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvbW0vaGFw L2hhcC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMKQEAgLTM3LDYgKzM3LDcgQEAK ICNpbmNsdWRlIDxhc20vaGFwLmg+CiAjaW5jbHVkZSA8YXNtL3BhZ2luZy5oPgogI2luY2x1ZGUg PGFzbS9wMm0uaD4KKyNpbmNsdWRlIDxhc20vYWx0cDJtLmg+CiAjaW5jbHVkZSA8YXNtL2RvbWFp bi5oPgogI2luY2x1ZGUgPHhlbi9udW1hLmg+CiAjaW5jbHVkZSA8YXNtL2h2bS9uZXN0ZWRodm0u aD4KQEAgLTUwMSwyNCArNTAyLDkgQEAgaW50IGhhcF9lbmFibGUoc3RydWN0IGRvbWFpbiAqZCwg dTMyIG1vZGUpCiAKICAgICBpZiAoIGh2bV9hbHRwMm1fc3VwcG9ydGVkKCkgKQogICAgIHsKLSAg ICAgICAgLyogSW5pdCBhbHRlcm5hdGUgcDJtIGRhdGEgKi8KLSAgICAgICAgaWYgKCAoZC0+YXJj aC5hbHRwMm1fZXB0cCA9IGFsbG9jX3hlbmhlYXBfcGFnZSgpKSA9PSBOVUxMICkKLSAgICAgICAg ewotICAgICAgICAgICAgcnYgPSAtRU5PTUVNOwotICAgICAgICAgICAgZ290byBvdXQ7Ci0gICAg ICAgIH0KLQotICAgICAgICBmb3IgKCBpID0gMDsgaSA8IE1BWF9FUFRQOyBpKysgKQotICAgICAg ICAgICAgZC0+YXJjaC5hbHRwMm1fZXB0cFtpXSA9IG1mbl94KElOVkFMSURfTUZOKTsKLQotICAg ICAgICBmb3IgKCBpID0gMDsgaSA8IE1BWF9BTFRQMk07IGkrKyApCi0gICAgICAgIHsKLSAgICAg ICAgICAgIHJ2ID0gcDJtX2FsbG9jX3RhYmxlKGQtPmFyY2guYWx0cDJtX3AybVtpXSk7Ci0gICAg ICAgICAgICBpZiAoIHJ2ICE9IDAgKQotICAgICAgICAgICAgICAgZ290byBvdXQ7Ci0gICAgICAg IH0KLQotICAgICAgICBkLT5hcmNoLmFsdHAybV9hY3RpdmUgPSAwOworICAgICAgICBydiA9IGh2 bV9hbHRwMm1faW5pdChkKTsKKyAgICAgICAgaWYgKCBydiAhPSAwICkKKyAgICAgICAgICAgZ290 byBvdXQ7CiAgICAgfQogCiAgICAgLyogTm93IGxldCBvdGhlciB1c2VycyBzZWUgdGhlIG5ldyBt b2RlICovCkBAIC01MzQsMTggKzUyMCw3IEBAIHZvaWQgaGFwX2ZpbmFsX3RlYXJkb3duKHN0cnVj dCBkb21haW4gKmQpCiAgICAgdW5zaWduZWQgaW50IGk7CiAKICAgICBpZiAoIGh2bV9hbHRwMm1f c3VwcG9ydGVkKCkgKQotICAgIHsKLSAgICAgICAgZC0+YXJjaC5hbHRwMm1fYWN0aXZlID0gMDsK LQotICAgICAgICBpZiAoIGQtPmFyY2guYWx0cDJtX2VwdHAgKQotICAgICAgICB7Ci0gICAgICAg ICAgICBmcmVlX3hlbmhlYXBfcGFnZShkLT5hcmNoLmFsdHAybV9lcHRwKTsKLSAgICAgICAgICAg IGQtPmFyY2guYWx0cDJtX2VwdHAgPSBOVUxMOwotICAgICAgICB9Ci0KLSAgICAgICAgZm9yICgg aSA9IDA7IGkgPCBNQVhfQUxUUDJNOyBpKysgKQotICAgICAgICAgICAgcDJtX3RlYXJkb3duKGQt PmFyY2guYWx0cDJtX3AybVtpXSk7Ci0gICAgfQorICAgICAgICBodm1fYWx0cDJtX3RlYXJkb3du KGQpOwogCiAgICAgLyogRGVzdHJveSBuZXN0ZWRwMm0ncyBmaXJzdCAqLwogICAgIGZvciAoaSA9 IDA7IGkgPCBNQVhfTkVTVEVEUDJNOyBpKyspIHsKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9t bS9wMm0tZXB0LmMgYi94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jCmluZGV4IDEzY2FiMjQuLjgy NDdhMDIgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMKKysrIGIveGVuL2Fy Y2gveDg2L21tL3AybS1lcHQuYwpAQCAtMTMyOSw2ICsxMzI5LDQ1IEBAIHZvaWQgc2V0dXBfZXB0 X2R1bXAodm9pZCkKICAgICByZWdpc3Rlcl9rZXloYW5kbGVyKCdEJywgZXB0X2R1bXBfcDJtX3Rh YmxlLCAiZHVtcCBWVC14IEVQVCB0YWJsZXMiLCAwKTsKIH0KIAordm9pZCBwMm1faW5pdF9hbHRw Mm1fZXB0X2hlbHBlciggc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IGkpCit7CisgICAg c3RydWN0IHAybV9kb21haW4gKnAybSA9IGQtPmFyY2guYWx0cDJtX3AybVtpXTsKKyAgICBzdHJ1 Y3QgZXB0X2RhdGEgKmVwdDsKKworICAgIHAybS0+bWluX3JlbWFwcGVkX2dmbiA9IGdmbl94KElO VkFMSURfR0ZOKTsKKyAgICBwMm0tPm1heF9yZW1hcHBlZF9nZm4gPSAwOworICAgIGVwdCA9ICZw Mm0tPmVwdDsKKyAgICBlcHQtPmFzciA9IHBhZ2V0YWJsZV9nZXRfcGZuKHAybV9nZXRfcGFnZXRh YmxlKHAybSkpOworICAgIGQtPmFyY2guYWx0cDJtX2VwdHBbaV0gPSBlcHRfZ2V0X2VwdHAoZXB0 KTsKK30KKwordW5zaWduZWQgaW50IHAybV9maW5kX2FsdHAybV9ieV9lcHRwKHN0cnVjdCBkb21h aW4gKmQsIHVpbnQ2NF90IGVwdHApCit7CisgICAgc3RydWN0IHAybV9kb21haW4gKnAybTsKKyAg ICBzdHJ1Y3QgZXB0X2RhdGEgKmVwdDsKKyAgICB1bnNpZ25lZCBpbnQgaTsKKworICAgIGFsdHAy bV9saXN0X2xvY2soZCk7CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IE1BWF9BTFRQMk07IGkrKyAp CisgICAgeworICAgICAgICBpZiAoIGQtPmFyY2guYWx0cDJtX2VwdHBbaV0gPT0gbWZuX3goSU5W QUxJRF9NRk4pICkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIHAybSA9IGQtPmFy Y2guYWx0cDJtX3AybVtpXTsKKyAgICAgICAgZXB0ID0gJnAybS0+ZXB0OworCisgICAgICAgIGlm ICggZXB0cCA9PSBlcHRfZ2V0X2VwdHAoZXB0KSApCisgICAgICAgICAgICBnb3RvIG91dDsKKyAg ICB9CisKKyAgICBpID0gSU5WQUxJRF9BTFRQMk07CisKKyBvdXQ6CisgICAgYWx0cDJtX2xpc3Rf dW5sb2NrKGQpOworICAgIHJldHVybiBpOworfQorCiAvKgogICogTG9jYWwgdmFyaWFibGVzOgog ICogbW9kZTogQwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL3AybS5jIGIveGVuL2FyY2gv eDg2L21tL3AybS5jCmluZGV4IGZmMGNjZTguLjc2NzM2NjMgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNo L3g4Ni9tbS9wMm0uYworKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMKQEAgLTE5Niw4ICsxOTYs OCBAQCBzdGF0aWMgdm9pZCBwMm1fdGVhcmRvd25fYWx0cDJtKHN0cnVjdCBkb21haW4gKmQpCiAg ICAgICAgIGlmICggIWQtPmFyY2guYWx0cDJtX3AybVtpXSApCiAgICAgICAgICAgICBjb250aW51 ZTsKICAgICAgICAgcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2ldOwotICAgICAgICBkLT5hcmNo LmFsdHAybV9wMm1baV0gPSBOVUxMOwogICAgICAgICBwMm1fZnJlZV9vbmUocDJtKTsKKyAgICAg ICAgZC0+YXJjaC5hbHRwMm1fcDJtW2ldID0gTlVMTDsKICAgICB9CiB9CiAKQEAgLTIyNzgsMzMg KzIyNzgsNiBAQCBpbnQgdW5tYXBfbW1pb19yZWdpb25zKHN0cnVjdCBkb21haW4gKmQsCiAgICAg cmV0dXJuIGkgPT0gbnIgPyAwIDogaSA/OiByZXQ7CiB9CiAKLXVuc2lnbmVkIGludCBwMm1fZmlu ZF9hbHRwMm1fYnlfZXB0cChzdHJ1Y3QgZG9tYWluICpkLCB1aW50NjRfdCBlcHRwKQotewotICAg IHN0cnVjdCBwMm1fZG9tYWluICpwMm07Ci0gICAgc3RydWN0IGVwdF9kYXRhICplcHQ7Ci0gICAg dW5zaWduZWQgaW50IGk7Ci0KLSAgICBhbHRwMm1fbGlzdF9sb2NrKGQpOwotCi0gICAgZm9yICgg aSA9IDA7IGkgPCBNQVhfQUxUUDJNOyBpKysgKQotICAgIHsKLSAgICAgICAgaWYgKCBkLT5hcmNo LmFsdHAybV9lcHRwW2ldID09IG1mbl94KElOVkFMSURfTUZOKSApCi0gICAgICAgICAgICBjb250 aW51ZTsKLQotICAgICAgICBwMm0gPSBkLT5hcmNoLmFsdHAybV9wMm1baV07Ci0gICAgICAgIGVw dCA9ICZwMm0tPmVwdDsKLQotICAgICAgICBpZiAoIGVwdHAgPT0gZXB0X2dldF9lcHRwKGVwdCkg KQotICAgICAgICAgICAgZ290byBvdXQ7Ci0gICAgfQotCi0gICAgaSA9IElOVkFMSURfQUxUUDJN OwotCi0gb3V0OgotICAgIGFsdHAybV9saXN0X3VubG9jayhkKTsKLSAgICByZXR1cm4gaTsKLX0K LQogYm9vbF90IHAybV9zd2l0Y2hfdmNwdV9hbHRwMm1fYnlfaWQoc3RydWN0IHZjcHUgKnYsIHVu c2lnbmVkIGludCBpZHgpCiB7CiAgICAgc3RydWN0IGRvbWFpbiAqZCA9IHYtPmRvbWFpbjsKQEAg LTI0MTAsMTggKzIzODMsNiBAQCB2b2lkIHAybV9mbHVzaF9hbHRwMm0oc3RydWN0IGRvbWFpbiAq ZCkKICAgICBhbHRwMm1fbGlzdF91bmxvY2soZCk7CiB9CiAKLXN0YXRpYyB2b2lkIHAybV9pbml0 X2FsdHAybV9oZWxwZXIoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IGkpCi17Ci0gICAg c3RydWN0IHAybV9kb21haW4gKnAybSA9IGQtPmFyY2guYWx0cDJtX3AybVtpXTsKLSAgICBzdHJ1 Y3QgZXB0X2RhdGEgKmVwdDsKLQotICAgIHAybS0+bWluX3JlbWFwcGVkX2dmbiA9IGdmbl94KElO VkFMSURfR0ZOKTsKLSAgICBwMm0tPm1heF9yZW1hcHBlZF9nZm4gPSAwOwotICAgIGVwdCA9ICZw Mm0tPmVwdDsKLSAgICBlcHQtPmFzciA9IHBhZ2V0YWJsZV9nZXRfcGZuKHAybV9nZXRfcGFnZXRh YmxlKHAybSkpOwotICAgIGQtPmFyY2guYWx0cDJtX2VwdHBbaV0gPSBlcHRfZ2V0X2VwdHAoZXB0 KTsKLX0KLQogaW50IHAybV9pbml0X2FsdHAybV9ieV9pZChzdHJ1Y3QgZG9tYWluICpkLCB1bnNp Z25lZCBpbnQgaWR4KQogewogICAgIGludCByYyA9IC1FSU5WQUw7CkBAIC0yNDMzLDcgKzIzOTQs NyBAQCBpbnQgcDJtX2luaXRfYWx0cDJtX2J5X2lkKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVk IGludCBpZHgpCiAKICAgICBpZiAoIGQtPmFyY2guYWx0cDJtX2VwdHBbaWR4XSA9PSBtZm5feChJ TlZBTElEX01GTikgKQogICAgIHsKLSAgICAgICAgcDJtX2luaXRfYWx0cDJtX2hlbHBlcihkLCBp ZHgpOworICAgICAgICBwMm1faW5pdF9hbHRwMm1fZXB0X2hlbHBlcihkLCBpZHgpOwogICAgICAg ICByYyA9IDA7CiAgICAgfQogCkBAIC0yNDUzLDcgKzI0MTQsNyBAQCBpbnQgcDJtX2luaXRfbmV4 dF9hbHRwMm0oc3RydWN0IGRvbWFpbiAqZCwgdWludDE2X3QgKmlkeCkKICAgICAgICAgaWYgKCBk LT5hcmNoLmFsdHAybV9lcHRwW2ldICE9IG1mbl94KElOVkFMSURfTUZOKSApCiAgICAgICAgICAg ICBjb250aW51ZTsKIAotICAgICAgICBwMm1faW5pdF9hbHRwMm1faGVscGVyKGQsIGkpOworICAg ICAgICBwMm1faW5pdF9hbHRwMm1fZXB0X2hlbHBlcihkLCBpKTsKICAgICAgICAgKmlkeCA9IGk7 CiAgICAgICAgIHJjID0gMDsKIApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9hbHRw Mm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvYWx0cDJtLmgKaW5kZXggNjRjNzYxOC4uYTIzNmVk NyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9hbHRwMm0uaAorKysgYi94ZW4vaW5j bHVkZS9hc20teDg2L2FsdHAybS5oCkBAIC0xOCw3ICsxOCw2IEBACiAjaWZuZGVmIF9fQVNNX1g4 Nl9BTFRQMk1fSAogI2RlZmluZSBfX0FTTV9YODZfQUxUUDJNX0gKIAotI2luY2x1ZGUgPHhlbi90 eXBlcy5oPgogI2luY2x1ZGUgPHhlbi9zY2hlZC5oPiAgICAgICAgIC8qIGZvciBzdHJ1Y3QgdmNw dSwgc3RydWN0IGRvbWFpbiAqLwogI2luY2x1ZGUgPGFzbS9odm0vdmNwdS5oPiAgICAgIC8qIGZv ciB2Y3B1X2FsdHAybSAqLwogCkBAIC0zOCw0ICszNyw3IEBAIHN0YXRpYyBpbmxpbmUgdWludDE2 X3QgYWx0cDJtX3ZjcHVfaWR4KGNvbnN0IHN0cnVjdCB2Y3B1ICp2KQogICAgIHJldHVybiB2Y3B1 X2FsdHAybSh2KS5wMm1pZHg7CiB9CiAKK2ludCBodm1fYWx0cDJtX2luaXQoc3RydWN0IGRvbWFp biAqZCk7Cit2b2lkIGh2bV9hbHRwMm1fdGVhcmRvd24oc3RydWN0IGRvbWFpbiAqZCk7CisKICNl bmRpZiAvKiBfX0FTTV9YODZfQUxUUDJNX0ggKi8KZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2Fz bS14ODYvaHZtL3ZteC92bXguaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZteC92bXguaApp bmRleCA0Y2RkOWIxLi4wMzgzYTlkIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2 bS92bXgvdm14LmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vdm14L3ZteC5oCkBAIC01 NjEsNiArNTYxLDkgQEAgdm9pZCBlcHRfcDJtX3VuaW5pdChzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt KTsKIHZvaWQgZXB0X3dhbGtfdGFibGUoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgbG9uZyBn Zm4pOwogYm9vbF90IGVwdF9oYW5kbGVfbWlzY29uZmlnKHVpbnQ2NF90IGdwYSk7CiB2b2lkIHNl dHVwX2VwdF9kdW1wKHZvaWQpOwordm9pZCBwMm1faW5pdF9hbHRwMm1fZXB0X2hlbHBlciggc3Ry dWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IGkpOworLyogTG9jYXRlIGFuIGFsdGVybmF0ZSBw Mm0gYnkgaXRzIEVQVFAgKi8KK3Vuc2lnbmVkIGludCBwMm1fZmluZF9hbHRwMm1fYnlfZXB0cChz dHJ1Y3QgZG9tYWluICpkLCB1aW50NjRfdCBlcHRwKTsKIAogdm9pZCB1cGRhdGVfZ3Vlc3RfZWlw KHZvaWQpOwogCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oIGIveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9wMm0uaAppbmRleCBkNWZkNTQ2Li4wYzViMzkxIDEwMDY0NAotLS0gYS94 ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgK QEAgLTIzLDggKzIzLDggQEAKICAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBJZiBub3QsIHNl ZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCiAgKi8KIAotI2lmbmRlZiBfWEVOX1Ay TV9ICi0jZGVmaW5lIF9YRU5fUDJNX0gKKyNpZm5kZWYgX1hFTl9BU01fWDg2X1AyTV9ICisjZGVm aW5lIF9YRU5fQVNNX1g4Nl9QMk1fSAogCiAjaW5jbHVkZSA8eGVuL2NvbmZpZy5oPgogI2luY2x1 ZGUgPHhlbi9wYWdpbmcuaD4KQEAgLTc4MSw5ICs3ODEsNiBAQCBzdGF0aWMgaW5saW5lIHN0cnVj dCBwMm1fZG9tYWluICpwMm1fZ2V0X2FsdHAybShzdHJ1Y3QgdmNwdSAqdikKICAgICByZXR1cm4g di0+ZG9tYWluLT5hcmNoLmFsdHAybV9wMm1baW5kZXhdOwogfQogCi0vKiBMb2NhdGUgYW4gYWx0 ZXJuYXRlIHAybSBieSBpdHMgRVBUUCAqLwotdW5zaWduZWQgaW50IHAybV9maW5kX2FsdHAybV9i eV9lcHRwKHN0cnVjdCBkb21haW4gKmQsIHVpbnQ2NF90IGVwdHApOwotCiAvKiBTd2l0Y2ggYWx0 ZXJuYXRlIHAybSBmb3IgYSBzaW5nbGUgdmNwdSAqLwogYm9vbF90IHAybV9zd2l0Y2hfdmNwdV9h bHRwMm1fYnlfaWQoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGludCBpZHgpOwogCkBAIC04NDUs NyArODQyLDcgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBpbnQgcDJtX2dldF9pb21tdV9mbGFn cyhwMm1fdHlwZV90IHAybXQpCiAgICAgcmV0dXJuIGZsYWdzOwogfQogCi0jZW5kaWYgLyogX1hF Tl9QMk1fSCAqLworI2VuZGlmIC8qIF9YRU5fQVNNX1g4Nl9QMk1fSCAqLwogCiAvKgogICogTG9j YWwgdmFyaWFibGVzOgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54 ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK