From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v3 11/16] x86/mm: put HVM only code under CONFIG_HVM Date: Tue, 4 Sep 2018 17:15:28 +0100 Message-ID: <20180904161533.11575-12-wei.liu2@citrix.com> References: <20180904161533.11575-1-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1fxECL-0005Ih-Pq for xen-devel@lists.xenproject.org; Tue, 04 Sep 2018 16:29:01 +0000 In-Reply-To: <20180904161533.11575-1-wei.liu2@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Tamas K Lengyel , Wei Liu , Razvan Cojocaru , George Dunlap , Andrew Cooper , Jan Beulich List-Id: xen-devel@lists.xenproject.org R29pbmcgdGhyb3VnaCB0aGUgY29kZSwgSEFQLCBFUFQsIFBvRCBhbmQgQUxUUDJNIGRlcGVuZCBv biBIVk0gY29kZS4KUHV0IHRoZXNlIGNvbXBvbmVudHMgdW5kZXIgQ09ORklHX0hWTS4gVGhpcyBm dXJ0aGVyIHJlcXVpcmVzIHB1dHRpbmcKb25lIG9mIHRoZSB2bSBldmVudCB1bmRlciBDT05GSUdf SFZNLgoKQWx0cDJtIHJlcXVpcmVzIGEgYml0IG1vcmUgYXR0ZW50aW9uIGJlY2F1c2UgaXRzIGNv ZGUgaXMgZW1iZWRkZWQgaW4KZ2VuZXJpYyB4ODYgcDJtIGNvZGUuCgpBbHNvIG1ha2UgaGFwX2Vu YWJsZWQgZXZhbHVhdGUgdG8gZmFsc2Ugd2hlbiAhQ09ORklHX0hWTS4gTWFrZSBzdXJlIGl0CmV2 YWx1YXRlIGl0cyBwYXJhbWV0ZXIgdG8gYXZvaWQgdW51c2VkIHZhcmlhYmxlIHdhcm5pbmdzIGlu IGl0cyB1c2Vycy4KCkFsc28gc29ydCBpdGVtcyBpbiBNYWtlZmlsZSB3aGlsZSBhdCBpdC4KClNp Z25lZC1vZmYtYnk6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+Ci0tLQogeGVuL2FyY2gv eDg2L21tL01ha2VmaWxlICAgICAgICAgfCAxMSArKysrKystLS0tLQogeGVuL2FyY2gveDg2L21t L21lbV9hY2Nlc3MuYyAgICAgfCAxOCArKysrKysrKysrKysrKysrKy0KIHhlbi9hcmNoL3g4Ni9t bS9tZW1fc2hhcmluZy5jICAgIHwgIDIgKysKIHhlbi9hcmNoL3g4Ni9tbS9wMm0uYyAgICAgICAg ICAgIHwgMjMgKysrKysrKysrKysrLS0tLS0tLS0tLS0KIHhlbi9jb21tb24vdm1fZXZlbnQuYyAg ICAgICAgICAgIHwgIDIgKysKIHhlbi9pbmNsdWRlL2FzbS14ODYvYWx0cDJtLmggICAgIHwgMTMg KysrKysrKysrKysrLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaCAgICAgfCAgMiArLQog eGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vZG9tYWluLmggfCAgNCArKysrCiB4ZW4vaW5jbHVkZS9h c20teDg2L3AybS5oICAgICAgICB8ICA3ICsrKysrKy0KIDkgZmlsZXMgY2hhbmdlZCwgNjIgaW5z ZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21t L01ha2VmaWxlIGIveGVuL2FyY2gveDg2L21tL01ha2VmaWxlCmluZGV4IDMwMTcxMTk4MTMuLjlj YmIyY2ZjZGUgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9NYWtlZmlsZQorKysgYi94ZW4v YXJjaC94ODYvbW0vTWFrZWZpbGUKQEAgLTEsMTUgKzEsMTYgQEAKIHN1YmRpci15ICs9IHNoYWRv dwotc3ViZGlyLXkgKz0gaGFwCitzdWJkaXItJChDT05GSUdfSFZNKSArPSBoYXAKIAotb2JqLXkg Kz0gcGFnaW5nLm8KLW9iai15ICs9IHAybS5vIHAybS1wdC5vIHAybS1lcHQubyBwMm0tcG9kLm8K LW9iai15ICs9IGFsdHAybS5vCitvYmotJChDT05GSUdfSFZNKSArPSBhbHRwMm0ubwogb2JqLXkg Kz0gZ3Vlc3Rfd2Fsa18yLm8KIG9iai15ICs9IGd1ZXN0X3dhbGtfMy5vCiBvYmoteSArPSBndWVz dF93YWxrXzQubworb2JqLXkgKz0gbWVtX2FjY2Vzcy5vCiBvYmoteSArPSBtZW1fcGFnaW5nLm8K IG9iai15ICs9IG1lbV9zaGFyaW5nLm8KLW9iai15ICs9IG1lbV9hY2Nlc3Mubworb2JqLXkgKz0g cDJtLm8gcDJtLXB0Lm8KK29iai0kKENPTkZJR19IVk0pICs9IHAybS1lcHQubyBwMm0tcG9kLm8K K29iai15ICs9IHBhZ2luZy5vCiAKIGd1ZXN0X3dhbGtfJS5vOiBndWVzdF93YWxrLmMgTWFrZWZp bGUKIAkkKENDKSAkKENGTEFHUykgLURHVUVTVF9QQUdJTkdfTEVWRUxTPSQqIC1jICQ8IC1vICRA CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jIGIveGVuL2FyY2gveDg2 L21tL21lbV9hY2Nlc3MuYwppbmRleCBhOGIzZTk5ZWM0Li44NDg3OWI3ZmFmIDEwMDY0NAotLS0g YS94ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS9tZW1f YWNjZXNzLmMKQEAgLTI0Niw3ICsyNDYsNiBAQCBib29sIHAybV9tZW1fYWNjZXNzX2NoZWNrKHBh ZGRyX3QgZ3BhLCB1bnNpZ25lZCBsb25nIGdsYSwKICAgICAvKiBSZXR1cm4gd2hldGhlciB2Q1BV IHBhdXNlIGlzIHJlcXVpcmVkIChha2EuIHN5bmMgZXZlbnQpICovCiAgICAgcmV0dXJuIChwMm1h ICE9IHAybV9hY2Nlc3NfbjJyd3gpOwogfQotI2VuZGlmCiAKIGludCBwMm1fc2V0X2FsdHAybV9t ZW1fYWNjZXNzKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwMm1fZG9tYWluICpocDJtLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHAybV9kb21haW4gKmFwMm0sIHAybV9h Y2Nlc3NfdCBhLApAQCAtMjg4LDYgKzI4Nyw3IEBAIGludCBwMm1fc2V0X2FsdHAybV9tZW1fYWNj ZXNzKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwMm1fZG9tYWluICpocDJtLAogICAgIHJldHVy biBhcDJtLT5zZXRfZW50cnkoYXAybSwgZ2ZuLCBtZm4sIFBBR0VfT1JERVJfNEssIHQsIGEsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50LT5kb21haW4gIT0gZCk7CiB9CisjZW5k aWYKIAogc3RhdGljIGludCBzZXRfbWVtX2FjY2VzcyhzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3Qg cDJtX2RvbWFpbiAqcDJtLAogICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcDJtX2Rv bWFpbiAqYXAybSwgcDJtX2FjY2Vzc190IGEsCkBAIC0yOTUsNiArMjk1LDcgQEAgc3RhdGljIGlu dCBzZXRfbWVtX2FjY2VzcyhzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt LAogewogICAgIGludCByYyA9IDA7CiAKKyNpZmRlZiBDT05GSUdfSFZNCiAgICAgaWYgKCBhcDJt ICkKICAgICB7CiAgICAgICAgIHJjID0gcDJtX3NldF9hbHRwMm1fbWVtX2FjY2VzcyhkLCBwMm0s IGFwMm0sIGEsIGdmbik7CkBAIC0zMDMsNiArMzA0LDkgQEAgc3RhdGljIGludCBzZXRfbWVtX2Fj Y2VzcyhzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLAogICAgICAgICAg ICAgcmMgPSAwOwogICAgIH0KICAgICBlbHNlCisjZWxzZQorICAgIEFTU0VSVCghYXAybSk7Cisj ZW5kaWYKICAgICB7CiAgICAgICAgIG1mbl90IG1mbjsKICAgICAgICAgcDJtX2FjY2Vzc190IF9h OwpAQCAtMzY0LDYgKzM2OCw3IEBAIGxvbmcgcDJtX3NldF9tZW1fYWNjZXNzKHN0cnVjdCBkb21h aW4gKmQsIGdmbl90IGdmbiwgdWludDMyX3QgbnIsCiAgICAgbG9uZyByYyA9IDA7CiAKICAgICAv KiBhbHRwMm0gdmlldyAwIGlzIHRyZWF0ZWQgYXMgdGhlIGhvc3RwMm0gKi8KKyNpZmRlZiBDT05G SUdfSFZNCiAgICAgaWYgKCBhbHRwMm1faWR4ICkKICAgICB7CiAgICAgICAgIGlmICggYWx0cDJt X2lkeCA+PSBNQVhfQUxUUDJNIHx8CkBAIC0zNzIsNiArMzc3LDkgQEAgbG9uZyBwMm1fc2V0X21l bV9hY2Nlc3Moc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgZ2ZuLCB1aW50MzJfdCBuciwKIAogICAg ICAgICBhcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2FsdHAybV9pZHhdOwogICAgIH0KKyNlbHNl CisgICAgQVNTRVJUKCFhbHRwMm1faWR4KTsKKyNlbmRpZgogCiAgICAgaWYgKCAheGVubWVtX2Fj Y2Vzc190b19wMm1fYWNjZXNzKHAybSwgYWNjZXNzLCAmYSkgKQogICAgICAgICByZXR1cm4gLUVJ TlZBTDsKQEAgLTQxOSw2ICs0MjcsNyBAQCBsb25nIHAybV9zZXRfbWVtX2FjY2Vzc19tdWx0aShz dHJ1Y3QgZG9tYWluICpkLAogICAgIGxvbmcgcmMgPSAwOwogCiAgICAgLyogYWx0cDJtIHZpZXcg MCBpcyB0cmVhdGVkIGFzIHRoZSBob3N0cDJtICovCisjaWZkZWYgQ09ORklHX0hWTQogICAgIGlm ICggYWx0cDJtX2lkeCApCiAgICAgewogICAgICAgICBpZiAoIGFsdHAybV9pZHggPj0gTUFYX0FM VFAyTSB8fApAQCAtNDI3LDYgKzQzNiw5IEBAIGxvbmcgcDJtX3NldF9tZW1fYWNjZXNzX211bHRp KHN0cnVjdCBkb21haW4gKmQsCiAKICAgICAgICAgYXAybSA9IGQtPmFyY2guYWx0cDJtX3AybVth bHRwMm1faWR4XTsKICAgICB9CisjZWxzZQorICAgIEFTU0VSVCghYWx0cDJtX2lkeCk7CisjZW5k aWYKIAogICAgIHAybV9sb2NrKHAybSk7CiAgICAgaWYgKCBhcDJtICkKQEAgLTQ4MCwxMiArNDky LDE1IEBAIGludCBwMm1fZ2V0X21lbV9hY2Nlc3Moc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgZ2Zu LCB4ZW5tZW1fYWNjZXNzX3QgKmFjY2VzcykKIAogdm9pZCBhcmNoX3AybV9zZXRfYWNjZXNzX3Jl cXVpcmVkKHN0cnVjdCBkb21haW4gKmQsIGJvb2wgYWNjZXNzX3JlcXVpcmVkKQogeworI2lmZGVm IENPTkZJR19IVk0KICAgICB1bnNpZ25lZCBpbnQgaTsKKyNlbmRpZgogCiAgICAgQVNTRVJUKGF0 b21pY19yZWFkKCZkLT5wYXVzZV9jb3VudCkpOwogCiAgICAgcDJtX2dldF9ob3N0cDJtKGQpLT5h Y2Nlc3NfcmVxdWlyZWQgPSBhY2Nlc3NfcmVxdWlyZWQ7CiAKKyNpZmRlZiBDT05GSUdfSFZNCiAg ICAgaWYgKCAhYWx0cDJtX2FjdGl2ZShkKSApCiAgICAgICAgIHJldHVybjsKIApAQCAtNDk2LDYg KzUxMSw3IEBAIHZvaWQgYXJjaF9wMm1fc2V0X2FjY2Vzc19yZXF1aXJlZChzdHJ1Y3QgZG9tYWlu ICpkLCBib29sIGFjY2Vzc19yZXF1aXJlZCkKICAgICAgICAgaWYgKCBwMm0gKQogICAgICAgICAg ICAgcDJtLT5hY2Nlc3NfcmVxdWlyZWQgPSBhY2Nlc3NfcmVxdWlyZWQ7CiAgICAgfQorI2VuZGlm CiB9CiAKIC8qCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vbWVtX3NoYXJpbmcuYyBiL3hl bi9hcmNoL3g4Ni9tbS9tZW1fc2hhcmluZy5jCmluZGV4IGQwNGY5Yzc5YjMuLjM0OWU2ZmQyY2Yg MTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9tZW1fc2hhcmluZy5jCisrKyBiL3hlbi9hcmNo L3g4Ni9tbS9tZW1fc2hhcmluZy5jCkBAIC04MDIsNiArODAyLDcgQEAgc3RhdGljIGludCBub21p bmF0ZV9wYWdlKHN0cnVjdCBkb21haW4gKmQsIGdmbl90IGdmbiwKICAgICBpZiAoICFwMm1faXNf c2hhcmFibGUocDJtdCkgKQogICAgICAgICBnb3RvIG91dDsKIAorI2lmZGVmIENPTkZJR19IVk0K ICAgICAvKiBDaGVjayBpZiB0aGVyZSBhcmUgbWVtX2FjY2Vzcy9yZW1hcHBlZCBhbHRwMm0gZW50 cmllcyBmb3IgdGhpcyBwYWdlICovCiAgICAgaWYgKCBhbHRwMm1fYWN0aXZlKGQpICkKICAgICB7 CkBAIC04MjksNiArODMwLDcgQEAgc3RhdGljIGludCBub21pbmF0ZV9wYWdlKHN0cnVjdCBkb21h aW4gKmQsIGdmbl90IGdmbiwKIAogICAgICAgICBhbHRwMm1fbGlzdF91bmxvY2soZCk7CiAgICAg fQorI2VuZGlmCiAKICAgICAvKiBUcnkgdG8gY29udmVydCB0aGUgbWZuIHRvIHRoZSBzaGFyYWJs ZSB0eXBlICovCiAgICAgcGFnZSA9IG1mbl90b19wYWdlKG1mbik7CmRpZmYgLS1naXQgYS94ZW4v YXJjaC94ODYvbW0vcDJtLmMgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMKaW5kZXggN2ExMmNkMzdl OC4uMDI3MjAyZjM5ZSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5jCisrKyBiL3hl bi9hcmNoL3g4Ni9tbS9wMm0uYwpAQCAtMTg3LDcgKzE4Nyw2IEBAIHN0YXRpYyBpbnQgcDJtX2lu aXRfbmVzdGVkcDJtKHN0cnVjdCBkb21haW4gKmQpCiAKICAgICByZXR1cm4gMDsKIH0KLSNlbmRp ZgogCiBzdGF0aWMgdm9pZCBwMm1fdGVhcmRvd25fYWx0cDJtKHN0cnVjdCBkb21haW4gKmQpCiB7 CkBAIC0yMjYsNiArMjI1LDcgQEAgc3RhdGljIGludCBwMm1faW5pdF9hbHRwMm0oc3RydWN0IGRv bWFpbiAqZCkKIAogICAgIHJldHVybiAwOwogfQorI2VuZGlmCiAKIGludCBwMm1faW5pdChzdHJ1 Y3QgZG9tYWluICpkKQogewpAQCAtMjQ1LDE2ICsyNDUsMTQgQEAgaW50IHAybV9pbml0KHN0cnVj dCBkb21haW4gKmQpCiAgICAgICAgIHAybV90ZWFyZG93bl9ob3N0cDJtKGQpOwogICAgICAgICBy ZXR1cm4gcmM7CiAgICAgfQotI2VuZGlmCiAKICAgICByYyA9IHAybV9pbml0X2FsdHAybShkKTsK ICAgICBpZiAoIHJjICkKICAgICB7CiAgICAgICAgIHAybV90ZWFyZG93bl9ob3N0cDJtKGQpOwot I2lmZGVmIENPTkZJR19IVk0KICAgICAgICAgcDJtX3RlYXJkb3duX25lc3RlZHAybShkKTsKLSNl bmRpZgogICAgIH0KKyNlbmRpZgogCiAgICAgcmV0dXJuIHJjOwogfQpAQCAtNzAwLDEyICs2OTgs MTIgQEAgdm9pZCBwMm1fdGVhcmRvd24oc3RydWN0IHAybV9kb21haW4gKnAybSkKIAogdm9pZCBw Mm1fZmluYWxfdGVhcmRvd24oc3RydWN0IGRvbWFpbiAqZCkKIHsKKyNpZmRlZiBDT05GSUdfSFZN CiAgICAgLyoKICAgICAgKiBXZSBtdXN0IHRlYXJkb3duIGJvdGggb2YgdGhlbSB1bmNvbmRpdGlv bmFsbHkgYmVjYXVzZQogICAgICAqIHdlIGluaXRpYWxpc2UgdGhlbSB1bmNvbmRpdGlvbmFsbHku CiAgICAgICovCiAgICAgcDJtX3RlYXJkb3duX2FsdHAybShkKTsKLSNpZmRlZiBDT05GSUdfSFZN CiAgICAgcDJtX3RlYXJkb3duX25lc3RlZHAybShkKTsKICNlbmRpZgogCkBAIC0xNzI3LDEyICsx NzI1LDYgQEAgdm9pZCBwMm1fbWVtX3BhZ2luZ19yZXN1bWUoc3RydWN0IGRvbWFpbiAqZCwgdm1f ZXZlbnRfcmVzcG9uc2VfdCAqcnNwKQogICAgIH0KIH0KIAotdm9pZCBwMm1fYWx0cDJtX2NoZWNr KHN0cnVjdCB2Y3B1ICp2LCB1aW50MTZfdCBpZHgpCi17Ci0gICAgaWYgKCBhbHRwMm1fYWN0aXZl KHYtPmRvbWFpbikgKQotICAgICAgICBwMm1fc3dpdGNoX3ZjcHVfYWx0cDJtX2J5X2lkKHYsIGlk eCk7Ci19Ci0KICNpZmRlZiBDT05GSUdfSFZNCiBzdGF0aWMgc3RydWN0IHAybV9kb21haW4gKgog cDJtX2dldGxydV9uZXN0ZWRwMm0oc3RydWN0IGRvbWFpbiAqZCwgc3RydWN0IHAybV9kb21haW4g KnAybSkKQEAgLTIxODIsNiArMjE3NCwxNCBAQCBpbnQgdW5tYXBfbW1pb19yZWdpb25zKHN0cnVj dCBkb21haW4gKmQsCiAgICAgcmV0dXJuIGkgPT0gbnIgPyAwIDogaSA/OiByZXQ7CiB9CiAKKyNp ZmRlZiBDT05GSUdfSFZNCisKK3ZvaWQgcDJtX2FsdHAybV9jaGVjayhzdHJ1Y3QgdmNwdSAqdiwg dWludDE2X3QgaWR4KQoreworICAgIGlmICggYWx0cDJtX2FjdGl2ZSh2LT5kb21haW4pICkKKyAg ICAgICAgcDJtX3N3aXRjaF92Y3B1X2FsdHAybV9ieV9pZCh2LCBpZHgpOworfQorCiBib29sX3Qg cDJtX3N3aXRjaF92Y3B1X2FsdHAybV9ieV9pZChzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50 IGlkeCkKIHsKICAgICBzdHJ1Y3QgZG9tYWluICpkID0gdi0+ZG9tYWluOwpAQCAtMjU1OSw2ICsy NTU5LDcgQEAgaW50IHAybV9hbHRwMm1fcHJvcGFnYXRlX2NoYW5nZShzdHJ1Y3QgZG9tYWluICpk LCBnZm5fdCBnZm4sCiAKICAgICByZXR1cm4gcmV0OwogfQorI2VuZGlmIC8qIENPTkZJR19IVk0g Ki8KIAogLyoqKiBBdWRpdCAqKiovCiAKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vdm1fZXZlbnQu YyBiL3hlbi9jb21tb24vdm1fZXZlbnQuYwppbmRleCBhM2JiZmM5NDc0Li4xMjI5M2MxNTg4IDEw MDY0NAotLS0gYS94ZW4vY29tbW9uL3ZtX2V2ZW50LmMKKysrIGIveGVuL2NvbW1vbi92bV9ldmVu dC5jCkBAIC00MjksOSArNDI5LDExIEBAIHZvaWQgdm1fZXZlbnRfcmVzdW1lKHN0cnVjdCBkb21h aW4gKmQsIHN0cnVjdCB2bV9ldmVudF9kb21haW4gKnZlZCkKICAgICAgICAgICAgICAqLwogICAg ICAgICAgICAgdm1fZXZlbnRfdG9nZ2xlX3NpbmdsZXN0ZXAoZCwgdiwgJnJzcCk7CiAKKyNpZmRl ZiBDT05GSUdfSFZNCiAgICAgICAgICAgICAvKiBDaGVjayBmb3IgYWx0cDJtIHN3aXRjaCAqLwog ICAgICAgICAgICAgaWYgKCByc3AuZmxhZ3MgJiBWTV9FVkVOVF9GTEFHX0FMVEVSTkFURV9QMk0g KQogICAgICAgICAgICAgICAgIHAybV9hbHRwMm1fY2hlY2sodiwgcnNwLmFsdHAybV9pZHgpOwor I2VuZGlmCiAKICAgICAgICAgICAgIGlmICggcnNwLmZsYWdzICYgVk1fRVZFTlRfRkxBR19TRVRf UkVHSVNURVJTICkKICAgICAgICAgICAgICAgICB2bV9ldmVudF9zZXRfcmVnaXN0ZXJzKHYsICZy c3ApOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9hbHRwMm0uaCBiL3hlbi9pbmNs dWRlL2FzbS14ODYvYWx0cDJtLmgKaW5kZXggNjRjNzYxODczZS4uNDFmZGQ4MjhhMiAxMDA2NDQK LS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9hbHRwMm0uaAorKysgYi94ZW4vaW5jbHVkZS9hc20t eDg2L2FsdHAybS5oCkBAIC0xOCwxMiArMTgsMTQgQEAKICNpZm5kZWYgX19BU01fWDg2X0FMVFAy TV9ICiAjZGVmaW5lIF9fQVNNX1g4Nl9BTFRQMk1fSAogCisjaWZkZWYgQ09ORklHX0hWTQorCiAj aW5jbHVkZSA8eGVuL3R5cGVzLmg+CiAjaW5jbHVkZSA8eGVuL3NjaGVkLmg+ICAgICAgICAgLyog Zm9yIHN0cnVjdCB2Y3B1LCBzdHJ1Y3QgZG9tYWluICovCiAjaW5jbHVkZSA8YXNtL2h2bS92Y3B1 Lmg+ICAgICAgLyogZm9yIHZjcHVfYWx0cDJtICovCiAKIC8qIEFsdGVybmF0ZSBwMm0gSFZNIG9u L29mZiBwZXIgZG9tYWluICovCi1zdGF0aWMgaW5saW5lIGJvb2xfdCBhbHRwMm1fYWN0aXZlKGNv bnN0IHN0cnVjdCBkb21haW4gKmQpCitzdGF0aWMgaW5saW5lIGJvb2wgYWx0cDJtX2FjdGl2ZShj b25zdCBzdHJ1Y3QgZG9tYWluICpkKQogewogICAgIHJldHVybiBkLT5hcmNoLmFsdHAybV9hY3Rp dmU7CiB9CkBAIC0zNyw1ICszOSwxNCBAQCBzdGF0aWMgaW5saW5lIHVpbnQxNl90IGFsdHAybV92 Y3B1X2lkeChjb25zdCBzdHJ1Y3QgdmNwdSAqdikKIHsKICAgICByZXR1cm4gdmNwdV9hbHRwMm0o dikucDJtaWR4OwogfQorI2Vsc2UKKworc3RhdGljIGlubGluZSBib29sIGFsdHAybV9hY3RpdmUo Y29uc3Qgc3RydWN0IGRvbWFpbiAqZCkKK3sKKyAgICByZXR1cm4gZmFsc2U7Cit9CisKK3VpbnQx Nl90IGFsdHAybV92Y3B1X2lkeChjb25zdCBzdHJ1Y3QgdmNwdSAqdik7CisjZW5kaWYKIAogI2Vu ZGlmIC8qIF9fQVNNX1g4Nl9BTFRQMk1fSCAqLwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNt LXg4Ni9kb21haW4uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmgKaW5kZXggYjQ2Y2Zi MGNlNC4uY2IwNzIxZTlkNSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4u aAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2RvbWFpbi5oCkBAIC0zMzcsMTMgKzMzNywxMyBA QCBzdHJ1Y3QgYXJjaF9kb21haW4KICAgICAvKiBuZXN0ZWRodm06IHRyYW5zbGF0ZSBsMiBndWVz dCBwaHlzaWNhbCB0byBob3N0IHBoeXNpY2FsICovCiAgICAgc3RydWN0IHAybV9kb21haW4gKm5l c3RlZF9wMm1bTUFYX05FU1RFRFAyTV07CiAgICAgbW1fbG9ja190IG5lc3RlZF9wMm1fbG9jazsK LSNlbmRpZgogCiAgICAgLyogYWx0cDJtOiBhbGxvdyBtdWx0aXBsZSBjb3BpZXMgb2YgaG9zdCBw Mm0gKi8KICAgICBib29sX3QgYWx0cDJtX2FjdGl2ZTsKICAgICBzdHJ1Y3QgcDJtX2RvbWFpbiAq YWx0cDJtX3AybVtNQVhfQUxUUDJNXTsKICAgICBtbV9sb2NrX3QgYWx0cDJtX2xpc3RfbG9jazsK ICAgICB1aW50NjRfdCAqYWx0cDJtX2VwdHA7CisjZW5kaWYKIAogICAgIC8qIE5CLiBwcm90ZWN0 ZWQgYnkgZC0+ZXZlbnRfbG9jayBhbmQgYnkgaXJxX2Rlc2NbaXJxXS5sb2NrICovCiAgICAgc3Ry dWN0IHJhZGl4X3RyZWVfcm9vdCBpcnFfcGlycTsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2Fz bS14ODYvaHZtL2RvbWFpbi5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vZG9tYWluLmgKaW5k ZXggNzM4OGNkODk1ZS4uNmI4MWYxMDA3NCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4 Ni9odm0vZG9tYWluLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vZG9tYWluLmgKQEAg LTE5NSw3ICsxOTUsMTEgQEAgc3RydWN0IGh2bV9kb21haW4gewogICAgIH07CiB9OwogCisjaWZk ZWYgQ09ORklHX0hWTQogI2RlZmluZSBoYXBfZW5hYmxlZChkKSAgKChkKS0+YXJjaC5odm0uaGFw X2VuYWJsZWQpCisjZWxzZQorI2RlZmluZSBoYXBfZW5hYmxlZChkKSAgKHsodm9pZCkoZCk7IGZh bHNlO30pCisjZW5kaWYKIAogI2VuZGlmIC8qIF9fQVNNX1g4Nl9IVk1fRE9NQUlOX0hfXyAqLwog CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oIGIveGVuL2luY2x1ZGUvYXNt LXg4Ni9wMm0uaAppbmRleCAyMGNmM2YxYTI1Li41YjVmYWYzN2YwIDEwMDY0NAotLS0gYS94ZW4v aW5jbHVkZS9hc20teDg2L3AybS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKQEAg LTIzMSw4ICsyMzEsMTAgQEAgc3RydWN0IHAybV9kb21haW4gewogICAgICAqIGhvc3QgcDJtJ3Mg bG9jay4gKi8KICAgICBpbnQgICAgICAgICAgICAgICAgZGVmZXJfbmVzdGVkX2ZsdXNoOwogCisj aWZkZWYgQ09ORklHX0hWTQogICAgIC8qIEFsdGVybmF0ZSBwMm06IGNvdW50IG9mIHZjcHUncyBj dXJyZW50bHkgdXNpbmcgdGhpcyBwMm0uICovCiAgICAgYXRvbWljX3QgICAgICAgICAgIGFjdGl2 ZV92Y3B1czsKKyNlbmRpZgogCiAgICAgLyogUGFnZXMgdXNlZCB0byBjb25zdHJ1Y3QgdGhlIHAy bSAqLwogICAgIHN0cnVjdCBwYWdlX2xpc3RfaGVhZCBwYWdlczsKQEAgLTgyMyw3ICs4MjUsNyBA QCB2b2lkIG5lc3RlZHAybV93cml0ZV9wMm1fZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwg dW5zaWduZWQgbG9uZyBnZm4sCiAvKgogICogQWx0ZXJuYXRlIHAybTogc2hhZG93IHAybSB0YWJs ZXMgdXNlZCBmb3IgYWx0ZXJuYXRlIG1lbW9yeSB2aWV3cwogICovCi0KKyNpZmRlZiBDT05GSUdf SFZNCiAvKiBnZXQgY3VycmVudCBhbHRlcm5hdGUgcDJtIHRhYmxlICovCiBzdGF0aWMgaW5saW5l IHN0cnVjdCBwMm1fZG9tYWluICpwMm1fZ2V0X2FsdHAybShzdHJ1Y3QgdmNwdSAqdikKIHsKQEAg LTg3MCw2ICs4NzIsOSBAQCBpbnQgcDJtX2NoYW5nZV9hbHRwMm1fZ2ZuKHN0cnVjdCBkb21haW4g KmQsIHVuc2lnbmVkIGludCBpZHgsCiBpbnQgcDJtX2FsdHAybV9wcm9wYWdhdGVfY2hhbmdlKHN0 cnVjdCBkb21haW4gKmQsIGdmbl90IGdmbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgbWZuX3QgbWZuLCB1bnNpZ25lZCBpbnQgcGFnZV9vcmRlciwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcDJtX3R5cGVfdCBwMm10LCBwMm1fYWNjZXNzX3QgcDJtYSk7CisjZWxz ZQorc3RydWN0IHAybV9kb21haW4gKnAybV9nZXRfYWx0cDJtKHN0cnVjdCB2Y3B1ICp2KTsKKyNl bmRpZgogCiAvKgogICogcDJtIHR5cGUgdG8gSU9NTVUgZmxhZ3MKLS0gCjIuMTEuMAoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=