From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: [PATCH 06/15] xen: trace IRQ enabling/disabling Date: Thu, 01 Jun 2017 19:34:17 +0200 Message-ID: <149633845700.12814.7130992212550379105.stgit@Solace.fritz.box> References: <149633614204.12814.14390287626133023934.stgit@Solace.fritz.box> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dGTzJ-00007H-4e for xen-devel@lists.xenproject.org; Thu, 01 Jun 2017 17:34:21 +0000 Received: by mail-wm0-f67.google.com with SMTP id g15so13030255wmc.2 for ; Thu, 01 Jun 2017 10:34:19 -0700 (PDT) In-Reply-To: <149633614204.12814.14390287626133023934.stgit@Solace.fritz.box> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Stefano Stabellini , George Dunlap , Andrew Cooper , Jennifer Herbert , Julien Grall , Jan Beulich List-Id: xen-devel@lists.xenproject.org VHJhY2Ugd2hlbiBpbnRlcnJ1cHRzIGFyZSBkaXNhYmxlZCBhbmQgKHJlKWVuYWJsZWQuCkJhc2lj YWxseSwgd2UgcmVwbGFjZSB0aGUgSVJRIGRpc2FibGluZyBhbmQgZW5hYmxpbmcKZnVuY3Rpb25z IHdpdGggaGVscGVycyB0aGF0IGRvZXMgdGhlIHNhbWUsIGJ1dCBhbHNvCm91dHB1dCB0aGUgcHJv cGVyIHRyYWNlIHJlY29yZC4KCkZvciBwdXR0aW5nIGluIHRoZSByZWNvcmQgc29tZXRoaW5nIHRo YXQgd2lsbCBsZXQKdXMgaWRlbnRpZnkgX3doZXJlXyBpbiB0aGUgY29kZSAoaS5lLiwgaW4gd2hh dCBmdW5jdGlvbikKdGhlIElSUSBtYW5pcHVsYXRpb24gaXMgaGFwcGVuaW5nLCB1c2UgZWl0aGVy OgogLSBjdXJyZW50X3RleHRfYWRkcigpLAogLSBvciBfX2J1aWx0aW5fcmV0dXJuX2FkZHJlc3Mo MCkuCgpJbiBmYWN0LCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGUgZGlzYWJsaW5nL2VuYWJsaW5n CmhhcHBlbnMgaW4gbWFjcm9zIChsaWtlIGZvciBsb2NhbF9pcnFfZGlzYWJsZSgpIGFuZApsb2Nh bF9pcnFfZW5hYmxlKCkpIG9yIGluIGFjdHVhbCBmdW5jdGlvbnMgKGxpa2UgaW4Kc3Bpbl9sb2Nr X2lycSooKSksIGl0IGlzIGVpdGhlcjoKIC0gdGhlIGFjdHVhbCBjb250ZW50IG9mIHRoZSBpbnN0 cnVjdGlvbiBwb2ludGVyIHdoZW4KICAgSVJRIGFyZSBkaXNhYmxlZC9lbmFibGVkLAogLSBvciB0 aGUgcmV0dXJuIGFkZHJlc3Mgb2YgdGhlIHV0aWxpdHkgZnVuY3Rpb24gd2hlcmUKICAgSVJRIGFy ZSBkaXNhYmxlZC9lbmFibGVkLAp0aGF0IHdpbGwgdGVsbCB1cyB3aGF0IGl0IGlzIHRoZSBhY3R1 YWwgcGllY2Ugb2YgY29kZQp0aGF0IGlzIGFza2luZyBmb3IgdGhlIElSUSBtYW5pcHVsYXRpb24g b3BlcmF0aW9uLgoKR2F0ZSB0aGlzIHdpdGggaXRzIHNwZWNpZmljIEtjb25maWcgb3B0aW9uLCBh bmQga2VlcAppdCBpbiBkaXNhYmxlZCBzdGF0ZSBieSBkZWZhdWx0IChpLmUuLCBkb24ndCBidWls ZCBpdCwKaWYgbm90IGV4cGxpY2l0bHkgc3BlY2lmaWVkKSwgYXMgdGhlIGltcGFjdCBvbgpwZXJm b3JtYW5jZSBtYXkgYmUgbm9uIG5lZ2xpZ2libGUuCgpTaWduZWQtb2ZmLWJ5OiBEYXJpbyBGYWdn aW9saSA8ZGFyaW8uZmFnZ2lvbGlAY2l0cml4LmNvbT4KLS0tCkNjOiBHZW9yZ2UgRHVubGFwIDxn ZW9yZ2UuZHVubGFwQGV1LmNpdHJpeC5jb20+CkNjOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFi ZWxsaW5pQGtlcm5lbC5vcmc+CkNjOiBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBhcm0uY29t PgpDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8 YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KQ2M6IEplbm5pZmVyIEhlcmJlcnQgPGplbm5pZmVy LmhlcmJlcnRAY2l0cml4LmNvbT4KLS0tCiB4ZW4vS2NvbmZpZy5kZWJ1ZyAgICAgICAgICAgICAg ICAgIHwgICAxMSArKysrLQogeGVuL2NvbW1vbi9zcGlubG9jay5jICAgICAgICAgICAgICB8ICAg MTYgKysrKystLQogeGVuL2NvbW1vbi90cmFjZS5jICAgICAgICAgICAgICAgICB8ICAgMTAgKysr LQogeGVuL2luY2x1ZGUvYXNtLWFybS9hcm0zMi9zeXN0ZW0uaCB8ICAgMTIgKysrKysKIHhlbi9p bmNsdWRlL2FzbS1hcm0vYXJtNjQvc3lzdGVtLmggfCAgIDEyICsrKysrCiB4ZW4vaW5jbHVkZS9h c20teDg2L3N5c3RlbS5oICAgICAgIHwgICA4NSArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0KIHhlbi9pbmNsdWRlL3B1YmxpYy90cmFjZS5oICAgICAgICAgfCAgICAyICsKIHhl bi9pbmNsdWRlL3hlbi9yd2xvY2suaCAgICAgICAgICAgfCAgIDMzICsrKysrKysrKysrLS0tCiA4 IGZpbGVzIGNoYW5nZWQsIDE2MSBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS94ZW4vS2NvbmZpZy5kZWJ1ZyBiL3hlbi9LY29uZmlnLmRlYnVnCmluZGV4IDM3NGMx YzAuLjgxOTEwYzkgMTAwNjQ0Ci0tLSBhL3hlbi9LY29uZmlnLmRlYnVnCisrKyBiL3hlbi9LY29u ZmlnLmRlYnVnCkBAIC05OCw3ICs5OCw3IEBAIGNvbmZpZyBQRVJGX0FSUkFZUwogCS0tLWhlbHAt LS0KIAkgIEVuYWJsZXMgc29mdHdhcmUgcGVyZm9ybWFuY2UgY291bnRlciBhcnJheSBoaXN0b2dy YW1zLgogCi1jb25maWcgVFJBQ0lORworbWVudWNvbmZpZyBUUkFDSU5HCiAJYm9vbCAiVHJhY2lu ZyIKIAlkZWZhdWx0IHkKIAktLS1oZWxwLS0tCkBAIC0xMDYsNiArMTA2LDE1IEBAIGNvbmZpZyBU UkFDSU5HCiAJICBpbiBwZXItQ1BVIHJpbmcgYnVmZmVycy4gVGhlICd4ZW50cmFjZScgdG9vbCBj YW4gYmUgdXNlZCB0byByZWFkCiAJICB0aGUgYnVmZmVycyBhbmQgZHVtcCB0aGUgY29udGVudCBv biB0aGUgZGlzay4KIAorY29uZmlnIFRSQUNFX0lSUVNPRkYKKwlib29sICJUcmFjZSB3aGVuIElS UXMgYXJlIGRpc2FibGVkIGFuZCAocmUpZW5hYmxlZCIgaWYgRVhQRVJUID0gInkiCisJZGVmYXVs dCBuCisJZGVwZW5kcyBvbiBUUkFDSU5HCisJLS0taGVscC0tLQorCSAgTWFrZXMgaXQgcG9zc2li bGUgdG8gZ2VuZXJhdGUgZXZlbnRzIF9ldmVyeV8gdGltZSBJUlFzIGFyZSBkaXNhYmxlZAorICAg ICAgICAgIGFuZCAocmUpZW5hYmxlZCwgd2l0aCBhbHNvIGFuIGluZGljYXRpb24gb2Ygd2hlcmUg dGhhdCBoYXBwZW5lZC4KKyAgICAgICAgICBOb3RlIHRoYXQgdGhpcyBjb21lcyB3aXRoIGhpZ2gg b3ZlcmVhZCBhbmQgcHJvZHVjZXMgaHVnZSBhbW91bnQgb2YKKyAgICAgICAgICB0cmFjaW5nIGRh dGEuCiAKIGNvbmZpZyBWRVJCT1NFX0RFQlVHCiAJYm9vbCAiVmVyYm9zZSBkZWJ1ZyBtZXNzYWdl cyIKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vc3BpbmxvY2suYyBiL3hlbi9jb21tb24vc3Bpbmxv Y2suYwppbmRleCAyYTA2NDA2Li4zM2I5MDNlIDEwMDY0NAotLS0gYS94ZW4vY29tbW9uL3NwaW5s b2NrLmMKKysrIGIveGVuL2NvbW1vbi9zcGlubG9jay5jCkBAIC0xNTAsNyArMTUwLDkgQEAgdm9p ZCBfc3Bpbl9sb2NrKHNwaW5sb2NrX3QgKmxvY2spCiB2b2lkIF9zcGluX2xvY2tfaXJxKHNwaW5s b2NrX3QgKmxvY2spCiB7CiAgICAgQVNTRVJUKGxvY2FsX2lycV9pc19lbmFibGVkKCkpOwotICAg IGxvY2FsX2lycV9kaXNhYmxlKCk7CisgICAgX2xvY2FsX2lycV9kaXNhYmxlKCk7CisgICAgaWYg KCB1bmxpa2VseSh0Yl9pbml0X2RvbmUpICkKKyAgICAgICAgdHJhY2VfaXJxX2Rpc2FibGVfcmV0 KCk7CiAgICAgX3NwaW5fbG9jayhsb2NrKTsKIH0KIApAQCAtMTU4LDcgKzE2MCw5IEBAIHVuc2ln bmVkIGxvbmcgX3NwaW5fbG9ja19pcnFzYXZlKHNwaW5sb2NrX3QgKmxvY2spCiB7CiAgICAgdW5z aWduZWQgbG9uZyBmbGFnczsKIAotICAgIGxvY2FsX2lycV9zYXZlKGZsYWdzKTsKKyAgICBfbG9j YWxfaXJxX3NhdmUoZmxhZ3MpOworICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisg ICAgICAgIHRyYWNlX2lycV9zYXZlX3JldChmbGFncyk7CiAgICAgX3NwaW5fbG9jayhsb2NrKTsK ICAgICByZXR1cm4gZmxhZ3M7CiB9CkBAIC0xNzUsMTMgKzE3OSwxNyBAQCB2b2lkIF9zcGluX3Vu bG9jayhzcGlubG9ja190ICpsb2NrKQogdm9pZCBfc3Bpbl91bmxvY2tfaXJxKHNwaW5sb2NrX3Qg KmxvY2spCiB7CiAgICAgX3NwaW5fdW5sb2NrKGxvY2spOwotICAgIGxvY2FsX2lycV9lbmFibGUo KTsKKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQorICAgICAgICB0cmFjZV9pcnFf ZW5hYmxlX3JldCgpOworICAgIF9sb2NhbF9pcnFfZW5hYmxlKCk7CiB9CiAKIHZvaWQgX3NwaW5f dW5sb2NrX2lycXJlc3RvcmUoc3BpbmxvY2tfdCAqbG9jaywgdW5zaWduZWQgbG9uZyBmbGFncykK IHsKICAgICBfc3Bpbl91bmxvY2sobG9jayk7Ci0gICAgbG9jYWxfaXJxX3Jlc3RvcmUoZmxhZ3Mp OworICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHRyYWNlX2lycV9y ZXN0b3JlX3JldChmbGFncyk7CisgICAgX2xvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsKIH0KIAog aW50IF9zcGluX2lzX2xvY2tlZChzcGlubG9ja190ICpsb2NrKQpkaWZmIC0tZ2l0IGEveGVuL2Nv bW1vbi90cmFjZS5jIGIveGVuL2NvbW1vbi90cmFjZS5jCmluZGV4IDJjMTg0NjIuLjcxMjAyZGYg MTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vdHJhY2UuYworKysgYi94ZW4vY29tbW9uL3RyYWNlLmMK QEAgLTcyMiw3ICs3MjIsMTIgQEAgdm9pZCBfX3RyYWNlX3Zhcih1MzIgZXZlbnQsIGJvb2xfdCBj eWNsZXMsIHVuc2lnbmVkIGludCBleHRyYSwKICAgICAvKiBSZWFkIHRiX2luaXRfZG9uZSAvYmVm b3JlLyB0X2J1ZnMuICovCiAgICAgc21wX3JtYigpOwogCi0gICAgc3Bpbl9sb2NrX2lycXNhdmUo JnRoaXNfY3B1KHRfbG9jayksIGZsYWdzKTsKKyAgICAvKgorICAgICAqIHNwaW5fbG9ja19pcnFz YXZlKCkgd291bGQgY2FsbCBsb2NhbF9pcnFfc2F2ZSgpLCB3aGljaCAobWF5KQorICAgICAqIGNh bGwgX190cmFjZV92YXIoKS4gT3BlbiBjb2RlIGl0IHRvIGF2b2lkIHJlY3Vyc2luZy4KKyAgICAg Ki8KKyAgICBfbG9jYWxfaXJxX3NhdmUoZmxhZ3MpOworICAgIHNwaW5fbG9jaygmdGhpc19jcHUo dF9sb2NrKSk7CiAKICAgICBidWYgPSB0aGlzX2NwdSh0X2J1ZnMpOwogCkBAIC04MDksNyArODE0 LDggQEAgdm9pZCBfX3RyYWNlX3Zhcih1MzIgZXZlbnQsIGJvb2xfdCBjeWNsZXMsIHVuc2lnbmVk IGludCBleHRyYSwKICAgICBfX2luc2VydF9yZWNvcmQoYnVmLCBldmVudCwgZXh0cmEsIGN5Y2xl cywgcmVjX3NpemUsIGV4dHJhX2RhdGEpOwogCiB1bmxvY2s6Ci0gICAgc3Bpbl91bmxvY2tfaXJx cmVzdG9yZSgmdGhpc19jcHUodF9sb2NrKSwgZmxhZ3MpOworICAgIHNwaW5fdW5sb2NrKCZ0aGlz X2NwdSh0X2xvY2spKTsKKyAgICBfbG9jYWxfaXJxX3Jlc3RvcmUoZmxhZ3MpOwogCiAgICAgLyog Tm90aWZ5IHRyYWNlIGJ1ZmZlciBjb25zdW1lciB0aGF0IHdlJ3ZlIGNyb3NzZWQgdGhlIGhpZ2gg d2F0ZXIgbWFyay4gKi8KICAgICBpZiAoIGxpa2VseShidWYhPU5VTEwpCmRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS9hc20tYXJtL2FybTMyL3N5c3RlbS5oIGIveGVuL2luY2x1ZGUvYXNtLWFybS9h cm0zMi9zeXN0ZW0uaAppbmRleCBjNjE3YjQwLi4yMDg3MWFkIDEwMDY0NAotLS0gYS94ZW4vaW5j bHVkZS9hc20tYXJtL2FybTMyL3N5c3RlbS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vYXJt MzIvc3lzdGVtLmgKQEAgLTQsNiArNCw4IEBACiAKICNpbmNsdWRlIDxhc20vYXJtMzIvY21weGNo Zy5oPgogCisjaW5jbHVkZSA8eGVuL3RyYWNlLmg+CisKICNkZWZpbmUgbG9jYWxfaXJxX2Rpc2Fi bGUoKSBhc20gdm9sYXRpbGUgKCAiY3BzaWQgaSBAIGxvY2FsX2lycV9kaXNhYmxlXG4iIDogOiA6 ICJjYyIgKQogI2RlZmluZSBsb2NhbF9pcnFfZW5hYmxlKCkgIGFzbSB2b2xhdGlsZSAoICJjcHNp ZSBpIEAgbG9jYWxfaXJxX2VuYWJsZVxuIiA6IDogOiAiY2MiICkKIApAQCAtNDEsNiArNDMsMTYg QEAgc3RhdGljIGlubGluZSBpbnQgbG9jYWxfaXJxX2lzX2VuYWJsZWQodm9pZCkKICNkZWZpbmUg bG9jYWxfYWJvcnRfZW5hYmxlKCkgX19hc21fXygiY3BzaWUgYSAgQCBfX3N0YVxuIiA6IDogOiAi bWVtb3J5IiwgImNjIikKICNkZWZpbmUgbG9jYWxfYWJvcnRfZGlzYWJsZSgpIF9fYXNtX18oImNw c2lkIGEgQCBfX3N0YVxuIiA6IDogOiAibWVtb3J5IiwgImNjIikKIAorLyogV2UgZG8gbm90IHN1 cHBvcnQgdHJhY2luZyAoYXQgYWxsKSB5ZXQgKi8KKyNkZWZpbmUgdHJhY2VfaXJxX2Rpc2FibGVf cmV0KCkgICBkbyB7IH0gd2hpbGUgKCAwICkKKyNkZWZpbmUgdHJhY2VfaXJxX2VuYWJsZV9yZXQo KSAgICBkbyB7IH0gd2hpbGUgKCAwICkKKyNkZWZpbmUgdHJhY2VfaXJxX3NhdmVfcmV0KF94KSAg ICBkbyB7IH0gd2hpbGUgKCAwICkKKyNkZWZpbmUgdHJhY2VfaXJxX3Jlc3RvcmVfcmV0KF94KSBk byB7IH0gd2hpbGUgKCAwICkKKyNkZWZpbmUgX2xvY2FsX2lycV9kaXNhYmxlKCkgICAgICBsb2Nh bF9pcnFfZGlzYWJsZSgpCisjZGVmaW5lIF9sb2NhbF9pcnFfZW5hYmxlKCkgICAgICAgbG9jYWxf aXJxX2VuYWJsZSgpCisjZGVmaW5lIF9sb2NhbF9pcnFfc2F2ZShfeCkgICAgICAgbG9jYWxfaXJx X3NhdmUoX3gpCisjZGVmaW5lIF9sb2NhbF9pcnFfcmVzdG9yZShfeCkgICAgbG9jYWxfaXJxX3Jl c3RvcmUoX3gpCisKIHN0YXRpYyBpbmxpbmUgaW50IGxvY2FsX2ZpcV9pc19lbmFibGVkKHZvaWQp CiB7CiAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2Fz bS1hcm0vYXJtNjQvc3lzdGVtLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL2FybTY0L3N5c3RlbS5o CmluZGV4IDJlMmVlMjEuLjY2MDNiMGMgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0v YXJtNjQvc3lzdGVtLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLWFybS9hcm02NC9zeXN0ZW0uaApA QCAtNCw2ICs0LDggQEAKIAogI2luY2x1ZGUgPGFzbS9hcm02NC9jbXB4Y2hnLmg+CiAKKyNpbmNs dWRlIDx4ZW4vdHJhY2UuaD4KKwogLyogVXNlcyB1aW1tNCBhcyBhIGJpdG1hc2sgdG8gc2VsZWN0 IHRoZSBjbGVhcmluZyBvZiBvbmUgb3IgbW9yZSBvZgogICogdGhlIERBSUYgZXhjZXB0aW9uIG1h c2sgYml0czoKICAqIGJpdCAzIHNlbGVjdHMgdGhlIEQgbWFzaywKQEAgLTQ0LDYgKzQ2LDE2IEBA CiAgICAgICAgIDogIm1lbW9yeSIpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKIH0pCiAKKy8qIFdlIGRvIG5vdCBzdXBwb3J0IHRyYWNpbmcgKGF0IGFsbCkg eWV0ICovCisjZGVmaW5lIHRyYWNlX2lycV9kaXNhYmxlX3JldCgpICAgZG8geyB9IHdoaWxlICgg MCApCisjZGVmaW5lIHRyYWNlX2lycV9lbmFibGVfcmV0KCkgICAgZG8geyB9IHdoaWxlICggMCAp CisjZGVmaW5lIHRyYWNlX2lycV9zYXZlX3JldChfeCkgICAgZG8geyB9IHdoaWxlICggMCApCisj ZGVmaW5lIHRyYWNlX2lycV9yZXN0b3JlX3JldChfeCkgZG8geyB9IHdoaWxlICggMCApCisjZGVm aW5lIF9sb2NhbF9pcnFfZGlzYWJsZSgpICAgICAgbG9jYWxfaXJxX2Rpc2FibGUoKQorI2RlZmlu ZSBfbG9jYWxfaXJxX2VuYWJsZSgpICAgICAgIGxvY2FsX2lycV9lbmFibGUoKQorI2RlZmluZSBf bG9jYWxfaXJxX3NhdmUoX3gpICAgICAgIGxvY2FsX2lycV9zYXZlKF94KQorI2RlZmluZSBfbG9j YWxfaXJxX3Jlc3RvcmUoX3gpICAgIGxvY2FsX2lycV9yZXN0b3JlKF94KQorCiBzdGF0aWMgaW5s aW5lIGludCBsb2NhbF9pcnFfaXNfZW5hYmxlZCh2b2lkKQogewogICAgIHVuc2lnbmVkIGxvbmcg ZmxhZ3M7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3N5c3RlbS5oIGIveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9zeXN0ZW0uaAppbmRleCBlYjQ5OGY1Li4wZTdiZjAxIDEwMDY0NAotLS0g YS94ZW4vaW5jbHVkZS9hc20teDg2L3N5c3RlbS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYv c3lzdGVtLmgKQEAgLTUsNiArNSw4IEBACiAjaW5jbHVkZSA8eGVuL2JpdG9wcy5oPgogI2luY2x1 ZGUgPGFzbS9wcm9jZXNzb3IuaD4KIAorI2luY2x1ZGUgPHhlbi90cmFjZS5oPgorCiAjZGVmaW5l IHJlYWRfc3JlZyhuYW1lKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAogKHsgIHVuc2lnbmVkIGludCBfX3NlbDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwKICAgICBhc20gdm9sYXRpbGUgKCAibW92ICUlIiBTVFIobmFtZSkgIiwlMCIg OiAiPXIiIChfX3NlbCkgKTsgICBcCkBAIC0xODUsOCArMTg3LDggQEAgc3RhdGljIGFsd2F5c19p bmxpbmUgdW5zaWduZWQgbG9uZyBfX3hhZGQoCiAjZGVmaW5lIHNldF9tYih2YXIsIHZhbHVlKSBk byB7IHhjaGcoJnZhciwgdmFsdWUpOyB9IHdoaWxlICgwKQogI2RlZmluZSBzZXRfd21iKHZhciwg dmFsdWUpIGRvIHsgdmFyID0gdmFsdWU7IHdtYigpOyB9IHdoaWxlICgwKQogCi0jZGVmaW5lIGxv Y2FsX2lycV9kaXNhYmxlKCkgICAgIGFzbSB2b2xhdGlsZSAoICJjbGkiIDogOiA6ICJtZW1vcnki ICkKLSNkZWZpbmUgbG9jYWxfaXJxX2VuYWJsZSgpICAgICAgYXNtIHZvbGF0aWxlICggInN0aSIg OiA6IDogIm1lbW9yeSIgKQorI2RlZmluZSBfbG9jYWxfaXJxX2Rpc2FibGUoKSAgICBhc20gdm9s YXRpbGUgKCAiY2xpIiA6IDogOiAibWVtb3J5IiApCisjZGVmaW5lIF9sb2NhbF9pcnFfZW5hYmxl KCkgICAgIGFzbSB2b2xhdGlsZSAoICJzdGkiIDogOiA6ICJtZW1vcnkiICkKIAogLyogdXNlZCBp biB0aGUgaWRsZSBsb29wOyBzdGkgdGFrZXMgb25lIGluc3RydWN0aW9uIGN5Y2xlIHRvIGNvbXBs ZXRlICovCiAjZGVmaW5lIHNhZmVfaGFsdCgpICAgICBhc20gdm9sYXRpbGUgKCAic3RpOyBobHQi IDogOiA6ICJtZW1vcnkiICkKQEAgLTE5OCwxMiArMjAwLDEyIEBAIHN0YXRpYyBhbHdheXNfaW5s aW5lIHVuc2lnbmVkIGxvbmcgX194YWRkKAogICAgIEJVSUxEX0JVR19PTihzaXplb2YoeCkgIT0g c2l6ZW9mKGxvbmcpKTsgICAgICAgICAgICAgICAgICAgICBcCiAgICAgYXNtIHZvbGF0aWxlICgg InB1c2hmIiBfX09TICIgOyBwb3AiIF9fT1MgIiAlMCIgOiAiPWciICh4KSk7IFwKIH0pCi0jZGVm aW5lIGxvY2FsX2lycV9zYXZlKHgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKKyNkZWZpbmUgX2xvY2FsX2lycV9zYXZlKHgpICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAogKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgbG9jYWxfc2F2ZV9mbGFncyh4KTsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICBsb2NhbF9pcnFfZGlz YWJsZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIF9s b2NhbF9pcnFfZGlzYWJsZSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcCiB9KQotI2RlZmluZSBsb2NhbF9pcnFfcmVzdG9yZSh4KSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBcCisjZGVmaW5lIF9sb2NhbF9pcnFfcmVzdG9yZSh4KSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICh7ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIEJVSUxEX0JVR19P TihzaXplb2YoeCkgIT0gc2l6ZW9mKGxvbmcpKTsgICAgICAgICAgICAgICAgICAgICBcCiAgICAg YXNtIHZvbGF0aWxlICggInB1c2hmcVxuXHQiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKQEAgLTIxNCw2ICsyMTYsNzkgQEAgc3RhdGljIGFsd2F5c19pbmxpbmUgdW5zaWduZWQg bG9uZyBfX3hhZGQoCiAgICAgICAgICAgICAgICAgICAgICAgICJyaSIgKCAoeCkgJiBYODZfRUZM QUdTX0lGICkgKTsgICAgICAgICAgIFwKIH0pCiAKKyNpZmRlZiBDT05GSUdfVFJBQ0VfSVJRU09G RgorCisjZGVmaW5lIFRSQUNFX0xPQ0FMX0FERFIgKCh1aW50NjRfdCkgY3VycmVudF90ZXh0X2Fk ZHIoKSkKKyNkZWZpbmUgVFJBQ0VfUkVUX0FERFIgICAoKHVpbnQ2NF90KSBfX2J1aWx0aW5fcmV0 dXJuX2FkZHJlc3MoMCkpCisKKyNkZWZpbmUgdHJhY2VfaXJxX2Rpc2FibGUoX2EpICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorKHsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdWludDY0X3QgYWRk ciA9IF9hOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBf X3RyYWNlX3ZhcihUUkNfSFdfSVJRX0RJU0FCTEUsIDEsIHNpemVvZihhZGRyKSwgJmFkZHIpOyAg ICAgXAorfSkKKyNkZWZpbmUgdHJhY2VfaXJxX2VuYWJsZShfYSkgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAorKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdWludDY0X3QgYWRkciA9IF9hOyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBfX3RyYWNlX3Zh cihUUkNfSFdfSVJRX0VOQUJMRSwgMSwgc2l6ZW9mKGFkZHIpLCAmYWRkcik7ICAgICAgXAorfSkK KyNkZWZpbmUgdHJhY2VfaXJxX3NhdmUoX3gsIF9hKSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXAorKHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCisgICAgdWludDY0X3QgYWRkciA9IF9hOyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBpZiAoIF94ICYgWDg2X0VGTEFH U19JRiApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBfX3Ry YWNlX3ZhcihUUkNfSFdfSVJRX0RJU0FCTEUsIDEsIHNpemVvZihhZGRyKSwgJmFkZHIpOyBcCit9 KQorI2RlZmluZSB0cmFjZV9pcnFfcmVzdG9yZShfeCwgX2EpICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcCisoeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB1aW50NjRfdCBhZGRyID0gX2E7ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGlmICggX3ggJiBYODZfRUZM QUdTX0lGICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIF9f dHJhY2VfdmFyKFRSQ19IV19JUlFfRU5BQkxFLCAxLCBzaXplb2YoYWRkciksICZhZGRyKTsgIFwK K30pCisKKyNkZWZpbmUgdHJhY2VfaXJxX2Rpc2FibGVfcmV0KCkgICB0cmFjZV9pcnFfZGlzYWJs ZShUUkFDRV9SRVRfQUREUikKKyNkZWZpbmUgdHJhY2VfaXJxX2VuYWJsZV9yZXQoKSAgICB0cmFj ZV9pcnFfZW5hYmxlKFRSQUNFX1JFVF9BRERSKQorI2RlZmluZSB0cmFjZV9pcnFfc2F2ZV9yZXQo X3gpICAgIHRyYWNlX2lycV9zYXZlKF94LCBUUkFDRV9SRVRfQUREUikKKyNkZWZpbmUgdHJhY2Vf aXJxX3Jlc3RvcmVfcmV0KF94KSB0cmFjZV9pcnFfcmVzdG9yZShfeCwgVFJBQ0VfUkVUX0FERFIp CisKKyNkZWZpbmUgbG9jYWxfaXJxX2Rpc2FibGUoKSAgICAgICAgICAgICAgICAgICAgICBcCiso eyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGJv b2xfdCBpcnFvbiA9IGxvY2FsX2lycV9pc19lbmFibGVkKCk7ICAgICAgIFwKKyAgICBfbG9jYWxf aXJxX2Rpc2FibGUoKTsgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgaWYgKCB1bmxpa2Vs eSh0Yl9pbml0X2RvbmUgJiYgaXJxb24pICkgICAgICAgXAorICAgICAgICB0cmFjZV9pcnFfZGlz YWJsZShUUkFDRV9MT0NBTF9BRERSKTsgICAgIFwKK30pCisKKyNkZWZpbmUgbG9jYWxfaXJxX2Vu YWJsZSgpICAgICAgICAgICAgICAgICAgICAgICBcCisoeyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25l KSApICAgICAgICAgICAgICAgIFwKKyAgICAgICAgdHJhY2VfaXJxX2VuYWJsZShUUkFDRV9MT0NB TF9BRERSKTsgICAgICBcCisgICAgX2xvY2FsX2lycV9lbmFibGUoKTsgICAgICAgICAgICAgICAg ICAgICAgICAgXAorfSkKKworI2RlZmluZSBsb2NhbF9pcnFfc2F2ZShfeCkgICAgICAgICAgICAg ICAgICAgICAgIFwKKyh7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcCisgICAgbG9jYWxfc2F2ZV9mbGFncyhfeCk7ICAgICAgICAgICAgICAgICAgICAgICAg XAorICAgIF9sb2NhbF9pcnFfZGlzYWJsZSgpOyAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAg ICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKSAgICAgICAgICAgICAgICBcCisgICAgICAg IHRyYWNlX2lycV9zYXZlKF94LCBUUkFDRV9MT0NBTF9BRERSKTsgICAgXAorfSkKKworI2RlZmlu ZSBsb2NhbF9pcnFfcmVzdG9yZShfeCkgICAgICAgICAgICAgICAgICAgIFwKKyh7ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgaWYgKCB1bmxpa2Vs eSh0Yl9pbml0X2RvbmUpICkgICAgICAgICAgICAgICAgXAorICAgICAgICB0cmFjZV9pcnFfcmVz dG9yZShfeCwgVFJBQ0VfTE9DQUxfQUREUik7IFwKKyAgICBfbG9jYWxfaXJxX3Jlc3RvcmUoX3gp OyAgICAgICAgICAgICAgICAgICAgICBcCit9KQorI2Vsc2UgLyogIVRSQUNFX0lSUVNPRkYgKi8K KyNkZWZpbmUgdHJhY2VfaXJxX2Rpc2FibGVfcmV0KCkgICBkbyB7IH0gd2hpbGUgKCAwICkKKyNk ZWZpbmUgdHJhY2VfaXJxX2VuYWJsZV9yZXQoKSAgICBkbyB7IH0gd2hpbGUgKCAwICkKKyNkZWZp bmUgdHJhY2VfaXJxX3NhdmVfcmV0KF94KSAgICBkbyB7IH0gd2hpbGUgKCAwICkKKyNkZWZpbmUg dHJhY2VfaXJxX3Jlc3RvcmVfcmV0KF94KSBkbyB7IH0gd2hpbGUgKCAwICkKKyNkZWZpbmUgbG9j YWxfaXJxX2Rpc2FibGUoKSAgICAgICBfbG9jYWxfaXJxX2Rpc2FibGUoKQorI2RlZmluZSBsb2Nh bF9pcnFfZW5hYmxlKCkgICAgICAgIF9sb2NhbF9pcnFfZW5hYmxlKCkKKyNkZWZpbmUgbG9jYWxf aXJxX3NhdmUoX3gpICAgICAgICBfbG9jYWxfaXJxX3NhdmUoX3gpCisjZGVmaW5lIGxvY2FsX2ly cV9yZXN0b3JlKF94KSAgICAgX2xvY2FsX2lycV9yZXN0b3JlKF94KQorI2VuZGlmIC8qIFRSQUNF X0lSUVNPRkYgKi8KKwogc3RhdGljIGlubGluZSBpbnQgbG9jYWxfaXJxX2lzX2VuYWJsZWQodm9p ZCkKIHsKICAgICB1bnNpZ25lZCBsb25nIGZsYWdzOwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUv cHVibGljL3RyYWNlLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvdHJhY2UuaAppbmRleCBmNjZhN2Fm Li4xNjkyYTc5IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9wdWJsaWMvdHJhY2UuaAorKysgYi94 ZW4vaW5jbHVkZS9wdWJsaWMvdHJhY2UuaApAQCAtMjc1LDYgKzI3NSw4IEBACiAjZGVmaW5lIFRS Q19IV19JUlFfRU5URVIgICAgICAgICAgICAgIChUUkNfSFdfSVJRICsgMHhBKQogI2RlZmluZSBU UkNfSFdfSVJRX0dVRVNUICAgICAgICAgICAgICAoVFJDX0hXX0lSUSArIDB4QikKICNkZWZpbmUg VFJDX0hXX0lSUV9FWElUICAgICAgICAgICAgICAgKFRSQ19IV19JUlEgKyAweEMpCisjZGVmaW5l IFRSQ19IV19JUlFfRElTQUJMRSAgICAgICAgICAgIChUUkNfSFdfSVJRICsgMHhEKQorI2RlZmlu ZSBUUkNfSFdfSVJRX0VOQUJMRSAgICAgICAgICAgICAoVFJDX0hXX0lSUSArIDB4RSkKIAogLyoK ICAqIEV2ZW50IEZsYWdzCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vcndsb2NrLmggYi94 ZW4vaW5jbHVkZS94ZW4vcndsb2NrLmgKaW5kZXggMzU2NTdjNS4uMDRmNTBlNSAxMDA2NDQKLS0t IGEveGVuL2luY2x1ZGUveGVuL3J3bG9jay5oCisrKyBiL3hlbi9pbmNsdWRlL3hlbi9yd2xvY2su aApAQCAtNzMsMTQgKzczLDE5IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBfcmVhZF9sb2NrKHJ3bG9j a190ICpsb2NrKQogc3RhdGljIGlubGluZSB2b2lkIF9yZWFkX2xvY2tfaXJxKHJ3bG9ja190ICps b2NrKQogewogICAgIEFTU0VSVChsb2NhbF9pcnFfaXNfZW5hYmxlZCgpKTsKLSAgICBsb2NhbF9p cnFfZGlzYWJsZSgpOworICAgIF9sb2NhbF9pcnFfZGlzYWJsZSgpOworICAgIGlmICggdW5saWtl bHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHRyYWNlX2lycV9kaXNhYmxlX3JldCgpOwogICAg IF9yZWFkX2xvY2sobG9jayk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgbG9uZyBfcmVh ZF9sb2NrX2lycXNhdmUocndsb2NrX3QgKmxvY2spCiB7CiAgICAgdW5zaWduZWQgbG9uZyBmbGFn czsKLSAgICBsb2NhbF9pcnFfc2F2ZShmbGFncyk7CisKKyAgICBfbG9jYWxfaXJxX3NhdmUoZmxh Z3MpOworICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHRyYWNlX2ly cV9zYXZlX3JldChmbGFncyk7CiAgICAgX3JlYWRfbG9jayhsb2NrKTsKICAgICByZXR1cm4gZmxh Z3M7CiB9CkBAIC0xMDAsMTMgKzEwNSwxNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgX3JlYWRfdW5s b2NrKHJ3bG9ja190ICpsb2NrKQogc3RhdGljIGlubGluZSB2b2lkIF9yZWFkX3VubG9ja19pcnEo cndsb2NrX3QgKmxvY2spCiB7CiAgICAgX3JlYWRfdW5sb2NrKGxvY2spOwotICAgIGxvY2FsX2ly cV9lbmFibGUoKTsKKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQorICAgICAgICB0 cmFjZV9pcnFfZW5hYmxlX3JldCgpOworICAgIF9sb2NhbF9pcnFfZW5hYmxlKCk7CiB9CiAKIHN0 YXRpYyBpbmxpbmUgdm9pZCBfcmVhZF91bmxvY2tfaXJxcmVzdG9yZShyd2xvY2tfdCAqbG9jaywg dW5zaWduZWQgbG9uZyBmbGFncykKIHsKICAgICBfcmVhZF91bmxvY2sobG9jayk7Ci0gICAgbG9j YWxfaXJxX3Jlc3RvcmUoZmxhZ3MpOworICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSAp CisgICAgICAgIHRyYWNlX2lycV9yZXN0b3JlX3JldChmbGFncyk7CisgICAgX2xvY2FsX2lycV9y ZXN0b3JlKGZsYWdzKTsKIH0KIAogc3RhdGljIGlubGluZSBpbnQgX3J3X2lzX2xvY2tlZChyd2xv Y2tfdCAqbG9jaykKQEAgLTEzMCw3ICsxMzksOSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgX3dyaXRl X2xvY2socndsb2NrX3QgKmxvY2spCiBzdGF0aWMgaW5saW5lIHZvaWQgX3dyaXRlX2xvY2tfaXJx KHJ3bG9ja190ICpsb2NrKQogewogICAgIEFTU0VSVChsb2NhbF9pcnFfaXNfZW5hYmxlZCgpKTsK LSAgICBsb2NhbF9pcnFfZGlzYWJsZSgpOworICAgIF9sb2NhbF9pcnFfZGlzYWJsZSgpOworICAg IGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHRyYWNlX2lycV9kaXNhYmxl X3JldCgpOwogICAgIF93cml0ZV9sb2NrKGxvY2spOwogfQogCkBAIC0xMzgsNyArMTQ5LDkgQEAg c3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIF93cml0ZV9sb2NrX2lycXNhdmUocndsb2NrX3Qg KmxvY2spCiB7CiAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKIAotICAgIGxvY2FsX2lycV9zYXZl KGZsYWdzKTsKKyAgICBfbG9jYWxfaXJxX3NhdmUoZmxhZ3MpOworICAgIGlmICggdW5saWtlbHko dGJfaW5pdF9kb25lKSApCisgICAgICAgIHRyYWNlX2lycV9zYXZlX3JldChmbGFncyk7CiAgICAg X3dyaXRlX2xvY2sobG9jayk7CiAgICAgcmV0dXJuIGZsYWdzOwogfQpAQCAtMTcxLDEzICsxODQs MTcgQEAgc3RhdGljIGlubGluZSB2b2lkIF93cml0ZV91bmxvY2socndsb2NrX3QgKmxvY2spCiBz dGF0aWMgaW5saW5lIHZvaWQgX3dyaXRlX3VubG9ja19pcnEocndsb2NrX3QgKmxvY2spCiB7CiAg ICAgX3dyaXRlX3VubG9jayhsb2NrKTsKLSAgICBsb2NhbF9pcnFfZW5hYmxlKCk7CisgICAgaWYg KCB1bmxpa2VseSh0Yl9pbml0X2RvbmUpICkKKyAgICAgICAgdHJhY2VfaXJxX2VuYWJsZV9yZXQo KTsKKyAgICBfbG9jYWxfaXJxX2VuYWJsZSgpOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgX3dy aXRlX3VubG9ja19pcnFyZXN0b3JlKHJ3bG9ja190ICpsb2NrLCB1bnNpZ25lZCBsb25nIGZsYWdz KQogewogICAgIF93cml0ZV91bmxvY2sobG9jayk7Ci0gICAgbG9jYWxfaXJxX3Jlc3RvcmUoZmxh Z3MpOworICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHRyYWNlX2ly cV9yZXN0b3JlX3JldChmbGFncyk7CisgICAgX2xvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsKIH0K IAogc3RhdGljIGlubGluZSBpbnQgX3J3X2lzX3dyaXRlX2xvY2tlZChyd2xvY2tfdCAqbG9jaykK CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK