From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: [PATCH v2 08/11] xen: credit2: only marshall trace point arguments if tracing enabled Date: Fri, 15 Jul 2016 16:50:04 +0200 Message-ID: <146859420441.10217.7290796857658609672.stgit@Solace.fritz.box> References: <146859397891.10217.10155969474613302167.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 ([85.158.143.247]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bO4RN-0006Ql-6V for xen-devel@lists.xenproject.org; Fri, 15 Jul 2016 14:50:09 +0000 Received: by mail-wm0-f68.google.com with SMTP id o80so2475589wme.0 for ; Fri, 15 Jul 2016 07:50:07 -0700 (PDT) In-Reply-To: <146859397891.10217.10155969474613302167.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: Anshul Makkar , George Dunlap , David Vrabel List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogRGFyaW8gRmFnZ2lvbGkgPGRhcmlvLmZhZ2dpb2xpQGNpdHJpeC5jb20+ Ci0tLQpDYzogR2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBjaXRyaXguY29tPgpDYzogQW5z aHVsIE1ha2thciA8YW5zaHVsLm1ha2thckBjaXRyaXguY29tPgpDYzogRGF2aWQgVnJhYmVsIDxk YXZpZC52cmFiZWxAY2l0cml4LmNvbT4KLS0tCkNoYW5nZXMgZnJvbSB2MToKICogYXZvaWQgc3Ry YXkgY29kZSByZW1vdmFsIGluIGJhbGFuY2VfbG9hZCgpLCBhcyBwb2ludGVkIG91dCBieSBHZW9y Z2UKICAgZHVyaW5nIHJldmlldy4KLS0tCiB4ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYyB8ICAx MTIgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94 ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCmlu ZGV4IGE0YWVjNzMuLmJlMjdiYTMgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0 Mi5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCkBAIC02MzgsNiArNjM4LDcgQEAg X191cGRhdGVfcnVucV9sb2FkKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKIAogICAgIEFT U0VSVChycWQtPmF2Z2xvYWQgPD0gU1RJTUVfTUFYICYmIHJxZC0+Yl9hdmdsb2FkIDw9IFNUSU1F X01BWCk7CiAKKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQogICAgIHsKICAgICAg ICAgc3RydWN0IHsKICAgICAgICAgICAgIHVpbnQ2NF90IHJxX2F2Z2xvYWQsIGJfYXZnbG9hZDsK QEAgLTY0OCw5ICs2NDksOSBAQCBfX3VwZGF0ZV9ydW5xX2xvYWQoY29uc3Qgc3RydWN0IHNjaGVk dWxlciAqb3BzLAogICAgICAgICBkLnJxX2F2Z2xvYWQgPSBycWQtPmF2Z2xvYWQ7CiAgICAgICAg IGQuYl9hdmdsb2FkID0gcnFkLT5iX2F2Z2xvYWQ7CiAgICAgICAgIGQuc2hpZnQgPSBQOwotICAg ICAgICB0cmFjZV92YXIoVFJDX0NTQ0hFRDJfVVBEQVRFX1JVTlFfTE9BRCwgMSwKLSAgICAgICAg ICAgICAgICAgIHNpemVvZihkKSwKLSAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICop JmQpOworICAgICAgICBfX3RyYWNlX3ZhcihUUkNfQ1NDSEVEMl9VUERBVEVfUlVOUV9MT0FELCAx LAorICAgICAgICAgICAgICAgICAgICBzaXplb2YoZCksCisgICAgICAgICAgICAgICAgICAgICh1 bnNpZ25lZCBjaGFyICopJmQpOwogICAgIH0KIH0KIApAQCAtNjkzLDYgKzY5NCw3IEBAIF9fdXBk YXRlX3N2Y19sb2FkKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKICAgICB9CiAgICAgc3Zj LT5sb2FkX2xhc3RfdXBkYXRlID0gbm93OwogCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0X2Rv bmUpICkKICAgICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1aW50NjRfdCB2X2F2 Z2xvYWQ7CkBAIC03MDMsOSArNzA1LDkgQEAgX191cGRhdGVfc3ZjX2xvYWQoY29uc3Qgc3RydWN0 IHNjaGVkdWxlciAqb3BzLAogICAgICAgICBkLnZjcHUgPSBzdmMtPnZjcHUtPnZjcHVfaWQ7CiAg ICAgICAgIGQudl9hdmdsb2FkID0gc3ZjLT5hdmdsb2FkOwogICAgICAgICBkLnNoaWZ0ID0gUDsK LSAgICAgICAgdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1VQREFURV9WQ1BVX0xPQUQsIDEsCi0gICAg ICAgICAgICAgICAgICBzaXplb2YoZCksCi0gICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hh ciAqKSZkKTsKKyAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfVVBEQVRFX1ZDUFVfTE9B RCwgMSwKKyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAg ICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICB9CiB9CiAKQEAgLTc2MSw2ICs3NjMsNyBAQCBy dW5xX2luc2VydChjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVjdCBjc2NoZWQyX3Zj cHUgKnN2YykKIAogICAgIHBvcyA9IF9fcnVucV9pbnNlcnQocnVucSwgc3ZjKTsKIAorICAgIGlm ICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCiAgICAgewogICAgICAgICBzdHJ1Y3QgewogICAg ICAgICAgICAgdW5zaWduZWQgdmNwdToxNiwgZG9tOjE2OwpAQCAtNzY5LDkgKzc3Miw5IEBAIHJ1 bnFfaW5zZXJ0KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IGNzY2hlZDJfdmNw dSAqc3ZjKQogICAgICAgICBkLmRvbSA9IHN2Yy0+dmNwdS0+ZG9tYWluLT5kb21haW5faWQ7CiAg ICAgICAgIGQudmNwdSA9IHN2Yy0+dmNwdS0+dmNwdV9pZDsKICAgICAgICAgZC5wb3MgPSBwb3M7 Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9SVU5RX1BPUywgMSwKLSAgICAgICAgICAg ICAgICAgIHNpemVvZihkKSwKLSAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICopJmQp OworICAgICAgICBfX3RyYWNlX3ZhcihUUkNfQ1NDSEVEMl9SVU5RX1BPUywgMSwKKyAgICAgICAg ICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hh ciAqKSZkKTsKICAgICB9CiAKICAgICByZXR1cm47CkBAIC04MTQsNyArODE3LDcgQEAgcnVucV90 aWNrbGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3QgY3NjaGVkMl92Y3B1ICpu ZXcsIHNfdGltZV90IG5vdykKIAogICAgIEFTU0VSVChuZXctPnJxZCA9PSBycWQpOwogCi0gICAg LyogVFJBQ0UgKi8KKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQogICAgIHsKICAg ICAgICAgc3RydWN0IHsKICAgICAgICAgICAgIHVuc2lnbmVkIHZjcHU6MTYsIGRvbToxNjsKQEAg LTgyNCw5ICs4MjcsOSBAQCBydW5xX3RpY2tsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMs IHN0cnVjdCBjc2NoZWQyX3ZjcHUgKm5ldywgc190aW1lX3Qgbm93KQogICAgICAgICBkLnZjcHUg PSBuZXctPnZjcHUtPnZjcHVfaWQ7CiAgICAgICAgIGQucHJvY2Vzc29yID0gbmV3LT52Y3B1LT5w cm9jZXNzb3I7CiAgICAgICAgIGQuY3JlZGl0ID0gbmV3LT5jcmVkaXQ7Ci0gICAgICAgIHRyYWNl X3ZhcihUUkNfQ1NDSEVEMl9USUNLTEVfTkVXLCAxLAotICAgICAgICAgICAgICAgICAgc2l6ZW9m KGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CisgICAgICAgIF9f dHJhY2VfdmFyKFRSQ19DU0NIRUQyX1RJQ0tMRV9ORVcsIDEsCisgICAgICAgICAgICAgICAgICAg IHNpemVvZihkKSwKKyAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CiAg ICAgfQogCiAgICAgLyoKQEAgLTg4NCw3ICs4ODcsOCBAQCBydW5xX3RpY2tsZShjb25zdCBzdHJ1 Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVjdCBjc2NoZWQyX3ZjcHUgKm5ldywgc190aW1lX3Qgbm93 KQogICAgICAgICAgICAgbG93ZXN0ID0gY3VyLT5jcmVkaXQ7CiAgICAgICAgIH0KIAotICAgICAg ICAvKiBUUkFDRSAqLyB7CisgICAgICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisg ICAgICAgIHsKICAgICAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICAgICAgdW5zaWduZWQg dmNwdToxNiwgZG9tOjE2OwogICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNyZWRpdDsKQEAgLTg5 Miw5ICs4OTYsOSBAQCBydW5xX3RpY2tsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0 cnVjdCBjc2NoZWQyX3ZjcHUgKm5ldywgc190aW1lX3Qgbm93KQogICAgICAgICAgICAgZC5kb20g PSBjdXItPnZjcHUtPmRvbWFpbi0+ZG9tYWluX2lkOwogICAgICAgICAgICAgZC52Y3B1ID0gY3Vy LT52Y3B1LT52Y3B1X2lkOwogICAgICAgICAgICAgZC5jcmVkaXQgPSBjdXItPmNyZWRpdDsKLSAg ICAgICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9USUNLTEVfQ0hFQ0ssIDEsCi0gICAgICAg ICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25l ZCBjaGFyICopJmQpOworICAgICAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfVElDS0xF X0NIRUNLLCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAg ICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CiAgICAgICAgIH0KICAgICB9CiAK QEAgLTkxMiwxNCArOTE2LDE1IEBAIHJ1bnFfdGlja2xlKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIg Km9wcywgc3RydWN0IGNzY2hlZDJfdmNwdSAqbmV3LCBzX3RpbWVfdCBub3cpCiAgdGlja2xlOgog ICAgIEJVR19PTihpcGlkID09IC0xKTsKIAotICAgIC8qIFRSQUNFICovIHsKKyAgICBpZiAoIHVu bGlrZWx5KHRiX2luaXRfZG9uZSkgKQorICAgIHsKICAgICAgICAgc3RydWN0IHsKICAgICAgICAg ICAgIHVuc2lnbmVkIGNwdToxNiwgcGFkOjE2OwogICAgICAgICB9IGQ7CiAgICAgICAgIGQuY3B1 ID0gaXBpZDsgZC5wYWQgPSAwOwotICAgICAgICB0cmFjZV92YXIoVFJDX0NTQ0hFRDJfVElDS0xF LCAxLAotICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVu c2lnbmVkIGNoYXIgKikmZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1RJQ0tM RSwgMSwKKyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAg ICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICB9CiAgICAgX19jcHVtYXNrX3NldF9jcHUoaXBp ZCwgJnJxZC0+dGlja2xlZCk7CiAgICAgY3B1X3JhaXNlX3NvZnRpcnEoaXBpZCwgU0NIRURVTEVf U09GVElSUSk7CkBAIC05ODEsNyArOTg2LDggQEAgc3RhdGljIHZvaWQgcmVzZXRfY3JlZGl0KGNv bnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgaW50IGNwdSwgc190aW1lX3Qgbm93LAogCiAgICAg ICAgIHN2Yy0+c3RhcnRfdGltZSA9IG5vdzsKIAotICAgICAgICAvKiBUUkFDRSAqLyB7CisgICAg ICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHsKICAgICAgICAgICAg IHN0cnVjdCB7CiAgICAgICAgICAgICAgICAgdW5zaWduZWQgdmNwdToxNiwgZG9tOjE2OwogICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGNyZWRpdF9zdGFydCwgY3JlZGl0X2VuZDsKQEAgLTk5Miw5 ICs5OTgsOSBAQCBzdGF0aWMgdm9pZCByZXNldF9jcmVkaXQoY29uc3Qgc3RydWN0IHNjaGVkdWxl ciAqb3BzLCBpbnQgY3B1LCBzX3RpbWVfdCBub3csCiAgICAgICAgICAgICBkLmNyZWRpdF9zdGFy dCA9IHN0YXJ0X2NyZWRpdDsKICAgICAgICAgICAgIGQuY3JlZGl0X2VuZCA9IHN2Yy0+Y3JlZGl0 OwogICAgICAgICAgICAgZC5tdWx0aXBsaWVyID0gbTsKLSAgICAgICAgICAgIHRyYWNlX3ZhcihU UkNfQ1NDSEVEMl9DUkVESVRfUkVTRVQsIDEsCi0gICAgICAgICAgICAgICAgICAgICAgc2l6ZW9m KGQpLAotICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICopJmQpOworICAgICAg ICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfQ1JFRElUX1JFU0VULCAxLAorICAgICAgICAg ICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAgICAgKHVuc2ln bmVkIGNoYXIgKikmZCk7CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTEwMzAsNyArMTAzNiw3IEBA IHZvaWQgYnVybl9jcmVkaXRzKHN0cnVjdCBjc2NoZWQyX3J1bnF1ZXVlX2RhdGEgKnJxZCwKICAg ICAgICAgICAgICAgICAgX19mdW5jX18sIG5vdywgc3ZjLT5zdGFydF90aW1lKTsKICAgICB9CiAK LSAgICAvKiBUUkFDRSAqLworICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCiAgICAg ewogICAgICAgICBzdHJ1Y3QgewogICAgICAgICAgICAgdW5zaWduZWQgdmNwdToxNiwgZG9tOjE2 OwpAQCAtMTA0MSw5ICsxMDQ3LDkgQEAgdm9pZCBidXJuX2NyZWRpdHMoc3RydWN0IGNzY2hlZDJf cnVucXVldWVfZGF0YSAqcnFkLAogICAgICAgICBkLnZjcHUgPSBzdmMtPnZjcHUtPnZjcHVfaWQ7 CiAgICAgICAgIGQuY3JlZGl0ID0gc3ZjLT5jcmVkaXQ7CiAgICAgICAgIGQuZGVsdGEgPSBkZWx0 YTsKLSAgICAgICAgdHJhY2VfdmFyKFRSQ19DU0NIRUQyX0NSRURJVF9CVVJOLCAxLAotICAgICAg ICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIg KikmZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX0NSRURJVF9CVVJOLCAxLAor ICAgICAgICAgICAgICAgICAgICBzaXplb2YoZCksCisgICAgICAgICAgICAgICAgICAgICh1bnNp Z25lZCBjaGFyICopJmQpOwogICAgIH0KIH0KIApAQCAtMTA3OSwxNiArMTA4NSwxNiBAQCBzdGF0 aWMgdm9pZCB1cGRhdGVfbWF4X3dlaWdodChzdHJ1Y3QgY3NjaGVkMl9ydW5xdWV1ZV9kYXRhICpy cWQsIGludCBuZXdfd2VpZ2h0LAogICAgICAgICBTQ0hFRF9TVEFUX0NSQU5LKHVwZF9tYXhfd2Vp Z2h0X2Z1bGwpOwogICAgIH0KIAotICAgIC8qIFRSQUNFICovCisgICAgaWYgKCB1bmxpa2VseSh0 Yl9pbml0X2RvbmUpICkKICAgICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1bnNp Z25lZCBycWk6MTYsIG1heF93ZWlnaHQ6MTY7CiAgICAgICAgIH0gZDsKICAgICAgICAgZC5ycWkg PSBycWQtPmlkOwogICAgICAgICBkLm1heF93ZWlnaHQgPSBycWQtPm1heF93ZWlnaHQ7Ci0gICAg ICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9SVU5RX01BWF9XRUlHSFQsIDEsCi0gICAgICAgICAg ICAgICAgICBzaXplb2YoZCksCi0gICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZk KTsKKyAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfUlVOUV9NQVhfV0VJR0hULCAxLAor ICAgICAgICAgICAgICAgICAgICBzaXplb2YoZCksCisgICAgICAgICAgICAgICAgICAgICh1bnNp Z25lZCBjaGFyICopJmQpOwogICAgIH0KIH0KIApAQCAtMTE2OCw3ICsxMTc0LDcgQEAgX19ydW5x X2Fzc2lnbihzdHJ1Y3QgY3NjaGVkMl92Y3B1ICpzdmMsIHN0cnVjdCBjc2NoZWQyX3J1bnF1ZXVl X2RhdGEgKnJxZCkKICAgICAvKiBFeHBlY3RlZCBuZXcgbG9hZCBiYXNlZCBvbiBhZGRpbmcgdGhp cyB2Y3B1ICovCiAgICAgcnFkLT5iX2F2Z2xvYWQgKz0gc3ZjLT5hdmdsb2FkOwogCi0gICAgLyog VFJBQ0UgKi8KKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQogICAgIHsKICAgICAg ICAgc3RydWN0IHsKICAgICAgICAgICAgIHVuc2lnbmVkIHZjcHU6MTYsIGRvbToxNjsKQEAgLTEx NzcsOSArMTE4Myw5IEBAIF9fcnVucV9hc3NpZ24oc3RydWN0IGNzY2hlZDJfdmNwdSAqc3ZjLCBz dHJ1Y3QgY3NjaGVkMl9ydW5xdWV1ZV9kYXRhICpycWQpCiAgICAgICAgIGQuZG9tID0gc3ZjLT52 Y3B1LT5kb21haW4tPmRvbWFpbl9pZDsKICAgICAgICAgZC52Y3B1ID0gc3ZjLT52Y3B1LT52Y3B1 X2lkOwogICAgICAgICBkLnJxaT1ycWQtPmlkOwotICAgICAgICB0cmFjZV92YXIoVFJDX0NTQ0hF RDJfUlVOUV9BU1NJR04sIDEsCi0gICAgICAgICAgICAgICAgICBzaXplb2YoZCksCi0gICAgICAg ICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKKyAgICAgICAgX190cmFjZV92YXIoVFJD X0NTQ0hFRDJfUlVOUV9BU1NJR04sIDEsCisgICAgICAgICAgICAgICAgICAgIHNpemVvZihkKSwK KyAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CiAgICAgfQogCiB9CkBA IC0xNDkxLDcgKzE0OTcsNyBAQCBjc2NoZWQyX2NwdV9waWNrKGNvbnN0IHN0cnVjdCBzY2hlZHVs ZXIgKm9wcywgc3RydWN0IHZjcHUgKnZjKQogb3V0X3VwOgogICAgIHNwaW5fdW5sb2NrKCZwcnYt PmxvY2spOwogCi0gICAgLyogVFJBQ0UgKi8KKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9u ZSkgKQogICAgIHsKICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgIHVpbnQ2NF90IGJfYXZn bG9hZDsKQEAgLTE1MDMsOSArMTUwOSw5IEBAIG91dF91cDoKICAgICAgICAgZC52Y3B1ID0gdmMt PnZjcHVfaWQ7CiAgICAgICAgIGQucnFfaWQgPSBjMnIob3BzLCBuZXdfY3B1KTsKICAgICAgICAg ZC5uZXdfY3B1ID0gbmV3X2NwdTsKLSAgICAgICAgdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1BJQ0tF RF9DUFUsIDEsCi0gICAgICAgICAgICAgICAgICBzaXplb2YoZCksCi0gICAgICAgICAgICAgICAg ICAodW5zaWduZWQgY2hhciAqKSZkKTsKKyAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJf UElDS0VEX0NQVSwgMSwKKyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAg ICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICB9CiAKICAgICByZXR1cm4gbmV3 X2NwdTsKQEAgLTE1NjAsNyArMTU2Niw3IEBAIHN0YXRpYyB2b2lkIG1pZ3JhdGUoY29uc3Qgc3Ry dWN0IHNjaGVkdWxlciAqb3BzLAogICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgY3NjaGVkMl9y dW5xdWV1ZV9kYXRhICp0cnFkLCAKICAgICAgICAgICAgICAgICAgICAgc190aW1lX3Qgbm93KQog ewotICAgIC8qIFRSQUNFICovCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0X2RvbmUpICkKICAg ICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1bnNpZ25lZCB2Y3B1OjE2LCBkb206 MTY7CkBAIC0xNTcwLDkgKzE1NzYsOSBAQCBzdGF0aWMgdm9pZCBtaWdyYXRlKGNvbnN0IHN0cnVj dCBzY2hlZHVsZXIgKm9wcywKICAgICAgICAgZC52Y3B1ID0gc3ZjLT52Y3B1LT52Y3B1X2lkOwog ICAgICAgICBkLnJxaSA9IHN2Yy0+cnFkLT5pZDsKICAgICAgICAgZC50cnFpID0gdHJxZC0+aWQ7 Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9NSUdSQVRFLCAxLAotICAgICAgICAgICAg ICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7 CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX01JR1JBVEUsIDEsCisgICAgICAgICAg ICAgICAgICAgIHNpemVvZihkKSwKKyAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIg KikmZCk7CiAgICAgfQogCiAgICAgaWYgKCBzdmMtPmZsYWdzICYgQ1NGTEFHX3NjaGVkdWxlZCAp CkBAIC0xNjk4LDcgKzE3MDQsNyBAQCByZXRyeToKICAgICAgICAgaWYgKCBpID4gY3B1c19tYXgg KQogICAgICAgICAgICAgY3B1c19tYXggPSBpOwogCi0gICAgICAgIC8qIFRSQUNFICovCisgICAg ICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCiAgICAgICAgIHsKICAgICAgICAgICAg IHN0cnVjdCB7CiAgICAgICAgICAgICAgICAgdW5zaWduZWQgbHJxX2lkOjE2LCBvcnFfaWQ6MTY7 CkBAIC0xNzA3LDkgKzE3MTMsOSBAQCByZXRyeToKICAgICAgICAgICAgIGQubHJxX2lkID0gc3Qu bHJxZC0+aWQ7CiAgICAgICAgICAgICBkLm9ycV9pZCA9IHN0Lm9ycWQtPmlkOwogICAgICAgICAg ICAgZC5sb2FkX2RlbHRhID0gc3QubG9hZF9kZWx0YTsKLSAgICAgICAgICAgIHRyYWNlX3ZhcihU UkNfQ1NDSEVEMl9MT0FEX0NIRUNLLCAxLAotICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihk KSwKLSAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKKyAgICAgICAg ICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX0xPQURfQ0hFQ0ssIDEsCisgICAgICAgICAgICAg ICAgICAgICAgICBzaXplb2YoZCksCisgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQg Y2hhciAqKSZkKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qCkBAIC0xNzQwLDcgKzE3NDYsNyBA QCByZXRyeToKICAgICBpZiAoIHVubGlrZWx5KHN0Lm9ycWQtPmlkIDwgMCkgKQogICAgICAgICBn b3RvIG91dF91cDsKIAotICAgIC8qIFRSQUNFICovCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0 X2RvbmUpICkKICAgICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1aW50NjRfdCBs Yl9hdmdsb2FkLCBvYl9hdmdsb2FkOwpAQCAtMTc1MCw5ICsxNzU2LDkgQEAgcmV0cnk6CiAgICAg ICAgIGQubGJfYXZnbG9hZCA9IHN0LmxycWQtPmJfYXZnbG9hZDsKICAgICAgICAgZC5vcnFfaWQg PSBzdC5vcnFkLT5pZDsKICAgICAgICAgZC5vYl9hdmdsb2FkID0gc3Qub3JxZC0+Yl9hdmdsb2Fk OwotICAgICAgICB0cmFjZV92YXIoVFJDX0NTQ0hFRDJfTE9BRF9CQUxBTkNFLCAxLAotICAgICAg ICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIg KikmZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX0xPQURfQkFMQU5DRSwgMSwK KyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAodW5z aWduZWQgY2hhciAqKSZkKTsKICAgICB9CiAKICAgICAvKiBMb29rIGZvciAic3dhcCIgd2hpY2gg Z2l2ZXMgdGhlIGJlc3QgbG9hZCBhdmVyYWdlCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==