From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: [PATCH 15/19] xen: credit2: only marshall trace point arguments if tracing enabled Date: Sat, 18 Jun 2016 01:13:06 +0200 Message-ID: <146620518618.29766.1224146973582331759.stgit@Solace.fritz.box> References: <146620492155.29766.10321123657058307698.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 1bE2wo-0003zX-F2 for xen-devel@lists.xenproject.org; Fri, 17 Jun 2016 23:13:10 +0000 Received: by mail-wm0-f68.google.com with SMTP id r201so1106328wme.0 for ; Fri, 17 Jun 2016 16:13:09 -0700 (PDT) In-Reply-To: <146620492155.29766.10321123657058307698.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 YXZpZC52cmFiZWxAY2l0cml4LmNvbT4KLS0tCiB4ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYyB8 ICAxMTQgKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmls ZSBjaGFuZ2VkLCA1OSBpbnNlcnRpb25zKCspLCA1NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS94ZW4vY29tbW9uL3NjaGVkX2NyZWRpdDIuYyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5j CmluZGV4IGU5ZjNmMTMuLjNmZGM5MWMgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24vc2NoZWRfY3Jl ZGl0Mi5jCisrKyBiL3hlbi9jb21tb24vc2NoZWRfY3JlZGl0Mi5jCkBAIC02MzYsNiArNjM2LDcg QEAgX191cGRhdGVfcnVucV9sb2FkKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKIAogICAg IEFTU0VSVChycWQtPmF2Z2xvYWQgPD0gU1RJTUVfTUFYICYmIHJxZC0+Yl9hdmdsb2FkIDw9IFNU SU1FX01BWCk7CiAKKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQogICAgIHsKICAg ICAgICAgc3RydWN0IHsKICAgICAgICAgICAgIHVpbnQ2NF90IHJxX2F2Z2xvYWQsIGJfYXZnbG9h ZDsKQEAgLTY0Niw5ICs2NDcsOSBAQCBfX3VwZGF0ZV9ydW5xX2xvYWQoY29uc3Qgc3RydWN0IHNj aGVkdWxlciAqb3BzLAogICAgICAgICBkLnJxX2F2Z2xvYWQgPSBycWQtPmF2Z2xvYWQ7CiAgICAg ICAgIGQuYl9hdmdsb2FkID0gcnFkLT5iX2F2Z2xvYWQ7CiAgICAgICAgIGQuc2hpZnQgPSBQOwot ICAgICAgICB0cmFjZV92YXIoVFJDX0NTQ0hFRDJfVVBEQVRFX1JVTlFfTE9BRCwgMSwKLSAgICAg ICAgICAgICAgICAgIHNpemVvZihkKSwKLSAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFy ICopJmQpOworICAgICAgICBfX3RyYWNlX3ZhcihUUkNfQ1NDSEVEMl9VUERBVEVfUlVOUV9MT0FE LCAxLAorICAgICAgICAgICAgICAgICAgICBzaXplb2YoZCksCisgICAgICAgICAgICAgICAgICAg ICh1bnNpZ25lZCBjaGFyICopJmQpOwogICAgIH0KIH0KIApAQCAtNjkxLDYgKzY5Miw3IEBAIF9f dXBkYXRlX3N2Y19sb2FkKGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywKICAgICB9CiAgICAg c3ZjLT5sb2FkX2xhc3RfdXBkYXRlID0gbm93OwogCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0 X2RvbmUpICkKICAgICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1aW50NjRfdCB2 X2F2Z2xvYWQ7CkBAIC03MDEsOSArNzAzLDkgQEAgX191cGRhdGVfc3ZjX2xvYWQoY29uc3Qgc3Ry dWN0IHNjaGVkdWxlciAqb3BzLAogICAgICAgICBkLnZjcHUgPSBzdmMtPnZjcHUtPnZjcHVfaWQ7 CiAgICAgICAgIGQudl9hdmdsb2FkID0gc3ZjLT5hdmdsb2FkOwogICAgICAgICBkLnNoaWZ0ID0g UDsKLSAgICAgICAgdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1VQREFURV9WQ1BVX0xPQUQsIDEsCi0g ICAgICAgICAgICAgICAgICBzaXplb2YoZCksCi0gICAgICAgICAgICAgICAgICAodW5zaWduZWQg Y2hhciAqKSZkKTsKKyAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfVVBEQVRFX1ZDUFVf TE9BRCwgMSwKKyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAg ICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICB9CiB9CiAKQEAgLTc1OSw2ICs3NjEsNyBA QCBydW5xX2luc2VydChjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVjdCBjc2NoZWQy X3ZjcHUgKnN2YykKIAogICAgIHBvcyA9IF9fcnVucV9pbnNlcnQocnVucSwgc3ZjKTsKIAorICAg IGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCiAgICAgewogICAgICAgICBzdHJ1Y3Qgewog ICAgICAgICAgICAgdW5zaWduZWQgdmNwdToxNiwgZG9tOjE2OwpAQCAtNzY3LDkgKzc3MCw5IEBA IHJ1bnFfaW5zZXJ0KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgc3RydWN0IGNzY2hlZDJf dmNwdSAqc3ZjKQogICAgICAgICBkLmRvbSA9IHN2Yy0+dmNwdS0+ZG9tYWluLT5kb21haW5faWQ7 CiAgICAgICAgIGQudmNwdSA9IHN2Yy0+dmNwdS0+dmNwdV9pZDsKICAgICAgICAgZC5wb3MgPSBw b3M7Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9SVU5RX1BPUywgMSwKLSAgICAgICAg ICAgICAgICAgIHNpemVvZihkKSwKLSAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICop JmQpOworICAgICAgICBfX3RyYWNlX3ZhcihUUkNfQ1NDSEVEMl9SVU5RX1BPUywgMSwKKyAgICAg ICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQg Y2hhciAqKSZkKTsKICAgICB9CiAKICAgICByZXR1cm47CkBAIC04MTIsNyArODE1LDcgQEAgcnVu cV90aWNrbGUoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBzdHJ1Y3QgY3NjaGVkMl92Y3B1 ICpuZXcsIHNfdGltZV90IG5vdykKIAogICAgIEFTU0VSVChuZXctPnJxZCA9PSBycWQpOwogCi0g ICAgLyogVFJBQ0UgKi8KKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQogICAgIHsK ICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgIHVuc2lnbmVkIHZjcHU6MTYsIGRvbToxNjsK QEAgLTgyMiw5ICs4MjUsOSBAQCBydW5xX3RpY2tsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpv cHMsIHN0cnVjdCBjc2NoZWQyX3ZjcHUgKm5ldywgc190aW1lX3Qgbm93KQogICAgICAgICBkLnZj cHUgPSBuZXctPnZjcHUtPnZjcHVfaWQ7CiAgICAgICAgIGQucHJvY2Vzc29yID0gbmV3LT52Y3B1 LT5wcm9jZXNzb3I7CiAgICAgICAgIGQuY3JlZGl0ID0gbmV3LT5jcmVkaXQ7Ci0gICAgICAgIHRy YWNlX3ZhcihUUkNfQ1NDSEVEMl9USUNLTEVfTkVXLCAxLAotICAgICAgICAgICAgICAgICAgc2l6 ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CisgICAgICAg IF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1RJQ0tMRV9ORVcsIDEsCisgICAgICAgICAgICAgICAg ICAgIHNpemVvZihkKSwKKyAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7 CiAgICAgfQogCiAgICAgLyoKQEAgLTg4Miw3ICs4ODUsOCBAQCBydW5xX3RpY2tsZShjb25zdCBz dHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIHN0cnVjdCBjc2NoZWQyX3ZjcHUgKm5ldywgc190aW1lX3Qg bm93KQogICAgICAgICAgICAgbG93ZXN0ID0gY3VyLT5jcmVkaXQ7CiAgICAgICAgIH0KIAotICAg ICAgICAvKiBUUkFDRSAqLyB7CisgICAgICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSAp CisgICAgICAgIHsKICAgICAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgdmNwdToxNiwgZG9tOjE2OwogICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNyZWRpdDsKQEAg LTg5MCw5ICs4OTQsOSBAQCBydW5xX3RpY2tsZShjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMs IHN0cnVjdCBjc2NoZWQyX3ZjcHUgKm5ldywgc190aW1lX3Qgbm93KQogICAgICAgICAgICAgZC5k b20gPSBjdXItPnZjcHUtPmRvbWFpbi0+ZG9tYWluX2lkOwogICAgICAgICAgICAgZC52Y3B1ID0g Y3VyLT52Y3B1LT52Y3B1X2lkOwogICAgICAgICAgICAgZC5jcmVkaXQgPSBjdXItPmNyZWRpdDsK LSAgICAgICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9USUNLTEVfQ0hFQ0ssIDEsCi0gICAg ICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgICAgICh1bnNp Z25lZCBjaGFyICopJmQpOworICAgICAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfVElD S0xFX0NIRUNLLCAxLAorICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAg ICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CiAgICAgICAgIH0KICAgICB9 CiAKQEAgLTkxMCwxNCArOTE0LDE1IEBAIHJ1bnFfdGlja2xlKGNvbnN0IHN0cnVjdCBzY2hlZHVs ZXIgKm9wcywgc3RydWN0IGNzY2hlZDJfdmNwdSAqbmV3LCBzX3RpbWVfdCBub3cpCiAgdGlja2xl OgogICAgIEJVR19PTihpcGlkID09IC0xKTsKIAotICAgIC8qIFRSQUNFICovIHsKKyAgICBpZiAo IHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQorICAgIHsKICAgICAgICAgc3RydWN0IHsKICAgICAg ICAgICAgIHVuc2lnbmVkIGNwdToxNiwgcGFkOjE2OwogICAgICAgICB9IGQ7CiAgICAgICAgIGQu Y3B1ID0gaXBpZDsgZC5wYWQgPSAwOwotICAgICAgICB0cmFjZV92YXIoVFJDX0NTQ0hFRDJfVElD S0xFLCAxLAotICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAg KHVuc2lnbmVkIGNoYXIgKikmZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1RJ Q0tMRSwgMSwKKyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAg ICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKICAgICB9CiAgICAgX19jcHVtYXNrX3NldF9jcHUo aXBpZCwgJnJxZC0+dGlja2xlZCk7CiAgICAgY3B1X3JhaXNlX3NvZnRpcnEoaXBpZCwgU0NIRURV TEVfU09GVElSUSk7CkBAIC05NzksNyArOTg0LDggQEAgc3RhdGljIHZvaWQgcmVzZXRfY3JlZGl0 KGNvbnN0IHN0cnVjdCBzY2hlZHVsZXIgKm9wcywgaW50IGNwdSwgc190aW1lX3Qgbm93LAogCiAg ICAgICAgIHN2Yy0+c3RhcnRfdGltZSA9IG5vdzsKIAotICAgICAgICAvKiBUUkFDRSAqLyB7Cisg ICAgICAgIGlmICggdW5saWtlbHkodGJfaW5pdF9kb25lKSApCisgICAgICAgIHsKICAgICAgICAg ICAgIHN0cnVjdCB7CiAgICAgICAgICAgICAgICAgdW5zaWduZWQgdmNwdToxNiwgZG9tOjE2Owog ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNyZWRpdF9zdGFydCwgY3JlZGl0X2VuZDsKQEAgLTk5 MCw5ICs5OTYsOSBAQCBzdGF0aWMgdm9pZCByZXNldF9jcmVkaXQoY29uc3Qgc3RydWN0IHNjaGVk dWxlciAqb3BzLCBpbnQgY3B1LCBzX3RpbWVfdCBub3csCiAgICAgICAgICAgICBkLmNyZWRpdF9z dGFydCA9IHN0YXJ0X2NyZWRpdDsKICAgICAgICAgICAgIGQuY3JlZGl0X2VuZCA9IHN2Yy0+Y3Jl ZGl0OwogICAgICAgICAgICAgZC5tdWx0aXBsaWVyID0gbTsKLSAgICAgICAgICAgIHRyYWNlX3Zh cihUUkNfQ1NDSEVEMl9DUkVESVRfUkVTRVQsIDEsCi0gICAgICAgICAgICAgICAgICAgICAgc2l6 ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICopJmQpOworICAg ICAgICAgICAgX190cmFjZV92YXIoVFJDX0NTQ0hFRDJfQ1JFRElUX1JFU0VULCAxLAorICAgICAg ICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAgICAgKHVu c2lnbmVkIGNoYXIgKikmZCk7CiAgICAgICAgIH0KICAgICB9CiAKQEAgLTEwMjgsNyArMTAzNCw3 IEBAIHZvaWQgYnVybl9jcmVkaXRzKHN0cnVjdCBjc2NoZWQyX3J1bnF1ZXVlX2RhdGEgKnJxZCwK ICAgICAgICAgICAgICAgIF9fZnVuY19fLCBub3csIHN2Yy0+c3RhcnRfdGltZSk7CiAgICAgfQog Ci0gICAgLyogVFJBQ0UgKi8KKyAgICBpZiAoIHVubGlrZWx5KHRiX2luaXRfZG9uZSkgKQogICAg IHsKICAgICAgICAgc3RydWN0IHsKICAgICAgICAgICAgIHVuc2lnbmVkIHZjcHU6MTYsIGRvbTox NjsKQEAgLTEwMzksOSArMTA0NSw5IEBAIHZvaWQgYnVybl9jcmVkaXRzKHN0cnVjdCBjc2NoZWQy X3J1bnF1ZXVlX2RhdGEgKnJxZCwKICAgICAgICAgZC52Y3B1ID0gc3ZjLT52Y3B1LT52Y3B1X2lk OwogICAgICAgICBkLmNyZWRpdCA9IHN2Yy0+Y3JlZGl0OwogICAgICAgICBkLmRlbHRhID0gZGVs dGE7Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9DUkVESVRfQlVSTiwgMSwKLSAgICAg ICAgICAgICAgICAgIHNpemVvZihkKSwKLSAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFy ICopJmQpOworICAgICAgICBfX3RyYWNlX3ZhcihUUkNfQ1NDSEVEMl9DUkVESVRfQlVSTiwgMSwK KyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAodW5z aWduZWQgY2hhciAqKSZkKTsKICAgICB9CiB9CiAKQEAgLTEwNzcsMTYgKzEwODMsMTYgQEAgc3Rh dGljIHZvaWQgdXBkYXRlX21heF93ZWlnaHQoc3RydWN0IGNzY2hlZDJfcnVucXVldWVfZGF0YSAq cnFkLCBpbnQgbmV3X3dlaWdodCwKICAgICAgICAgU0NIRURfU1RBVF9DUkFOSyh1cGRfbWF4X3dl aWdodF9mdWxsKTsKICAgICB9CiAKLSAgICAvKiBUUkFDRSAqLworICAgIGlmICggdW5saWtlbHko dGJfaW5pdF9kb25lKSApCiAgICAgewogICAgICAgICBzdHJ1Y3QgewogICAgICAgICAgICAgdW5z aWduZWQgcnFpOjE2LCBtYXhfd2VpZ2h0OjE2OwogICAgICAgICB9IGQ7CiAgICAgICAgIGQucnFp ID0gcnFkLT5pZDsKICAgICAgICAgZC5tYXhfd2VpZ2h0ID0gcnFkLT5tYXhfd2VpZ2h0OwotICAg ICAgICB0cmFjZV92YXIoVFJDX0NTQ0hFRDJfUlVOUV9NQVhfV0VJR0hULCAxLAotICAgICAgICAg ICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikm ZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX1JVTlFfTUFYX1dFSUdIVCwgMSwK KyAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAorICAgICAgICAgICAgICAgICAgICAodW5z aWduZWQgY2hhciAqKSZkKTsKICAgICB9CiB9CiAKQEAgLTExNjYsNyArMTE3Miw3IEBAIF9fcnVu cV9hc3NpZ24oc3RydWN0IGNzY2hlZDJfdmNwdSAqc3ZjLCBzdHJ1Y3QgY3NjaGVkMl9ydW5xdWV1 ZV9kYXRhICpycWQpCiAgICAgLyogRXhwZWN0ZWQgbmV3IGxvYWQgYmFzZWQgb24gYWRkaW5nIHRo aXMgdmNwdSAqLwogICAgIHJxZC0+Yl9hdmdsb2FkICs9IHN2Yy0+YXZnbG9hZDsKIAotICAgIC8q IFRSQUNFICovCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0X2RvbmUpICkKICAgICB7CiAgICAg ICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1bnNpZ25lZCB2Y3B1OjE2LCBkb206MTY7CkBAIC0x MTc1LDkgKzExODEsOSBAQCBfX3J1bnFfYXNzaWduKHN0cnVjdCBjc2NoZWQyX3ZjcHUgKnN2Yywg c3RydWN0IGNzY2hlZDJfcnVucXVldWVfZGF0YSAqcnFkKQogICAgICAgICBkLmRvbSA9IHN2Yy0+ dmNwdS0+ZG9tYWluLT5kb21haW5faWQ7CiAgICAgICAgIGQudmNwdSA9IHN2Yy0+dmNwdS0+dmNw dV9pZDsKICAgICAgICAgZC5ycWk9cnFkLT5pZDsKLSAgICAgICAgdHJhY2VfdmFyKFRSQ19DU0NI RUQyX1JVTlFfQVNTSUdOLCAxLAotICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAg ICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRS Q19DU0NIRUQyX1JVTlFfQVNTSUdOLCAxLAorICAgICAgICAgICAgICAgICAgICBzaXplb2YoZCks CisgICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICopJmQpOwogICAgIH0KIAogfQpA QCAtMTQ4OSw3ICsxNDk1LDcgQEAgY3NjaGVkMl9jcHVfcGljayhjb25zdCBzdHJ1Y3Qgc2NoZWR1 bGVyICpvcHMsIHN0cnVjdCB2Y3B1ICp2YykKIG91dF91cDoKICAgICBzcGluX3VubG9jaygmcHJ2 LT5sb2NrKTsKIAotICAgIC8qIFRSQUNFICovCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0X2Rv bmUpICkKICAgICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1aW50NjRfdCBiX2F2 Z2xvYWQ7CkBAIC0xNTAxLDkgKzE1MDcsOSBAQCBvdXRfdXA6CiAgICAgICAgIGQudmNwdSA9IHZj LT52Y3B1X2lkOwogICAgICAgICBkLnJxX2lkID0gYzJyKG9wcywgbmV3X2NwdSk7CiAgICAgICAg IGQubmV3X2NwdSA9IG5ld19jcHU7Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9QSUNL RURfQ1BVLCAxLAotICAgICAgICAgICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAg ICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQy X1BJQ0tFRF9DUFUsIDEsCisgICAgICAgICAgICAgICAgICAgIHNpemVvZihkKSwKKyAgICAgICAg ICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZCk7CiAgICAgfQogCiAgICAgcmV0dXJuIG5l d19jcHU7CkBAIC0xNTYxLDcgKzE1NjcsNyBAQCBzdGF0aWMgdm9pZCBtaWdyYXRlKGNvbnN0IHN0 cnVjdCBzY2hlZHVsZXIgKm9wcywKICAgICBib29sX3QgcnVubmluZyA9IHN2Yy0+ZmxhZ3MgJiBD U0ZMQUdfc2NoZWR1bGVkOwogICAgIGJvb2xfdCBvbl9ydW5xID0gX192Y3B1X29uX3J1bnEoc3Zj KTsKIAotICAgIC8qIFRSQUNFICovCisgICAgaWYgKCB1bmxpa2VseSh0Yl9pbml0X2RvbmUpICkK ICAgICB7CiAgICAgICAgIHN0cnVjdCB7CiAgICAgICAgICAgICB1bnNpZ25lZCB2Y3B1OjE2LCBk b206MTY7CkBAIC0xNTcxLDkgKzE1NzcsOSBAQCBzdGF0aWMgdm9pZCBtaWdyYXRlKGNvbnN0IHN0 cnVjdCBzY2hlZHVsZXIgKm9wcywKICAgICAgICAgZC52Y3B1ID0gc3ZjLT52Y3B1LT52Y3B1X2lk OwogICAgICAgICBkLnJxaSA9IHN2Yy0+cnFkLT5pZDsKICAgICAgICAgZC50cnFpID0gdHJxZC0+ aWQ7Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9NSUdSQVRFLCAxLAotICAgICAgICAg ICAgICAgICAgc2l6ZW9mKGQpLAotICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNoYXIgKikm ZCk7CisgICAgICAgIF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX01JR1JBVEUsIDEsCisgICAgICAg ICAgICAgICAgICAgIHNpemVvZihkKSwKKyAgICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGNo YXIgKikmZCk7CiAgICAgfQogCiAgICAgaWYgKCBydW5uaW5nICkKQEAgLTE2OTYsMTAgKzE3MDIs OCBAQCBzdGF0aWMgdm9pZCBiYWxhbmNlX2xvYWQoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3Bz LCBpbnQgY3B1LCBzX3RpbWVfdCBub3cpCiAKICAgICAgICAgY3B1c19tYXggPSBjcHVtYXNrX3dl aWdodCgmc3QubHJxZC0+YWN0aXZlKTsKICAgICAgICAgaSA9IGNwdW1hc2tfd2VpZ2h0KCZzdC5v cnFkLT5hY3RpdmUpOwotICAgICAgICBpZiAoIGkgPiBjcHVzX21heCApCi0gICAgICAgICAgICBj cHVzX21heCA9IGk7CiAKLSAgICAgICAgLyogVFJBQ0UgKi8KKyAgICAgICAgaWYgKCB1bmxpa2Vs eSh0Yl9pbml0X2RvbmUpICkKICAgICAgICAgewogICAgICAgICAgICAgc3RydWN0IHsKICAgICAg ICAgICAgICAgICB1bnNpZ25lZCBscnFfaWQ6MTYsIG9ycV9pZDoxNjsKQEAgLTE3MDgsOSArMTcx Miw5IEBAIHN0YXRpYyB2b2lkIGJhbGFuY2VfbG9hZChjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpv cHMsIGludCBjcHUsIHNfdGltZV90IG5vdykKICAgICAgICAgICAgIGQubHJxX2lkID0gc3QubHJx ZC0+aWQ7CiAgICAgICAgICAgICBkLm9ycV9pZCA9IHN0Lm9ycWQtPmlkOwogICAgICAgICAgICAg ZC5sb2FkX2RlbHRhID0gc3QubG9hZF9kZWx0YTsKLSAgICAgICAgICAgIHRyYWNlX3ZhcihUUkNf Q1NDSEVEMl9MT0FEX0NIRUNLLCAxLAotICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihkKSwK LSAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKKyAgICAgICAgICAg IF9fdHJhY2VfdmFyKFRSQ19DU0NIRUQyX0xPQURfQ0hFQ0ssIDEsCisgICAgICAgICAgICAgICAg ICAgICAgICBzaXplb2YoZCksCisgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hh ciAqKSZkKTsKICAgICAgICAgfQogCiAgICAgICAgIC8qCkBAIC0xNzQxLDcgKzE3NDUsNyBAQCBz dGF0aWMgdm9pZCBiYWxhbmNlX2xvYWQoY29uc3Qgc3RydWN0IHNjaGVkdWxlciAqb3BzLCBpbnQg Y3B1LCBzX3RpbWVfdCBub3cpCiAgICAgaWYgKCB1bmxpa2VseShzdC5vcnFkLT5pZCA8IDApICkK ICAgICAgICAgZ290byBvdXRfdXA7CiAKLSAgICAvKiBUUkFDRSAqLworICAgIGlmICggdW5saWtl bHkodGJfaW5pdF9kb25lKSApCiAgICAgewogICAgICAgICBzdHJ1Y3QgewogICAgICAgICAgICAg dWludDY0X3QgbGJfYXZnbG9hZCwgb2JfYXZnbG9hZDsKQEAgLTE3NTEsOSArMTc1NSw5IEBAIHN0 YXRpYyB2b2lkIGJhbGFuY2VfbG9hZChjb25zdCBzdHJ1Y3Qgc2NoZWR1bGVyICpvcHMsIGludCBj cHUsIHNfdGltZV90IG5vdykKICAgICAgICAgZC5sYl9hdmdsb2FkID0gc3QubHJxZC0+Yl9hdmds b2FkOwogICAgICAgICBkLm9ycV9pZCA9IHN0Lm9ycWQtPmlkOwogICAgICAgICBkLm9iX2F2Z2xv YWQgPSBzdC5vcnFkLT5iX2F2Z2xvYWQ7Ci0gICAgICAgIHRyYWNlX3ZhcihUUkNfQ1NDSEVEMl9M T0FEX0JBTEFOQ0UsIDEsCi0gICAgICAgICAgICAgICAgICBzaXplb2YoZCksCi0gICAgICAgICAg ICAgICAgICAodW5zaWduZWQgY2hhciAqKSZkKTsKKyAgICAgICAgX190cmFjZV92YXIoVFJDX0NT Q0hFRDJfTE9BRF9CQUxBTkNFLCAxLAorICAgICAgICAgICAgICAgICAgICBzaXplb2YoZCksCisg ICAgICAgICAgICAgICAgICAgICh1bnNpZ25lZCBjaGFyICopJmQpOwogICAgIH0KIAogICAgIG5v dyA9IE5PVygpOwoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDov L2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==