From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16494 invoked by alias); 10 Sep 2014 14:23:02 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 16457 invoked by uid 89); 10 Sep 2014 14:22:59 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 X-HELO: na01-bn1-obe.outbound.protection.outlook.com Received: from mail-bn1lp0144.outbound.protection.outlook.com (HELO na01-bn1-obe.outbound.protection.outlook.com) (207.46.163.144) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Wed, 10 Sep 2014 14:22:58 +0000 Received: from BL2FFO11FD048.protection.gbl (10.173.160.30) by BL2FFO11HUB037.protection.gbl (10.173.160.241) with Microsoft SMTP Server (TLS) id 15.0.1019.14; Wed, 10 Sep 2014 14:22:54 +0000 Received: from xsj-pvapsmtpgw01 (149.199.60.83) by BL2FFO11FD048.mail.protection.outlook.com (10.173.161.210) with Microsoft SMTP Server (TLS) id 15.0.1019.14 via Frontend Transport; Wed, 10 Sep 2014 14:22:54 +0000 Received: from unknown-38-66.xilinx.com ([149.199.38.66] helo=xsj-smtp1) by xsj-pvapsmtpgw01 with esmtp (Exim 4.63) (envelope-from ) id 1XRiiz-00082Q-N6; Wed, 10 Sep 2014 07:18:21 -0700 From: Ajit Kumar Agarwal To: Joel Brobecker , Michael Eager CC: "gdb-patches@sourceware.org" , Vinod Kathail , Vidhumouli Hunsigida , "Nagaraju Mekala" Subject: RE: [Patch, microblaze]: Port of Linux gdbserver Date: Wed, 10 Sep 2014 14:23:00 -0000 References: <2570e3c7-f55b-45cd-aa6e-7f4fa145f32a@BN1BFFO11FD002.protection.gbl> <541052B5.5080503@eagercon.com> <20140910134606.GO28404@adacore.com> In-Reply-To: <20140910134606.GO28404@adacore.com> Content-Type: multipart/mixed; boundary="_002_37378DC5BCD0EE48BA4B082E0B55DFAA40BD39E0XAPPVEXMBX01xln_" MIME-Version: 1.0 X-RCIS-Action: ALLOW Message-ID: <050c6461-c35c-441d-9b63-7636d9164e2e@BL2FFO11FD048.protection.gbl> X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:149.199.60.83;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(6009001)(438002)(189002)(51704005)(377424004)(199003)(377454003)(13464003)(20776003)(21056001)(1496007)(4396001)(50986999)(64706001)(77096002)(81342001)(79102001)(77982001)(76176999)(54356999)(99396002)(53416004)(512954002)(92566001)(6806004)(19580405001)(568964001)(95666004)(74502001)(31966008)(74662001)(106466001)(92726001)(87936001)(84326002)(107046002)(85852003)(85306004)(83072002)(74316001)(19580395003)(80022001)(104016003)(44976005)(76482001)(2656002)(70736001)(83322001)(71186001)(31696002)(90102001)(81542001)(46102001)(106116001)(86362001)(99936001)(107986001)(23106004);DIR:OUT;SFP:;SCL:1;SRVR:BL2FFO11HUB037;H:xsj-pvapsmtpgw01;FPR:;MLV:sfv;PTR:unknown-60-83.xilinx.com;MX:1;A:1;LANG:en; X-Microsoft-Antispam: BCL:0;PCL:0;RULEID:;UriScan:; X-Forefront-PRVS: 033054F29A Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=ajit.kumar.agarwal@xilinx.com; X-OriginatorOrg: xilinx.com X-SW-Source: 2014-09/txt/msg00312.txt.bz2 --_002_37378DC5BCD0EE48BA4B082E0B55DFAA40BD39E0XAPPVEXMBX01xln_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 1887 Please find the updated patch with review feedbacks are incorporated. [Patch, microblaze]: Port of Linux gdbserver This patch is the port of Linux gdbserver. ChangeLog: 2014-10-09 Ajit Agarwal * configure.host (microblaze): New. (microblaze*-*-linux*): New. * configure.tgt (build_gdbserver): New Definition. * gdbserver/Makefile.in (microblaze-linux.c): New target. * gdbserver/configure.srv (microblaze*-*-linux*): New target. * gdbserver/linux-microblaze-low.c: New file. Signed-off-by:Ajit Agarwal ajitkum@xilinx.com Thanks & Regards Ajit -----Original Message----- From: Joel Brobecker [mailto:brobecker@adacore.com]=20 Sent: Wednesday, September 10, 2014 7:16 PM To: Michael Eager Cc: Ajit Kumar Agarwal; gdb-patches@sourceware.org; Vinod Kathail; Vidhumou= li Hunsigida; Nagaraju Mekala Subject: Re: [Patch, microblaze]: Port of Linux gdbserver > > This patch is the port of Linux gdbserver. > > > > ChangeLog: > > 2014-10-09 Ajit Agarwal > > > > * microblaze-tdep.h (MICROBLAZE_BREAKPOINT): New Macro. > > (MICROBLAZE_BREAKPOINT_LE): New Macro. > > * microblaze-linux-tdep.c > > (microblaze_linux_memory_remove_breakpoint): Use of > > set_gdbarch_fetch_tls_load_module_address, do_cleanup. > > * configure.host (microblaze): New. > > (microblaze*-*-linux*): New. > > * configure.tgt (build_gdbserver): New Definition. > > * gdbserver/Makefile.in (microblaze-linux.c): New target. > > * gdbserver/configure.srv (microblaze*-*-linux*): New target. > > * gdbserver/linux-microblaze-low.c: New file. In addition to Michael's comment, I am not sure why the gdb changes are com= bined with the gdbserver changes. Shouldn't these be submitted separately? -- Joel --_002_37378DC5BCD0EE48BA4B082E0B55DFAA40BD39E0XAPPVEXMBX01xln_ Content-Type: application/octet-stream; name="0001-Patch-microblaze-Port-of-Linux-gdbserver.patch" Content-Description: 0001-Patch-microblaze-Port-of-Linux-gdbserver.patch Content-Disposition: attachment; filename="0001-Patch-microblaze-Port-of-Linux-gdbserver.patch"; size=11334; creation-date="Wed, 10 Sep 2014 10:13:55 GMT"; modification-date="Wed, 10 Sep 2014 14:17:57 GMT" Content-Transfer-Encoding: base64 Content-length: 15364 RnJvbSAwY2I3NjI2ZWE1NDhiODViNDFlODNkYTlhMjNjNWJjYmE2MzJjNTk3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBaml0IEt1bWFyIEFn YXJ3YWwgPGFqaXRrdW1AeGhkc3BkZ251Lihub25lKT4KRGF0ZTogV2VkLCAx MCBTZXAgMjAxNCAxOTo0Mzo1MyArMDUzMApTdWJqZWN0OiBbUEFUQ0hdIFtQ YXRjaCwgbWljcm9ibGF6ZV06IFBvcnQgb2YgTGludXggZ2Ric2VydmVyCgpU aGlzIHBhdGNoIGlzIHRoZSBwb3J0IG9mIExpbnV4IGdkYnNlcnZlci4KCkNo YW5nZUxvZzoKMjAxNC0xMC0wOSAgQWppdCBBZ2Fyd2FsICA8YWppdGt1bUB4 aWxpbnguY29tPgoKICAgICAgICAqIGNvbmZpZ3VyZS5ob3N0IChtaWNyb2Js YXplKTogTmV3LgogICAgICAgIChtaWNyb2JsYXplKi0qLWxpbnV4Kik6IE5l dy4KICAgICAgICAqIGNvbmZpZ3VyZS50Z3QgKGJ1aWxkX2dkYnNlcnZlcik6 IE5ldyBEZWZpbml0aW9uLgogICAgICAgICogZ2Ric2VydmVyL01ha2VmaWxl LmluIChtaWNyb2JsYXplLWxpbnV4LmMpOiBOZXcgdGFyZ2V0LgogICAgICAg ICogZ2Ric2VydmVyL2NvbmZpZ3VyZS5zcnYgKG1pY3JvYmxhemUqLSotbGlu dXgqKTogTmV3IHRhcmdldC4KICAgICAgICAqIGdkYnNlcnZlci9saW51eC1t aWNyb2JsYXplLWxvdy5jOiBOZXcgZmlsZS4KClNpZ25lZC1vZmYtYnk6QWpp dCBBZ2Fyd2FsIGFqaXRrdW1AeGlsaW54LmNvbQotLS0KIGdkYi9jb25maWd1 cmUuaG9zdCAgICAgICAgICAgICAgICAgICB8ICAgIDMgKwogZ2RiL2NvbmZp Z3VyZS50Z3QgICAgICAgICAgICAgICAgICAgIHwgICAgMSArCiBnZGIvZ2Ri c2VydmVyL01ha2VmaWxlLmluICAgICAgICAgICAgfCAgICA0ICsKIGdkYi9n ZGJzZXJ2ZXIvY29uZmlndXJlLnNydiAgICAgICAgICB8ICAgIDYgKwogZ2Ri L2dkYnNlcnZlci9saW51eC1taWNyb2JsYXplLWxvdy5jIHwgIDIzNiArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiA1IGZpbGVzIGNoYW5n ZWQsIDI1MCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQogY3JlYXRl IG1vZGUgMTAwNjQ0IGdkYi9nZGJzZXJ2ZXIvbGludXgtbWljcm9ibGF6ZS1s b3cuYwoKZGlmZiAtLWdpdCBhL2dkYi9jb25maWd1cmUuaG9zdCBiL2dkYi9j b25maWd1cmUuaG9zdAppbmRleCAxNWE4Mjg4Li42ZjAyZGRkIDEwMDY0NAot LS0gYS9nZGIvY29uZmlndXJlLmhvc3QKKysrIGIvZ2RiL2NvbmZpZ3VyZS5o b3N0CkBAIC01OSw2ICs1OSw3IEBAIGlbMzQ1NjddODYqKQkJZ2RiX2hvc3Rf Y3B1PWkzODYgOzsKIG02OCopCQkJZ2RiX2hvc3RfY3B1PW02OGsgOzsKIG04 OCopCQkJZ2RiX2hvc3RfY3B1PW04OGsgOzsKIG1pcHMqKQkJCWdkYl9ob3N0 X2NwdT1taXBzIDs7CittaWNyb2JsYXplKikgICAgICAgICAgICBnZGJfaG9z dF9jcHU9bWljcm9ibGF6ZSA7OwogcG93ZXJwYyogfCByczYwMDApCWdkYl9o b3N0X2NwdT1wb3dlcnBjIDs7CiBzcGFyY3Y5IHwgc3BhcmM2NCkJZ2RiX2hv c3RfY3B1PXNwYXJjIDs7CiBzMzkwKikJCQlnZGJfaG9zdF9jcHU9czM5MCA7 OwpAQCAtMTMzLDYgKzEzNCw4IEBAIG1pcHMqLSotbmV0YnNkKiB8IG1pcHMq LSota25ldGJzZCotZ251KQogCQkJZ2RiX2hvc3Q9bmJzZCA7OwogbWlwczY0 Ki0qLW9wZW5ic2QqKQlnZGJfaG9zdD1vYnNkNjQgOzsKIAorbWljcm9ibGF6 ZSotKmxpbnV4KikgICAgZ2RiX2hvc3Q9bGludXggOzsKKwogcG93ZXJwYy0q LWFpeCogfCByczYwMDAtKi0qIHwgcG93ZXJwYzY0LSotYWl4KikKIAkJCWdk Yl9ob3N0PWFpeCA7OwogcG93ZXJwYyotKi1mcmVlYnNkKikJZ2RiX2hvc3Q9 ZmJzZCA7OwpkaWZmIC0tZ2l0IGEvZ2RiL2NvbmZpZ3VyZS50Z3QgYi9nZGIv Y29uZmlndXJlLnRndAppbmRleCAwMTMxMWIyLi5lNDg5NGRhIDEwMDY0NAot LS0gYS9nZGIvY29uZmlndXJlLnRndAorKysgYi9nZGIvY29uZmlndXJlLnRn dApAQCAtMzQzLDYgKzM0Myw3IEBAIG1pY3JvYmxhemUqLWxpbnV4LSp8bWlj cm9ibGF6ZSotKi1saW51eCopCiAJZ2RiX3RhcmdldF9vYnM9Im1pY3JvYmxh emUtdGRlcC5vIG1pY3JvYmxhemUtbGludXgtdGRlcC5vIG1pY3JvYmxhemUt cm9tLm8gXAogCQkJbW9uaXRvci5vIGRzcmVjLm8gc29saWItc3ZyNC5vIHN5 bWZpbGUtbWVtLm8gbGludXgtdGRlcC5vIgogCWdkYl9zaW09Li4vc2ltL21p Y3JvYmxhemUvbGlic2ltLmEKKyAgICAgICAgYnVpbGRfZ2Ric2VydmVyPXll cwogCTs7CiBtaWNyb2JsYXplKi0qLSopCiAJIyBUYXJnZXQ6IFhpbGlueCBN aWNyb0JsYXplIHJ1bm5pbmcgc3RhbmRhbG9uZQpkaWZmIC0tZ2l0IGEvZ2Ri L2dkYnNlcnZlci9NYWtlZmlsZS5pbiBiL2dkYi9nZGJzZXJ2ZXIvTWFrZWZp bGUuaW4KaW5kZXggMTQ0N2U2MS4uYjJhMDFmNSAxMDA2NDQKLS0tIGEvZ2Ri L2dkYnNlcnZlci9NYWtlZmlsZS5pbgorKysgYi9nZGIvZ2Ric2VydmVyL01h a2VmaWxlLmluCkBAIC0xNTMsNiArMTUzLDcgQEAgU0ZJTEVTPQkkKHNyY2Rp cikvZ2RicmVwbGF5LmMgJChzcmNkaXIpL2luZmVyaW9ycy5jICQoc3JjZGly KS9kbGwuYyBcCiAJJChzcmNkaXIpL2xpbnV4LWlhNjQtbG93LmMgJChzcmNk aXIpL2xpbnV4LWxvdy5jIFwKIAkkKHNyY2RpcikvbGludXgtbTMyci1sb3cu YyBcCiAJJChzcmNkaXIpL2xpbnV4LW02OGstbG93LmMgJChzcmNkaXIpL2xp bnV4LW1pcHMtbG93LmMgXAorICAgICAgICAkKHNyY2RpcikvbGludXgtbWlj cm9ibGF6ZS1sb3cuYyBcCiAJJChzcmNkaXIpL2xpbnV4LW5pb3MyLWxvdy5j IFwKIAkkKHNyY2RpcikvbGludXgtcHBjLWxvdy5jIFwKIAkkKHNyY2Rpcikv bGludXgtczM5MC1sb3cuYyBcCkBAIC0zNjQsNiArMzY1LDcgQEAgY2xlYW46 CiAJcm0gLWYgYW1kNjQtbXB4LmMgYW1kNjQtbXB4LWxpbnV4LmMKIAlybSAt ZiBhbWQ2NC1hdng1MTIuYyBhbWQ2NC1hdng1MTItbGludXguYwogCXJtIC1m IGkzODYtbW14LmMgaTM4Ni1tbXgtbGludXguYworICAgICAgICBybSAtZiBt aWNyb2JsYXplLWxpbnV4LmMKIAlybSAtZiB4MzIuYyB4MzItbGludXguYwog CXJtIC1mIHgzMi1hdnguYyB4MzItYXZ4LWxpbnV4LmMKIAlybSAtZiB4MzIt YXZ4NTEyLmMgeDMyLWF2eDUxMi1saW51eC5jCkBAIC02MzQsNiArNjM2LDgg QEAgbWlwczY0LWxpbnV4LmMgOiAkKHNyY2RpcikvLi4vcmVnZm9ybWF0cy9t aXBzNjQtbGludXguZGF0ICQocmVnZGF0X3NoKQogCSQoU0hFTEwpICQocmVn ZGF0X3NoKSAkKHNyY2RpcikvLi4vcmVnZm9ybWF0cy9taXBzNjQtbGludXgu ZGF0IG1pcHM2NC1saW51eC5jCiBtaXBzNjQtZHNwLWxpbnV4LmMgOiAkKHNy Y2RpcikvLi4vcmVnZm9ybWF0cy9taXBzNjQtZHNwLWxpbnV4LmRhdCAkKHJl Z2RhdF9zaCkKIAkkKFNIRUxMKSAkKHJlZ2RhdF9zaCkgJChzcmNkaXIpLy4u L3JlZ2Zvcm1hdHMvbWlwczY0LWRzcC1saW51eC5kYXQgbWlwczY0LWRzcC1s aW51eC5jCittaWNyb2JsYXplLWxpbnV4LmMgOiAkKHNyY2RpcikvLi4vcmVn Zm9ybWF0cy9taWNyb2JsYXplLXdpdGgtc3RhY2stcHJvdGVjdC5kYXQgJChy ZWdkYXRfc2gpCisgICAgICAgICQoU0hFTEwpICQocmVnZGF0X3NoKSAkKHNy Y2RpcikvLi4vcmVnZm9ybWF0cy9taWNyb2JsYXplLXdpdGgtc3RhY2stcHJv dGVjdC5kYXQgIG1pY3JvYmxhemUtbGludXguYwogbmlvczItbGludXguYyA6 CSQoc3JjZGlyKS8uLi9yZWdmb3JtYXRzL25pb3MyLWxpbnV4LmRhdCAkKHJl Z2RhdF9zaCkKIAkkKFNIRUxMKSAkKHJlZ2RhdF9zaCkgJChzcmNkaXIpLy4u L3JlZ2Zvcm1hdHMvbmlvczItbGludXguZGF0IG5pb3MyLWxpbnV4LmMKIHBv d2VycGMtMzIuYyA6ICQoc3JjZGlyKS8uLi9yZWdmb3JtYXRzL3JzNjAwMC9w b3dlcnBjLTMyLmRhdCAkKHJlZ2RhdF9zaCkKZGlmZiAtLWdpdCBhL2dkYi9n ZGJzZXJ2ZXIvY29uZmlndXJlLnNydiBiL2dkYi9nZGJzZXJ2ZXIvY29uZmln dXJlLnNydgppbmRleCA2NzlmYzlmLi4xNmU0NGVlIDEwMDY0NAotLS0gYS9n ZGIvZ2Ric2VydmVyL2NvbmZpZ3VyZS5zcnYKKysrIGIvZ2RiL2dkYnNlcnZl ci9jb25maWd1cmUuc3J2CkBAIC0xOTQsNiArMTk0LDEyIEBAIGNhc2UgIiR7 dGFyZ2V0fSIgaW4KIAkJCXNydl9saW51eF91c3JyZWdzPXllcwogCQkJc3J2 X2xpbnV4X3RocmVhZF9kYj15ZXMKIAkJCTs7CisgIG1pY3JvYmxhemUqLSot bGludXgqKSBzcnZfcmVnb2JqPW1pY3JvYmxhemUtbGludXgubworICAgICAg ICAgICAgICAgICAgICAgICAgc3J2X3RndG9iaj0iJHNydl9saW51eF9vYmog bGludXgtbWljcm9ibGF6ZS1sb3cubyIKKyAgICAgICAgICAgICAgICAgICAg ICAgIHNydl9saW51eF91c3JyZWdzPXllcworICAgICAgICAgICAgICAgICAg ICAgICAgc3J2X2xpbnV4X3JlZ3NldHM9eWVzCisgICAgICAgICAgICAgICAg ICAgICAgICBzcnZfbGludXhfdGhyZWFkX2RiPXllcworICAgICAgICAgICAg ICAgICAgICAgICAgOzsKICAgbmlvczIqLSotbGludXgqKQlzcnZfcmVnb2Jq PSJuaW9zMi1saW51eC5vIgogCQkJc3J2X3RndG9iaj0iJHNydl9saW51eF9v YmogbGludXgtbmlvczItbG93Lm8iCiAJCQlzcnZfeG1sZmlsZXM9Im5pb3My LWxpbnV4LnhtbCIKZGlmZiAtLWdpdCBhL2dkYi9nZGJzZXJ2ZXIvbGludXgt bWljcm9ibGF6ZS1sb3cuYyBiL2dkYi9nZGJzZXJ2ZXIvbGludXgtbWljcm9i bGF6ZS1sb3cuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li5iODZiNGY1Ci0tLSAvZGV2L251bGwKKysrIGIvZ2RiL2dkYnNlcnZlci9s aW51eC1taWNyb2JsYXplLWxvdy5jCkBAIC0wLDAgKzEsMjM2IEBACisvKiBH TlUvTGludXgvTWljcm9ibGF6ZSBzcGVjaWZpYyBsb3cgbGV2ZWwgaW50ZXJm YWNlLCBmb3IgdGhlIHJlbW90ZSBzZXJ2ZXIgZm9yIAorICAgR0RCLiAKKyAg IENvcHlyaWdodCAoQykgMjAxNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4gCisgCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiBHREIuIAorIAor ICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk aXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgCisgICBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieSAKKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247 IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yIAorICAgKGF0 IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4gCisgCisgICBUaGlz IHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwgCisgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZiAKKyAgIE1F UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS UE9TRS4gIFNlZSB0aGUgCisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBmb3IgbW9yZSBkZXRhaWxzLiAKKyAKKyAgIFlvdSBzaG91bGQgaGF2ZSBy ZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlIAorICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNl ZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLyAKKyAKKyNp bmNsdWRlICJzZXJ2ZXIuaCIKKyNpbmNsdWRlICJsaW51eC1sb3cuaCIKKyNp bmNsdWRlIDxhc20vcHRyYWNlLmg+CisjaW5jbHVkZSA8c3lzL3Byb2Nmcy5o PgorIAorI2luY2x1ZGUgImdkYl9wcm9jX3NlcnZpY2UuaCIKKwordm9pZCBp bml0X3JlZ2lzdGVyc19taWNyb2JsYXplX3dpdGhfc3RhY2tfcHJvdGVjdCAo dm9pZCk7CitleHRlcm4gY29uc3Qgc3RydWN0IHRhcmdldF9kZXNjICp0ZGVz Y19taWNyb2JsYXplX3dpdGhfc3RhY2tfcHJvdGVjdDsKKworc3RhdGljIGlu dCBtaWNyb2JsYXplX3JlZ21hcFtdID0geworICBQVF9HUFIoMCksICAgICBQ VF9HUFIoMSksICAgICBQVF9HUFIoMiksICAgICBQVF9HUFIoMyksCisgIFBU X0dQUig0KSwgICAgIFBUX0dQUig1KSwgICAgIFBUX0dQUig2KSwgICAgIFBU X0dQUig3KSwKKyAgUFRfR1BSKDgpLCAgICAgUFRfR1BSKDkpLCAgICAgUFRf R1BSKDEwKSwgICAgUFRfR1BSKDExKSwKKyAgUFRfR1BSKDEyKSwgICAgUFRf R1BSKDEzKSwgICAgUFRfR1BSKDE0KSwgICAgUFRfR1BSKDE1KSwKKyAgUFRf R1BSKDE2KSwgICAgUFRfR1BSKDE3KSwgICAgUFRfR1BSKDE4KSwgICAgUFRf R1BSKDE5KSwKKyAgUFRfR1BSKDIwKSwgICAgUFRfR1BSKDIxKSwgICAgUFRf R1BSKDIyKSwgICAgUFRfR1BSKDIzKSwKKyAgUFRfR1BSKDI0KSwgICAgUFRf R1BSKDI1KSwgICAgUFRfR1BSKDI2KSwgICAgUFRfR1BSKDI3KSwKKyAgUFRf R1BSKDI4KSwgICAgUFRfR1BSKDI5KSwgICAgUFRfR1BSKDMwKSwgICAgUFRf R1BSKDMxKSwKKyAgUFRfUEMsICAgICAgICAgUFRfTVNSLCAgICAgICAgUFRf RUFSLCAgICAgICAgUFRfRVNSLAorICBQVF9GU1IsICAgICAgICBQVF9CVFIs ICAgICAgICBQVF9QVlIwLCAgICAgICBQVF9QVlIxLAorICBQVF9QVlIyLCAg ICAgICBQVF9QVlIzLCAgICAgICBQVF9QVlI0LCAgICAgICBQVF9QVlI1LAor ICBQVF9QVlI2LCAgICAgICBQVF9QVlI3LCAgICAgICBQVF9QVlI4LCAgICAg ICBQVF9QVlI5LAorICBQVF9QVlIxMCwgICAgICBQVF9QVlIxMSwgICAgICBQ VF9FRFIsICAgICAgICBQVF9QSUQsICAgICAgICAKKyAgUFRfWlBSLCAgICAg ICAgUFRfVExCWCwgICAgICAgUFRfVExCU1gsICAgICAgUFRfVExCTE8sCisg IFBUX1RMQkhJLCAgICAgIFBUX1NMUiwgICAgICAgIFBUX1NIUgorfTsKKwor I2RlZmluZSBtaWNyb2JsYXplX251bV9yZWdzIChzaXplb2YgbWljcm9ibGF6 ZV9yZWdtYXAgLyBzaXplb2YgbWljcm9ibGF6ZV9yZWdtYXBbMF0pCisgCitz dGF0aWMgaW50CittaWNyb2JsYXplX2Nhbm5vdF9zdG9yZV9yZWdpc3RlciAo aW50IHJlZ25vKQoreworICBpZiAobWljcm9ibGF6ZV9yZWdtYXBbcmVnbm9d ID09IC0xIHx8IHJlZ25vID09IDApCisgICAgcmV0dXJuIDE7CisgCisgIHJl dHVybiAwOworfQorIAorc3RhdGljIGludAorbWljcm9ibGF6ZV9jYW5ub3Rf ZmV0Y2hfcmVnaXN0ZXIgKGludCByZWdubykKK3sKKyAgcmV0dXJuIDA7Cit9 CisgCitzdGF0aWMgQ09SRV9BRERSCittaWNyb2JsYXplX2dldF9wYyAoc3Ry dWN0IHJlZ2NhY2hlICpyZWdjYWNoZSkKK3sKKyAgdW5zaWduZWQgbG9uZyBw YzsKKyAgY29sbGVjdF9yZWdpc3Rlcl9ieV9uYW1lIChyZWdjYWNoZSwgInBj IiwgJnBjKTsKKyAgcmV0dXJuIChDT1JFX0FERFIpIChwYyk7Cit9CisgCitz dGF0aWMgdm9pZCAKK21pY3JvYmxhemVfc2V0X3BjIChzdHJ1Y3QgcmVnY2Fj aGUgKnJlZ2NhY2hlLCBDT1JFX0FERFIgcGMpCit7CisgIHVuc2lnbmVkIGxv bmcgbmV3cGMgPSBwYzsKKyAgc3VwcGx5X3JlZ2lzdGVyX2J5X25hbWUgKHJl Z2NhY2hlLCAicGMiLCAmbmV3cGMpOworfQorIAorc3RhdGljIGNvbnN0IHVu c2lnbmVkIGxvbmcgbWljcm9ibGF6ZV9icmVha3BvaW50ID0gMHhiYTBjMDAx ODsKKworI2RlZmluZSBtaWNyb2JsYXplX2JyZWFrcG9pbnRfbGVuIDQKKyAK K3N0YXRpYyBpbnQKK21pY3JvYmxhemVfYnJlYWtwb2ludF9hdCAoQ09SRV9B RERSIHdoZXJlKQoreworICB1bnNpZ25lZCBsb25nIGluc247CisgICgqdGhl X3RhcmdldC0+cmVhZF9tZW1vcnkpICh3aGVyZSwgKHVuc2lnbmVkIGNoYXIg KikgJmluc24sIDQpOworCisgIGlmIChpbnNuID09IG1pY3JvYmxhemVfYnJl YWtwb2ludCkKKyAgICByZXR1cm4gMTsKKworICAvKiBJZiBuZWNlc3Nhcnks IHJlY29nbml6ZSBtb3JlIHRyYXAgaW5zdHJ1Y3Rpb25zIGhlcmUuICBHREIg b25seSB1c2VzIHRoZQorICAgICAgb25lLiAgKi8KKyAgcmV0dXJuIDA7Cit9 CisgCitzdGF0aWMgQ09SRV9BRERSCittaWNyb2JsYXplX3JlaW5zZXJ0X2Fk ZHIgKHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUpCit7CisgIHVuc2lnbmVk IGxvbmcgcGM7CisgIGNvbGxlY3RfcmVnaXN0ZXJfYnlfbmFtZSAocmVnY2Fj aGUsICJyMTUiLCAmcGMpOworICByZXR1cm4gcGM7Cit9CisgCisjaWZkZWYg SEFWRV9QVFJBQ0VfR0VUUkVHUworIAorc3RhdGljIHZvaWQKK21pY3JvYmxh emVfY29sbGVjdF9wdHJhY2VfcmVnaXN0ZXIgKHN0cnVjdCByZWdjYWNoZSAq cmVnY2FjaGUsIGludCByZWdubywgY2hhciAqYnVmKQoreworICBpbnQgc2l6 ZSA9IHJlZ2lzdGVyX3NpemUgKHJlZ2NhY2hlLT50ZGVzYywgcmVnbm8pOwor ICBtZW1zZXQgKGJ1ZiwgMCwgc2l6ZW9mIChsb25nKSk7CisKKyAgaWYgKHNp emUgPCBzaXplb2YgKGxvbmcpKQorICAgIGNvbGxlY3RfcmVnaXN0ZXIgKHJl Z2NhY2hlLCByZWdubywgYnVmICsgc2l6ZW9mIChsb25nKSAtIHNpemUpOwor ICBlbHNlCisgICAgY29sbGVjdF9yZWdpc3RlciAocmVnY2FjaGUsIHJlZ25v LCBidWYpOworfQorIAorc3RhdGljIHZvaWQKK21pY3JvYmxhemVfc3VwcGx5 X3B0cmFjZV9yZWdpc3RlciAoc3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwK KwkJCSAgICBpbnQgcmVnbm8sIGNvbnN0IGNoYXIgKmJ1ZikKK3sKKyAgaW50 IGk7CisgIGludCBzaXplID0gcmVnaXN0ZXJfc2l6ZSAocmVnY2FjaGUtPnRk ZXNjLCByZWdubyk7CisKKyAgaWYgKHJlZ25vID09IDApCisgICAgeworICAg ICAgdW5zaWduZWQgbG9uZyByZWdidWZfMCA9IDA7CisgICAgICAvKiBDbG9i YmVyaW5nIHIwIHNvIHRoYXQgaXQgaXMgYWx3YXlzIDAgYXMgZW5mb3JjZWQg YnkgaGFyZHdhcmUuICAqLworICAgICAgc3VwcGx5X3JlZ2lzdGVyIChyZWdj YWNoZSwgcmVnbm8sIChjb25zdCBjaGFyKikmcmVnYnVmXzApOworICAgIH0K KyAgZWxzZQorICAgIHsKKyAgICAgICAgaWYgKHNpemUgPCBzaXplb2YgKGxv bmcpKQorICAgICAgICAgIHN1cHBseV9yZWdpc3RlciAocmVnY2FjaGUsIHJl Z25vLCBidWYgKyBzaXplb2YgKGxvbmcpIC0gc2l6ZSk7CisgICAgICAgIGVs c2UKKyAgICAgICAgICBzdXBwbHlfcmVnaXN0ZXIgKHJlZ2NhY2hlLCByZWdu bywgYnVmKTsKKyAgICB9Cit9CisgCisvKiBQcm92aWRlIG9ubHkgYSBmaWxs IGZ1bmN0aW9uIGZvciB0aGUgZ2VuZXJhbCByZWdpc3RlciBzZXQuICBwc19s Z2V0cmVncworICAgd2lsbCB1c2UgdGhpcyBmb3IgTlBUTCBzdXBwb3J0LiAg Ki8KKyAKK3N0YXRpYyB2b2lkIG1pY3JvYmxhemVfZmlsbF9ncmVnc2V0IChz dHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLCB2b2lkICpidWYpCit7CisgIGlu dCBpOworIAorICBmb3IgKGkgPSAwOyBpIDwgbWljcm9ibGF6ZV9udW1fcmVn czsgaSsrKSAKKyAgICBtaWNyb2JsYXplX2NvbGxlY3RfcHRyYWNlX3JlZ2lz dGVyIChyZWdjYWNoZSwgaSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoY2hhciAqKSBidWYgKyBtaWNyb2JsYXplX3JlZ21h cFtpXSk7Cit9CisgCitzdGF0aWMgdm9pZAorbWljcm9ibGF6ZV9zdG9yZV9n cmVnc2V0IChzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLCBjb25zdCB2b2lk ICpidWYpCit7CisgIGludCBpOworICBmb3IgKGkgPSAwOyBpIDwgbWljcm9i bGF6ZV9udW1fcmVnczsgaSsrKQorICAgIHN1cHBseV9yZWdpc3RlciAocmVn Y2FjaGUsIGksIChjaGFyICopIGJ1ZiArIG1pY3JvYmxhemVfcmVnbWFwW2ld KTsKK30KKyAKKyNlbmRpZiAvKiBIQVZFX1BUUkFDRV9HRVRSRUdTICovCisK K3N0YXRpYyBzdHJ1Y3QgcmVnc2V0X2luZm8gbWljcm9ibGF6ZV9yZWdzZXRz W10gPSB7CisjaWZkZWYgSEFWRV9QVFJBQ0VfR0VUUkVHUworICB7IFBUUkFD RV9HRVRSRUdTLCBQVFJBQ0VfU0VUUkVHUywgMCwgMzYgKiBzaXplb2YgKGVs Zl9ncmVnc2V0X3QpLAorICAgIEdFTkVSQUxfUkVHUywgbWljcm9ibGF6ZV9m aWxsX2dyZWdzZXQsIG1pY3JvYmxhemVfc3RvcmVfZ3JlZ3NldCB9LAorICB7 IDAsIDAsIDAsIC0xLCAtMSwgTlVMTCwgTlVMTCB9LAorI2VuZGlmIC8qIEhB VkVfUFRSQUNFX0dFVFJFR1MgKi8KKyAgeyAwLCAwLCAwLCAtMSwgLTEsIE5V TEwsIE5VTEwgfQorfTsgCisKK3N0YXRpYyBzdHJ1Y3QgcmVnc2V0c19pbmZv IG1pY3JvYmxhemVfcmVnc2V0c19pbmZvID0geworICBtaWNyb2JsYXplX3Jl Z3NldHMsIC8qIHJlZ3NldHMgKi8KKyAgMCwgLyogbnVtX3JlZ3NldHMgKi8K KyAgTlVMTCwgLyogZGlzYWJsZWRfcmVnc2V0cyAqLworfTsKKyAKK3N0YXRp YyBzdHJ1Y3QgdXNycmVnc19pbmZvIG1pY3JvYmxhemVfdXNycmVnc19pbmZv ID0KK3sgCisgICBtaWNyb2JsYXplX251bV9yZWdzLAorICAgbWljcm9ibGF6 ZV9yZWdtYXAsCit9OworIAorc3RhdGljIHN0cnVjdCByZWdzX2luZm8gcmVn c19pbmZvID0KK3sKKyAgTlVMTCwgLyogcmVnc2V0X2JpdG1hcCAqLworICAm bWljcm9ibGF6ZV91c3JyZWdzX2luZm8sCisgICZtaWNyb2JsYXplX3JlZ3Nl dHNfaW5mbyAKK307CisgCitzdGF0aWMgY29uc3Qgc3RydWN0IHJlZ3NfaW5m byAqCittaWNyb2JsYXplX3JlZ3NfaW5mbyAodm9pZCkKK3sKKyAgcmV0dXJu ICZyZWdzX2luZm87Cit9CisKK3N0YXRpYyB2b2lkCittaWNyb2JsYXplX2Fy Y2hfc2V0dXAgKHZvaWQpCit7CisgIGN1cnJlbnRfcHJvY2VzcyAoKS0+dGRl c2MgPSB0ZGVzY19taWNyb2JsYXplX3dpdGhfc3RhY2tfcHJvdGVjdDsKK30K Kworc3RydWN0IGxpbnV4X3RhcmdldF9vcHMgdGhlX2xvd190YXJnZXQgPSB7 CisgIG1pY3JvYmxhemVfYXJjaF9zZXR1cCwKKyAgbWljcm9ibGF6ZV9yZWdz X2luZm8sCisgIG1pY3JvYmxhemVfY2Fubm90X2ZldGNoX3JlZ2lzdGVyLAor ICBtaWNyb2JsYXplX2Nhbm5vdF9zdG9yZV9yZWdpc3RlciwKKyAgTlVMTCwg LyogZmV0Y2hfcmVnaXN0ZXIgKi8KKyAgbWljcm9ibGF6ZV9nZXRfcGMsCisg IG1pY3JvYmxhemVfc2V0X3BjLAorICAoY29uc3QgdW5zaWduZWQgY2hhciAq KSAmbWljcm9ibGF6ZV9icmVha3BvaW50LAorICBtaWNyb2JsYXplX2JyZWFr cG9pbnRfbGVuLAorICBtaWNyb2JsYXplX3JlaW5zZXJ0X2FkZHIsCisgIDAs CisgIG1pY3JvYmxhemVfYnJlYWtwb2ludF9hdCwKKyAgTlVMTCwKKyAgTlVM TCwKKyAgTlVMTCwKKyAgTlVMTCwKKyAgTlVMTCwKKyAgbWljcm9ibGF6ZV9j b2xsZWN0X3B0cmFjZV9yZWdpc3RlciwKKyAgbWljcm9ibGF6ZV9zdXBwbHlf cHRyYWNlX3JlZ2lzdGVyLAorICBOVUxMLAorICBOVUxMLAorICBOVUxMLAor ICBOVUxMLAorfTsKKwordm9pZAoraW5pdGlhbGl6ZV9sb3dfYXJjaCAodm9p ZCkKK3sKKyAgaW5pdF9yZWdpc3RlcnNfbWljcm9ibGF6ZV93aXRoX3N0YWNr X3Byb3RlY3QgKCk7CisKKyAgaW5pdGlhbGl6ZV9yZWdzZXRzX2luZm8gKCZt aWNyb2JsYXplX3JlZ3NldHNfaW5mbyk7Cit9Ci0tIAoxLjcuMQoK --_002_37378DC5BCD0EE48BA4B082E0B55DFAA40BD39E0XAPPVEXMBX01xln_--