From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Lai Subject: [PATCH Altp2m cleanup v4 3/4] Move altp2m specific functions to altp2m files. Date: Wed, 7 Sep 2016 15:04:25 -0700 Message-ID: <1473285866-6868-4-git-send-email-paul.c.lai@intel.com> References: <1473285866-6868-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: <1473285866-6868-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 eGVuL2FyY2gveDg2L21tL2FsdHAybS5jICAgICAgICAgIHwgNTEgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCiB4ZW4vYXJjaC94ODYvbW0vaGFwL2hhcC5jICAgICAgICAg fCAzNyArKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiB4ZW4vYXJjaC94ODYvbW0vcDJtLWVw dC5jICAgICAgICAgfCAzOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhlbi9hcmNo L3g4Ni9tbS9wMm0uYyAgICAgICAgICAgICB8IDQ1ICsrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvYWx0cDJtLmggICAgICB8ICA0ICsrLQogeGVu L2luY2x1ZGUvYXNtLXg4Ni9odm0vdm14L3ZteC5oIHwgIDMgKysrCiB4ZW4vaW5jbHVkZS9hc20t eDg2L3AybS5oICAgICAgICAgfCAgOSArKystLS0tCiA3IGZpbGVzIGNoYW5nZWQsIDEwNSBpbnNl cnRpb25zKCspLCA4MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0v YWx0cDJtLmMgYi94ZW4vYXJjaC94ODYvbW0vYWx0cDJtLmMKaW5kZXggOTMwYmRjMi4uYmYzZjQ2 ZSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L21tL2FsdHAybS5jCisrKyBiL3hlbi9hcmNoL3g4 Ni9tbS9hbHRwMm0uYwpAQCAtMTcsNiArMTcsNyBAQAogCiAjaW5jbHVkZSA8YXNtL2h2bS9zdXBw b3J0Lmg+CiAjaW5jbHVkZSA8YXNtL2h2bS9odm0uaD4KKyNpbmNsdWRlIDxhc20vZG9tYWluLmg+ CiAjaW5jbHVkZSA8YXNtL3AybS5oPgogI2luY2x1ZGUgPGFzbS9hbHRwMm0uaD4KIApAQCAtNjUs NiArNjYsNTYgQEAgYWx0cDJtX3ZjcHVfZGVzdHJveShzdHJ1Y3QgdmNwdSAqdikKICAgICAgICAg dmNwdV91bnBhdXNlKHYpOwogfQogCitpbnQKK2FsdHAybV9kb21haW5faW5pdChzdHJ1Y3QgZG9t YWluICpkKQoreworICAgIGludCByYzsKKyAgICB1bnNpZ25lZCBpbnQgaTsKKworICAgIGlmICgg IWh2bV9hbHRwMm1fc3VwcG9ydGVkKCkgKQorICAgIHsKKyAgICAgICAgcmMgPSAwOworICAgICAg ICBnb3RvIG91dDsKKyAgICB9CisgICAgLyogSW5pdCBhbHRlcm5hdGUgcDJtIGRhdGEuICovCisg ICAgaWYgKCAoZC0+YXJjaC5hbHRwMm1fZXB0cCA9IGFsbG9jX3hlbmhlYXBfcGFnZSgpKSA9PSBO VUxMICkKKyAgICB7CisgICAgICAgIHJjID0gLUVOT01FTTsKKyAgICAgICAgZ290byBvdXQ7Cisg ICAgfQorCisgICAgZm9yICggaSA9IDA7IGkgPCBNQVhfRVBUUDsgaSsrICkKKyAgICAgICAgZC0+ YXJjaC5hbHRwMm1fZXB0cFtpXSA9IG1mbl94KElOVkFMSURfTUZOKTsKKworICAgIGZvciAoIGkg PSAwOyBpIDwgTUFYX0FMVFAyTTsgaSsrICkKKyAgICB7CisgICAgICAgIHJjID0gcDJtX2FsbG9j X3RhYmxlKGQtPmFyY2guYWx0cDJtX3AybVtpXSk7CisgICAgICAgIGlmICggcmMgIT0gMCApCisg ICAgICAgICAgIGdvdG8gb3V0OworICAgIH0KKworICAgIGQtPmFyY2guYWx0cDJtX2FjdGl2ZSA9 IDA7Cisgb3V0OgorICAgIHJldHVybiByYzsKK30KKwordm9pZAorYWx0cDJtX2RvbWFpbl90ZWFy ZG93bihzdHJ1Y3QgZG9tYWluICpkKQoreworICAgIHVuc2lnbmVkIGludCBpOworCisgICAgaWYg KCAhaHZtX2FsdHAybV9zdXBwb3J0ZWQoKSApCisJcmV0dXJuOworCisgICAgZC0+YXJjaC5hbHRw Mm1fYWN0aXZlID0gMDsKKworICAgIGZyZWVfeGVuaGVhcF9wYWdlKGQtPmFyY2guYWx0cDJtX2Vw dHApOworICAgIGQtPmFyY2guYWx0cDJtX2VwdHAgPSBOVUxMOworCisgICAgZm9yICggaSA9IDA7 IGkgPCBNQVhfQUxUUDJNOyBpKysgKQorICAgICAgICBwMm1fdGVhcmRvd24oZC0+YXJjaC5hbHRw Mm1fcDJtW2ldKTsKK30KKwogLyoKICAqIExvY2FsIHZhcmlhYmxlczoKICAqIG1vZGU6IEMKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMgYi94ZW4vYXJjaC94ODYvbW0vaGFw L2hhcC5jCmluZGV4IDMyMThmYTIuLjI4M2VjMzggMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9t bS9oYXAvaGFwLmMKKysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYwpAQCAtMzcsNiArMzcs NyBAQAogI2luY2x1ZGUgPGFzbS9oYXAuaD4KICNpbmNsdWRlIDxhc20vcGFnaW5nLmg+CiAjaW5j bHVkZSA8YXNtL3AybS5oPgorI2luY2x1ZGUgPGFzbS9hbHRwMm0uaD4KICNpbmNsdWRlIDxhc20v ZG9tYWluLmg+CiAjaW5jbHVkZSA8eGVuL251bWEuaD4KICNpbmNsdWRlIDxhc20vaHZtL25lc3Rl ZGh2bS5oPgpAQCAtNDk5LDI3ICs1MDAsNyBAQCBpbnQgaGFwX2VuYWJsZShzdHJ1Y3QgZG9tYWlu ICpkLCB1MzIgbW9kZSkKICAgICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCi0gICAgaWYgKCBo dm1fYWx0cDJtX3N1cHBvcnRlZCgpICkKLSAgICB7Ci0gICAgICAgIC8qIEluaXQgYWx0ZXJuYXRl IHAybSBkYXRhICovCi0gICAgICAgIGlmICggKGQtPmFyY2guYWx0cDJtX2VwdHAgPSBhbGxvY194 ZW5oZWFwX3BhZ2UoKSkgPT0gTlVMTCApCi0gICAgICAgIHsKLSAgICAgICAgICAgIHJ2ID0gLUVO T01FTTsKLSAgICAgICAgICAgIGdvdG8gb3V0OwotICAgICAgICB9Ci0KLSAgICAgICAgZm9yICgg aSA9IDA7IGkgPCBNQVhfRVBUUDsgaSsrICkKLSAgICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2Vw dHBbaV0gPSBtZm5feChJTlZBTElEX01GTik7Ci0KLSAgICAgICAgZm9yICggaSA9IDA7IGkgPCBN QVhfQUxUUDJNOyBpKysgKQotICAgICAgICB7Ci0gICAgICAgICAgICBydiA9IHAybV9hbGxvY190 YWJsZShkLT5hcmNoLmFsdHAybV9wMm1baV0pOwotICAgICAgICAgICAgaWYgKCBydiAhPSAwICkK LSAgICAgICAgICAgICAgIGdvdG8gb3V0OwotICAgICAgICB9Ci0KLSAgICAgICAgZC0+YXJjaC5h bHRwMm1fYWN0aXZlID0gMDsKLSAgICB9CisgICAgcnYgPSBhbHRwMm1fZG9tYWluX2luaXQoZCk7 CiAKICAgICAvKiBOb3cgbGV0IG90aGVyIHVzZXJzIHNlZSB0aGUgbmV3IG1vZGUgKi8KICAgICBk LT5hcmNoLnBhZ2luZy5tb2RlID0gbW9kZSB8IFBHX0hBUF9lbmFibGU7CkBAIC01MzMsMTkgKzUx NCw3IEBAIHZvaWQgaGFwX2ZpbmFsX3RlYXJkb3duKHN0cnVjdCBkb21haW4gKmQpCiB7CiAgICAg dW5zaWduZWQgaW50IGk7CiAKLSAgICBpZiAoIGh2bV9hbHRwMm1fc3VwcG9ydGVkKCkgKQotICAg IHsKLSAgICAgICAgZC0+YXJjaC5hbHRwMm1fYWN0aXZlID0gMDsKLQotICAgICAgICBpZiAoIGQt PmFyY2guYWx0cDJtX2VwdHAgKQotICAgICAgICB7Ci0gICAgICAgICAgICBmcmVlX3hlbmhlYXBf cGFnZShkLT5hcmNoLmFsdHAybV9lcHRwKTsKLSAgICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2Vw dHAgPSBOVUxMOwotICAgICAgICB9Ci0KLSAgICAgICAgZm9yICggaSA9IDA7IGkgPCBNQVhfQUxU UDJNOyBpKysgKQotICAgICAgICAgICAgcDJtX3RlYXJkb3duKGQtPmFyY2guYWx0cDJtX3AybVtp XSk7Ci0gICAgfQorICAgIGFsdHAybV9kb21haW5fdGVhcmRvd24oZCk7CiAKICAgICAvKiBEZXN0 cm95IG5lc3RlZHAybSdzIGZpcnN0ICovCiAgICAgZm9yIChpID0gMDsgaSA8IE1BWF9ORVNURURQ Mk07IGkrKykgewpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL3AybS1lcHQuYyBiL3hlbi9h cmNoL3g4Ni9tbS9wMm0tZXB0LmMKaW5kZXggMTNjYWIyNC4uN2FlMzE2OCAxMDA2NDQKLS0tIGEv eGVuL2FyY2gveDg2L21tL3AybS1lcHQuYworKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5j CkBAIC0xMzI5LDYgKzEzMjksNDUgQEAgdm9pZCBzZXR1cF9lcHRfZHVtcCh2b2lkKQogICAgIHJl Z2lzdGVyX2tleWhhbmRsZXIoJ0QnLCBlcHRfZHVtcF9wMm1fdGFibGUsICJkdW1wIFZULXggRVBU IHRhYmxlcyIsIDApOwogfQogCit2b2lkIHAybV9pbml0X2FsdHAybV9lcHQoIHN0cnVjdCBkb21h aW4gKmQsIHVuc2lnbmVkIGludCBpKQoreworICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0gPSBk LT5hcmNoLmFsdHAybV9wMm1baV07CisgICAgc3RydWN0IGVwdF9kYXRhICplcHQ7CisKKyAgICBw Mm0tPm1pbl9yZW1hcHBlZF9nZm4gPSBnZm5feChJTlZBTElEX0dGTik7CisgICAgcDJtLT5tYXhf cmVtYXBwZWRfZ2ZuID0gMDsKKyAgICBlcHQgPSAmcDJtLT5lcHQ7CisgICAgZXB0LT5hc3IgPSBw YWdldGFibGVfZ2V0X3BmbihwMm1fZ2V0X3BhZ2V0YWJsZShwMm0pKTsKKyAgICBkLT5hcmNoLmFs dHAybV9lcHRwW2ldID0gZXB0X2dldF9lcHRwKGVwdCk7Cit9CisKK3Vuc2lnbmVkIGludCBwMm1f ZmluZF9hbHRwMm1fYnlfZXB0cChzdHJ1Y3QgZG9tYWluICpkLCB1aW50NjRfdCBlcHRwKQorewor ICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm07CisgICAgc3RydWN0IGVwdF9kYXRhICplcHQ7Cisg ICAgdW5zaWduZWQgaW50IGk7CisKKyAgICBhbHRwMm1fbGlzdF9sb2NrKGQpOworCisgICAgZm9y ICggaSA9IDA7IGkgPCBNQVhfQUxUUDJNOyBpKysgKQorICAgIHsKKyAgICAgICAgaWYgKCBkLT5h cmNoLmFsdHAybV9lcHRwW2ldID09IG1mbl94KElOVkFMSURfTUZOKSApCisgICAgICAgICAgICBj b250aW51ZTsKKworICAgICAgICBwMm0gPSBkLT5hcmNoLmFsdHAybV9wMm1baV07CisgICAgICAg IGVwdCA9ICZwMm0tPmVwdDsKKworICAgICAgICBpZiAoIGVwdHAgPT0gZXB0X2dldF9lcHRwKGVw dCkgKQorICAgICAgICAgICAgZ290byBvdXQ7CisgICAgfQorCisgICAgaSA9IElOVkFMSURfQUxU UDJNOworCisgb3V0OgorICAgIGFsdHAybV9saXN0X3VubG9jayhkKTsKKyAgICByZXR1cm4gaTsK K30KKwogLyoKICAqIExvY2FsIHZhcmlhYmxlczoKICAqIG1vZGU6IEMKZGlmZiAtLWdpdCBhL3hl bi9hcmNoL3g4Ni9tbS9wMm0uYyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYwppbmRleCA3ZDE0YzNi Li45YTk3OTYyIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLmMKKysrIGIveGVuL2Fy Y2gveDg2L21tL3AybS5jCkBAIC0xOTYsOCArMTk2LDggQEAgc3RhdGljIHZvaWQgcDJtX3RlYXJk b3duX2FsdHAybShzdHJ1Y3QgZG9tYWluICpkKQogICAgICAgICBpZiAoICFkLT5hcmNoLmFsdHAy bV9wMm1baV0gKQogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgIHAybSA9IGQtPmFyY2gu YWx0cDJtX3AybVtpXTsKLSAgICAgICAgZC0+YXJjaC5hbHRwMm1fcDJtW2ldID0gTlVMTDsKICAg ICAgICAgcDJtX2ZyZWVfb25lKHAybSk7CisgICAgICAgIGQtPmFyY2guYWx0cDJtX3AybVtpXSA9 IE5VTEw7CiAgICAgfQogfQogCkBAIC0yMjYxLDMzICsyMjYxLDYgQEAgaW50IHVubWFwX21taW9f cmVnaW9ucyhzdHJ1Y3QgZG9tYWluICpkLAogICAgIHJldHVybiBpID09IG5yID8gMCA6IGkgPzog cmV0OwogfQogCi11bnNpZ25lZCBpbnQgcDJtX2ZpbmRfYWx0cDJtX2J5X2VwdHAoc3RydWN0IGRv bWFpbiAqZCwgdWludDY0X3QgZXB0cCkKLXsKLSAgICBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtOwot ICAgIHN0cnVjdCBlcHRfZGF0YSAqZXB0OwotICAgIHVuc2lnbmVkIGludCBpOwotCi0gICAgYWx0 cDJtX2xpc3RfbG9jayhkKTsKLQotICAgIGZvciAoIGkgPSAwOyBpIDwgTUFYX0FMVFAyTTsgaSsr ICkKLSAgICB7Ci0gICAgICAgIGlmICggZC0+YXJjaC5hbHRwMm1fZXB0cFtpXSA9PSBtZm5feChJ TlZBTElEX01GTikgKQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgcDJtID0gZC0+ YXJjaC5hbHRwMm1fcDJtW2ldOwotICAgICAgICBlcHQgPSAmcDJtLT5lcHQ7Ci0KLSAgICAgICAg aWYgKCBlcHRwID09IGVwdF9nZXRfZXB0cChlcHQpICkKLSAgICAgICAgICAgIGdvdG8gb3V0Owot ICAgIH0KLQotICAgIGkgPSBJTlZBTElEX0FMVFAyTTsKLQotIG91dDoKLSAgICBhbHRwMm1fbGlz dF91bmxvY2soZCk7Ci0gICAgcmV0dXJuIGk7Ci19Ci0KIGJvb2xfdCBwMm1fc3dpdGNoX3ZjcHVf YWx0cDJtX2J5X2lkKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBpbnQgaWR4KQogewogICAgIHN0 cnVjdCBkb21haW4gKmQgPSB2LT5kb21haW47CkBAIC0yMzkzLDE4ICsyMzY2LDYgQEAgdm9pZCBw Mm1fZmx1c2hfYWx0cDJtKHN0cnVjdCBkb21haW4gKmQpCiAgICAgYWx0cDJtX2xpc3RfdW5sb2Nr KGQpOwogfQogCi1zdGF0aWMgdm9pZCBwMm1faW5pdF9hbHRwMm1faGVscGVyKHN0cnVjdCBkb21h aW4gKmQsIHVuc2lnbmVkIGludCBpKQotewotICAgIHN0cnVjdCBwMm1fZG9tYWluICpwMm0gPSBk LT5hcmNoLmFsdHAybV9wMm1baV07Ci0gICAgc3RydWN0IGVwdF9kYXRhICplcHQ7Ci0KLSAgICBw Mm0tPm1pbl9yZW1hcHBlZF9nZm4gPSBnZm5feChJTlZBTElEX0dGTik7Ci0gICAgcDJtLT5tYXhf cmVtYXBwZWRfZ2ZuID0gMDsKLSAgICBlcHQgPSAmcDJtLT5lcHQ7Ci0gICAgZXB0LT5hc3IgPSBw YWdldGFibGVfZ2V0X3BmbihwMm1fZ2V0X3BhZ2V0YWJsZShwMm0pKTsKLSAgICBkLT5hcmNoLmFs dHAybV9lcHRwW2ldID0gZXB0X2dldF9lcHRwKGVwdCk7Ci19Ci0KIGludCBwMm1faW5pdF9hbHRw Mm1fYnlfaWQoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IGlkeCkKIHsKICAgICBpbnQg cmMgPSAtRUlOVkFMOwpAQCAtMjQxNiw3ICsyMzc3LDcgQEAgaW50IHAybV9pbml0X2FsdHAybV9i eV9pZChzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgaWR4KQogCiAgICAgaWYgKCBkLT5h cmNoLmFsdHAybV9lcHRwW2lkeF0gPT0gbWZuX3goSU5WQUxJRF9NRk4pICkKICAgICB7Ci0gICAg ICAgIHAybV9pbml0X2FsdHAybV9oZWxwZXIoZCwgaWR4KTsKKyAgICAgICAgcDJtX2luaXRfYWx0 cDJtX2VwdChkLCBpZHgpOwogICAgICAgICByYyA9IDA7CiAgICAgfQogCkBAIC0yNDM2LDcgKzIz OTcsNyBAQCBpbnQgcDJtX2luaXRfbmV4dF9hbHRwMm0oc3RydWN0IGRvbWFpbiAqZCwgdWludDE2 X3QgKmlkeCkKICAgICAgICAgaWYgKCBkLT5hcmNoLmFsdHAybV9lcHRwW2ldICE9IG1mbl94KElO VkFMSURfTUZOKSApCiAgICAgICAgICAgICBjb250aW51ZTsKIAotICAgICAgICBwMm1faW5pdF9h bHRwMm1faGVscGVyKGQsIGkpOworICAgICAgICBwMm1faW5pdF9hbHRwMm1fZXB0KGQsIGkpOwog ICAgICAgICAqaWR4ID0gaTsKICAgICAgICAgcmMgPSAwOwogCmRpZmYgLS1naXQgYS94ZW4vaW5j bHVkZS9hc20teDg2L2FsdHAybS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9hbHRwMm0uaAppbmRl eCA2NGM3NjE4Li4wMDkwYzg5IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2FsdHAy bS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvYWx0cDJtLmgKQEAgLTE4LDcgKzE4LDYgQEAK ICNpZm5kZWYgX19BU01fWDg2X0FMVFAyTV9ICiAjZGVmaW5lIF9fQVNNX1g4Nl9BTFRQMk1fSAog Ci0jaW5jbHVkZSA8eGVuL3R5cGVzLmg+CiAjaW5jbHVkZSA8eGVuL3NjaGVkLmg+ICAgICAgICAg LyogZm9yIHN0cnVjdCB2Y3B1LCBzdHJ1Y3QgZG9tYWluICovCiAjaW5jbHVkZSA8YXNtL2h2bS92 Y3B1Lmg+ICAgICAgLyogZm9yIHZjcHVfYWx0cDJtICovCiAKQEAgLTM4LDQgKzM3LDcgQEAgc3Rh dGljIGlubGluZSB1aW50MTZfdCBhbHRwMm1fdmNwdV9pZHgoY29uc3Qgc3RydWN0IHZjcHUgKnYp CiAgICAgcmV0dXJuIHZjcHVfYWx0cDJtKHYpLnAybWlkeDsKIH0KIAoraW50IGFsdHAybV9kb21h aW5faW5pdChzdHJ1Y3QgZG9tYWluICpkKTsKK3ZvaWQgYWx0cDJtX2RvbWFpbl90ZWFyZG93bihz dHJ1Y3QgZG9tYWluICpkKTsKKwogI2VuZGlmIC8qIF9fQVNNX1g4Nl9BTFRQMk1fSCAqLwpkaWZm IC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vdm14L3ZteC5oIGIveGVuL2luY2x1ZGUv YXNtLXg4Ni9odm0vdm14L3ZteC5oCmluZGV4IDRjZGQ5YjEuLjRkMjQ3YjUgMTAwNjQ0Ci0tLSBh L3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZteC92bXguaAorKysgYi94ZW4vaW5jbHVkZS9hc20t eDg2L2h2bS92bXgvdm14LmgKQEAgLTU2MSw2ICs1NjEsOSBAQCB2b2lkIGVwdF9wMm1fdW5pbml0 KHN0cnVjdCBwMm1fZG9tYWluICpwMm0pOwogdm9pZCBlcHRfd2Fsa190YWJsZShzdHJ1Y3QgZG9t YWluICpkLCB1bnNpZ25lZCBsb25nIGdmbik7CiBib29sX3QgZXB0X2hhbmRsZV9taXNjb25maWco dWludDY0X3QgZ3BhKTsKIHZvaWQgc2V0dXBfZXB0X2R1bXAodm9pZCk7Cit2b2lkIHAybV9pbml0 X2FsdHAybV9lcHQoIHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpKTsKKy8qIExvY2F0 ZSBhbiBhbHRlcm5hdGUgcDJtIGJ5IGl0cyBFUFRQICovCit1bnNpZ25lZCBpbnQgcDJtX2ZpbmRf YWx0cDJtX2J5X2VwdHAoc3RydWN0IGRvbWFpbiAqZCwgdWludDY0X3QgZXB0cCk7CiAKIHZvaWQg dXBkYXRlX2d1ZXN0X2VpcCh2b2lkKTsKIApkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4 Ni9wMm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKaW5kZXggOWZjOWVhZC4uYzEzODUy MiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaAorKysgYi94ZW4vaW5jbHVk ZS9hc20teDg2L3AybS5oCkBAIC0yMyw4ICsyMyw4IEBACiAgKiBhbG9uZyB3aXRoIHRoaXMgcHJv Z3JhbTsgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgogICovCiAK LSNpZm5kZWYgX1hFTl9QMk1fSAotI2RlZmluZSBfWEVOX1AyTV9ICisjaWZuZGVmIF9YRU5fQVNN X1g4Nl9QMk1fSAorI2RlZmluZSBfWEVOX0FTTV9YODZfUDJNX0gKIAogI2luY2x1ZGUgPHhlbi9j b25maWcuaD4KICNpbmNsdWRlIDx4ZW4vcGFnaW5nLmg+CkBAIC03ODQsOSArNzg0LDYgQEAgc3Rh dGljIGlubGluZSBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtX2dldF9hbHRwMm0oc3RydWN0IHZjcHUg KnYpCiAgICAgcmV0dXJuIHYtPmRvbWFpbi0+YXJjaC5hbHRwMm1fcDJtW2luZGV4XTsKIH0KIAot LyogTG9jYXRlIGFuIGFsdGVybmF0ZSBwMm0gYnkgaXRzIEVQVFAgKi8KLXVuc2lnbmVkIGludCBw Mm1fZmluZF9hbHRwMm1fYnlfZXB0cChzdHJ1Y3QgZG9tYWluICpkLCB1aW50NjRfdCBlcHRwKTsK LQogLyogU3dpdGNoIGFsdGVybmF0ZSBwMm0gZm9yIGEgc2luZ2xlIHZjcHUgKi8KIGJvb2xfdCBw Mm1fc3dpdGNoX3ZjcHVfYWx0cDJtX2J5X2lkKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBpbnQg aWR4KTsKIApAQCAtODQ4LDcgKzg0NSw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IHAy bV9nZXRfaW9tbXVfZmxhZ3MocDJtX3R5cGVfdCBwMm10KQogICAgIHJldHVybiBmbGFnczsKIH0K IAotI2VuZGlmIC8qIF9YRU5fUDJNX0ggKi8KKyNlbmRpZiAvKiBfWEVOX0FTTV9YODZfUDJNX0gg Ki8KIAogLyoKICAqIExvY2FsIHZhcmlhYmxlczoKLS0gCjIuNy40CgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==