From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11165 invoked by alias); 18 Jul 2012 00:50:28 -0000 Received: (qmail 11156 invoked by uid 22791); 18 Jul 2012 00:50:26 -0000 X-SWARE-Spam-Status: No, hits=0.8 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED,RCVD_IN_SORBS_DUL,RDNS_DYNAMIC,SPF_HELO_PASS,SPF_NEUTRAL,TW_BJ,T_FRT_PROFILE2 X-Spam-Check-By: sourceware.org Received: from gam75-4-82-235-220-81.fbx.proxad.net (HELO siegfried.gbfo.org) (82.235.220.81) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 18 Jul 2012 00:50:11 +0000 Received: from erda.mds (localhost [127.0.0.1]) by siegfried.gbfo.org (8.13.6/8.13.6) with ESMTP id q6I0o8nv006169 for ; Wed, 18 Jul 2012 02:50:08 +0200 Received: from localhost (saffroy@localhost) by erda.mds (8.13.6/8.13.6/Submit) with ESMTP id q6I0o8IG006160 for ; Wed, 18 Jul 2012 02:50:08 +0200 Date: Wed, 18 Jul 2012 00:50:00 -0000 From: Jean-Marc Saffroy To: gdb-patches@sources.redhat.com Subject: [PATCH] refreshed patch for PR 11804 and PR 9904 Message-ID: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1463802624-2128796671-1342572608=:5348" X-IsSubscribed: yes 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 X-SW-Source: 2012-07/txt/msg00249.txt.bz2 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. ---1463802624-2128796671-1342572608=:5348 Content-Type: TEXT/PLAIN; charset=US-ASCII Content-length: 645 Hi, I just found out that gcore has been broken with some Linux kernels for a while (observed with some 3.2 kernels on Ubuntu, but not on a vanilla 2.6.36 on another box), and this led me there: http://sourceware.org/bugzilla/show_bug.cgi?id=9904 http://sourceware.org/bugzilla/show_bug.cgi?id=11804 In particular, 11804 has an interesting discussion of the problem, and a very nice patch, which I've refreshed for gdb 7.4.1. So here it is, if anyone else needs it: it fixes gcore for my case, but I didn't check the test suite bits. It would be nice to see this finally landed in gdb! Cheers, Jean-Marc Saffroy -- saffroy@gmail.com ---1463802624-2128796671-1342572608=:5348 Content-Type: TEXT/x-diff; name=gcore.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=gcore.patch Content-length: 16971 ZGlmZiAtLWdpdCBhL2dkYi9kZWZzLmggYi9nZGIvZGVmcy5oDQotLS0gYS9n ZGIvZGVmcy5oDQorKysgYi9nZGIvZGVmcy5oDQpAQCAtNjcyLDkgKzY3Miwx MCBAQCBleHRlcm4gdm9pZCBpbml0X3NvdXJjZV9wYXRoICh2b2lkKTsNCiAN CiAvKiBGcm9tIGV4ZWMuYyAqLw0KIA0KKy8qIE1PRElGSUVEIGhhcyB2YWx1 ZSAtMSBmb3IgdW5rbm93biwgMCBmb3Igbm90IG1vZGlmaWVkLCAxIGZvciBt b2RpZmllZC4gICovDQogdHlwZWRlZiBpbnQgKCpmaW5kX21lbW9yeV9yZWdp b25fZnR5cGUpIChDT1JFX0FERFIgYWRkciwgdW5zaWduZWQgbG9uZyBzaXpl LA0KIAkJCQkJIGludCByZWFkLCBpbnQgd3JpdGUsIGludCBleGVjLA0KLQkJ CQkJIHZvaWQgKmRhdGEpOw0KKwkJCQkJIGludCBtb2RpZmllZCwgdm9pZCAq ZGF0YSk7DQogDQogLyogVGFrZSBvdmVyIHRoZSAnZmluZF9tYXBwZWRfbWVt b3J5JyB2ZWN0b3IgZnJvbSBleGVjLmMuICAqLw0KIGV4dGVybiB2b2lkIGV4 ZWNfc2V0X2ZpbmRfbWVtb3J5X3JlZ2lvbnMNCmRpZmYgLS1naXQgYS9nZGIv ZmJzZC1uYXQuYyBiL2dkYi9mYnNkLW5hdC5jDQotLS0gYS9nZGIvZmJzZC1u YXQuYw0KKysrIGIvZ2RiL2Zic2QtbmF0LmMNCkBAIC0xMzIsNyArMTMyLDcg QEAgZmJzZF9maW5kX21lbW9yeV9yZWdpb25zIChmaW5kX21lbW9yeV9yZQ0K IAl9DQogDQogICAgICAgLyogSW52b2tlIHRoZSBjYWxsYmFjayBmdW5jdGlv biB0byBjcmVhdGUgdGhlIGNvcmVmaWxlIHNlZ21lbnQuICAqLw0KLSAgICAg IGZ1bmMgKHN0YXJ0LCBzaXplLCByZWFkLCB3cml0ZSwgZXhlYywgb2JmZCk7 DQorICAgICAgZnVuYyAoc3RhcnQsIHNpemUsIHJlYWQsIHdyaXRlLCBleGVj LCAtMSwgb2JmZCk7DQogICAgIH0NCiANCiAgIGRvX2NsZWFudXBzIChjbGVh bnVwKTsNCmRpZmYgLS1naXQgYS9nZGIvZ2NvcmUuYyBiL2dkYi9nY29yZS5j DQotLS0gYS9nZGIvZ2NvcmUuYw0KKysrIGIvZ2RiL2djb3JlLmMNCkBAIC0z NzcsOCArMzc3LDggQEAgbWFrZV9vdXRwdXRfcGhkcnMgKGJmZCAqb2JmZCwg YXNlY3Rpb24gKg0KIH0NCiANCiBzdGF0aWMgaW50DQotZ2NvcmVfY3JlYXRl X2NhbGxiYWNrIChDT1JFX0FERFIgdmFkZHIsIHVuc2lnbmVkIGxvbmcgc2l6 ZSwNCi0JCSAgICAgICBpbnQgcmVhZCwgaW50IHdyaXRlLCBpbnQgZXhlYywg dm9pZCAqZGF0YSkNCitnY29yZV9jcmVhdGVfY2FsbGJhY2sgKENPUkVfQURE UiB2YWRkciwgdW5zaWduZWQgbG9uZyBzaXplLCBpbnQgcmVhZCwNCisJCSAg ICAgICBpbnQgd3JpdGUsIGludCBleGVjLCBpbnQgbW9kaWZpZWQsIHZvaWQg KmRhdGEpDQogew0KICAgYmZkICpvYmZkID0gZGF0YTsNCiAgIGFzZWN0aW9u ICpvc2VjOw0KQEAgLTM4Nyw3ICszODcsNyBAQCBnY29yZV9jcmVhdGVfY2Fs bGJhY2sgKENPUkVfQUREUiB2YWRkciwgDQogICAvKiBJZiB0aGUgbWVtb3J5 IHNlZ21lbnQgaGFzIG5vIHBlcm1pc3Npb25zIHNldCwgaWdub3JlIGl0LCBv dGhlcndpc2UNCiAgICAgIHdoZW4gd2UgbGF0ZXIgdHJ5IHRvIGFjY2VzcyBp dCBmb3IgcmVhZC93cml0ZSwgd2UnbGwgZ2V0IGFuIGVycm9yDQogICAgICBv ciBqYW0gdGhlIGtlcm5lbC4gICovDQotICBpZiAocmVhZCA9PSAwICYmIHdy aXRlID09IDAgJiYgZXhlYyA9PSAwKQ0KKyAgaWYgKHJlYWQgPT0gMCAmJiB3 cml0ZSA9PSAwICYmIGV4ZWMgPT0gMCAmJiBtb2RpZmllZCA9PSAwKQ0KICAg ICB7DQogICAgICAgaWYgKGluZm9fdmVyYm9zZSkNCiAgICAgICAgIHsNCkBA IC0zOTgsNyArMzk4LDcgQEAgZ2NvcmVfY3JlYXRlX2NhbGxiYWNrIChDT1JF X0FERFIgdmFkZHIsIA0KICAgICAgIHJldHVybiAwOw0KICAgICB9DQogDQot ICBpZiAod3JpdGUgPT0gMCAmJiAhc29saWJfa2VlcF9kYXRhX2luX2NvcmUg KHZhZGRyLCBzaXplKSkNCisgIGlmICh3cml0ZSA9PSAwICYmIG1vZGlmaWVk ID09IDAgJiYgIXNvbGliX2tlZXBfZGF0YV9pbl9jb3JlICh2YWRkciwgc2l6 ZSkpDQogICAgIHsNCiAgICAgICAvKiBTZWUgaWYgdGhpcyByZWdpb24gb2Yg bWVtb3J5IGxpZXMgaW5zaWRlIGEga25vd24gZmlsZSBvbiBkaXNrLg0KIAkg SWYgc28sIHdlIGNhbiBhdm9pZCBjb3B5aW5nIGl0cyBjb250ZW50cyBieSBj bGVhcmluZyBTRUNfTE9BRC4gICovDQpAQCAtNDMwLDEwICs0MzAsMTIgQEAg Z2NvcmVfY3JlYXRlX2NhbGxiYWNrIChDT1JFX0FERFIgdmFkZHIsIA0KIAkg ICAgfQ0KIAl9DQogDQotICAgIGtlZXA6DQotICAgICAgZmxhZ3MgfD0gU0VD X1JFQURPTkxZOw0KKyAgICBrZWVwOjsNCiAgICAgfQ0KIA0KKyAgaWYgKHdy aXRlID09IDApDQorICAgIGZsYWdzIHw9IFNFQ19SRUFET05MWTsNCisNCiAg IGlmIChleGVjKQ0KICAgICBmbGFncyB8PSBTRUNfQ09ERTsNCiAgIGVsc2UN CkBAIC00ODMsNiArNDg1LDcgQEAgb2JqZmlsZV9maW5kX21lbW9yeV9yZWdp b25zIChmaW5kX21lbW9yeQ0KIAkJCSAxLCAvKiBBbGwgc2VjdGlvbnMgd2ls bCBiZSByZWFkYWJsZS4gICovDQogCQkJIChmbGFncyAmIFNFQ19SRUFET05M WSkgPT0gMCwgLyogV3JpdGFibGUuICAqLw0KIAkJCSAoZmxhZ3MgJiBTRUNf Q09ERSkgIT0gMCwgLyogRXhlY3V0YWJsZS4gICovDQorCQkJIC0xLCAvKiBN b2RpZmllZCBpcyB1bmtub3duLiAgKi8NCiAJCQkgb2JmZCk7DQogCSAgaWYg KHJldCAhPSAwKQ0KIAkgICAgcmV0dXJuIHJldDsNCkBAIC00OTUsNiArNDk4 LDcgQEAgb2JqZmlsZV9maW5kX21lbW9yeV9yZWdpb25zIChmaW5kX21lbW9y eQ0KIAkgICAgIDEsIC8qIFN0YWNrIHNlY3Rpb24gd2lsbCBiZSByZWFkYWJs ZS4gICovDQogCSAgICAgMSwgLyogU3RhY2sgc2VjdGlvbiB3aWxsIGJlIHdy aXRhYmxlLiAgKi8NCiAJICAgICAwLCAvKiBTdGFjayBzZWN0aW9uIHdpbGwg bm90IGJlIGV4ZWN1dGFibGUuICAqLw0KKwkgICAgIDEsIC8qIFN0YWNrIHNl Y3Rpb24gd2lsbCBiZSBtb2RpZmllZC4gICovDQogCSAgICAgb2JmZCk7DQog DQogICAvKiBNYWtlIGEgaGVhcCBzZWdtZW50LiAgKi8NCkBAIC01MDMsNiAr NTA3LDcgQEAgb2JqZmlsZV9maW5kX21lbW9yeV9yZWdpb25zIChmaW5kX21l bW9yeQ0KIAkgICAgIDEsIC8qIEhlYXAgc2VjdGlvbiB3aWxsIGJlIHJlYWRh YmxlLiAgKi8NCiAJICAgICAxLCAvKiBIZWFwIHNlY3Rpb24gd2lsbCBiZSB3 cml0YWJsZS4gICovDQogCSAgICAgMCwgLyogSGVhcCBzZWN0aW9uIHdpbGwg bm90IGJlIGV4ZWN1dGFibGUuICAqLw0KKwkgICAgIDEsIC8qIEhlYXAgc2Vj dGlvbiB3aWxsIGJlIG1vZGlmaWVkLiAgKi8NCiAJICAgICBvYmZkKTsNCiAN CiAgIHJldHVybiAwOw0KZGlmZiAtLWdpdCBhL2dkYi9nbnUtbmF0LmMgYi9n ZGIvZ251LW5hdC5jDQotLS0gYS9nZGIvZ251LW5hdC5jDQorKysgYi9nZGIv Z251LW5hdC5jDQpAQCAtMjU1OCw3ICsyNTU4LDcgQEAgZ251X2ZpbmRfbWVt b3J5X3JlZ2lvbnMgKGZpbmRfbWVtb3J5X3JlZw0KIAkJICAgICBsYXN0X3By b3RlY3Rpb24gJiBWTV9QUk9UX1JFQUQsDQogCQkgICAgIGxhc3RfcHJvdGVj dGlvbiAmIFZNX1BST1RfV1JJVEUsDQogCQkgICAgIGxhc3RfcHJvdGVjdGlv biAmIFZNX1BST1RfRVhFQ1VURSwNCi0JCSAgICAgZGF0YSk7DQorCQkgICAg IC0xLCBkYXRhKTsNCiAJICBsYXN0X3JlZ2lvbl9hZGRyZXNzID0gcmVnaW9u X2FkZHJlc3M7DQogCSAgbGFzdF9yZWdpb25fZW5kID0gcmVnaW9uX2FkZHJl c3MgKz0gcmVnaW9uX2xlbmd0aDsNCiAJICBsYXN0X3Byb3RlY3Rpb24gPSBw cm90ZWN0aW9uOw0KQEAgLTI1NzEsNyArMjU3MSw3IEBAIGdudV9maW5kX21l bW9yeV9yZWdpb25zIChmaW5kX21lbW9yeV9yZWcNCiAJICAgICBsYXN0X3By b3RlY3Rpb24gJiBWTV9QUk9UX1JFQUQsDQogCSAgICAgbGFzdF9wcm90ZWN0 aW9uICYgVk1fUFJPVF9XUklURSwNCiAJICAgICBsYXN0X3Byb3RlY3Rpb24g JiBWTV9QUk9UX0VYRUNVVEUsDQotCSAgICAgZGF0YSk7DQorCSAgICAgLTEs IGRhdGEpOw0KIA0KICAgcmV0dXJuIDA7DQogfQ0KZGlmZiAtLWdpdCBhL2dk Yi9saW51eC1uYXQuYyBiL2dkYi9saW51eC1uYXQuYw0KLS0tIGEvZ2RiL2xp bnV4LW5hdC5jDQorKysgYi9nZGIvbGludXgtbmF0LmMNCkBAIC00MzUyLDcg KzQzNTIsNyBAQCByZWFkX21hcHBpbmcgKEZJTEUgKm1hcGZpbGUsDQogCSAg ICAgIGxvbmcgbG9uZyAqZW5kYWRkciwNCiAJICAgICAgY2hhciAqcGVybWlz c2lvbnMsDQogCSAgICAgIGxvbmcgbG9uZyAqb2Zmc2V0LA0KLQkgICAgICBj aGFyICpkZXZpY2UsIGxvbmcgbG9uZyAqaW5vZGUsIGNoYXIgKmZpbGVuYW1l KQ0KKwkgICAgICBjaGFyICpkZXZpY2UsIGxvbmcgbG9uZyAqaW5vZGUsIGNo YXIgKmZpbGVuYW1lLCBpbnQgKm1vZGlmaWVkKQ0KIHsNCiAgIGludCByZXQg PSBmc2NhbmYgKG1hcGZpbGUsICIlbGx4LSVsbHggJXMgJWxseCAlcyAlbGx4 IiwNCiAJCSAgICBhZGRyLCBlbmRhZGRyLCBwZXJtaXNzaW9ucywgb2Zmc2V0 LCBkZXZpY2UsIGlub2RlKTsNCkBAIC00MzcwLDYgKzQzNzAsNDAgQEAgcmVh ZF9tYXBwaW5nIChGSUxFICptYXBmaWxlLA0KICAgICAgIHJldCArPSBmc2Nh bmYgKG1hcGZpbGUsICIlW15cbl1cbiIsIGZpbGVuYW1lKTsNCiAgICAgfQ0K IA0KKyAgaWYgKG1vZGlmaWVkICE9IE5VTEwpDQorICAgIHsNCisgICAgICAq bW9kaWZpZWQgPSAtMTsNCisgICAgICBmb3IgKDs7KQ0KKwl7DQorCSAgaW50 IGNoOw0KKwkgIGNoYXIga2V5d29yZFs2NCArIDFdOw0KKwkgIHVuc2lnbmVk IGxvbmcgbnVtYmVyOw0KKw0KKwkgIGNoID0gZmdldGMgKG1hcGZpbGUpOw0K KwkgIGlmIChjaCAhPSBFT0YpDQorCSAgICB1bmdldGMgKGNoLCBtYXBmaWxl KTsNCisJICBpZiAoY2ggPCAnQScgfHwgY2ggPiAnWicpDQorCSAgICBicmVh azsNCisJICBpZiAoZnNjYW5mIChtYXBmaWxlLCAiJTY0cyVsdSBrQlxuIiwg a2V5d29yZCwgJm51bWJlcikgIT0gMikNCisJICAgIHsNCisJICAgICAgd2Fy bmluZyAoXygiRXJyb3IgcGFyc2luZyAvcHJvYy9QSUQve3MsfW1hcHMgZmls ZSIpKTsNCisJICAgICAgZG8NCisJCWNoID0gZmdldGMgKG1hcGZpbGUpOw0K KwkgICAgICB3aGlsZSAoY2ggIT0gRU9GICYmIGNoICE9ICdcbicpOw0KKwkg ICAgICBicmVhazsNCisJICAgIH0NCisJICBpZiAobnVtYmVyICE9IDAgJiYg KHN0cmNtcCAoa2V5d29yZCwgIlNoYXJlZF9EaXJ0eToiKSA9PSAwDQorCQkJ ICAgICAgfHwgc3RyY21wIChrZXl3b3JkLCAiUHJpdmF0ZV9EaXJ0eToiKSA9 PSAwDQorCQkJICAgICAgfHwgc3RyY21wIChrZXl3b3JkLCAiU3dhcDoiKSA9 PSAwKSkNCisJICAgICptb2RpZmllZCA9IDE7DQorCSAgZWxzZSBpZiAoKm1v ZGlmaWVkID09IC0xKQ0KKwkgICAgew0KKwkgICAgICAvKiBWYWxpZCBsaW5l IHByb3ZlcyBhbiBzbWFwcyBmaWxlIGlzIGJlaW5nIHJlYWQgaW4uICAqLw0K KwkgICAgICAqbW9kaWZpZWQgPSAwOw0KKwkgICAgfQ0KKwl9DQorICAgIH0N CisNCiAgIHJldHVybiAocmV0ICE9IDAgJiYgcmV0ICE9IEVPRik7DQogfQ0K IA0KQEAgLTQzODQsMTMgKzQ0MTgsMTcgQEAgbGludXhfbmF0X2ZpbmRfbWVt b3J5X3JlZ2lvbnMgKGZpbmRfbWVtbw0KICAgRklMRSAqbWFwc2ZpbGU7DQog ICBsb25nIGxvbmcgYWRkciwgZW5kYWRkciwgc2l6ZSwgb2Zmc2V0LCBpbm9k ZTsNCiAgIGNoYXIgcGVybWlzc2lvbnNbOF0sIGRldmljZVs4XSwgZmlsZW5h bWVbTUFYUEFUSExFTl07DQotICBpbnQgcmVhZCwgd3JpdGUsIGV4ZWM7DQor ICBpbnQgcmVhZCwgd3JpdGUsIGV4ZWMsIG1vZGlmaWVkOw0KICAgc3RydWN0 IGNsZWFudXAgKmNsZWFudXA7DQogDQogICAvKiBDb21wb3NlIHRoZSBmaWxl bmFtZSBmb3IgdGhlIC9wcm9jIG1lbW9yeSBtYXAsIGFuZCBvcGVuIGl0LiAg Ki8NCi0gIHNwcmludGYgKG1hcHNmaWxlbmFtZSwgIi9wcm9jLyVkL21hcHMi LCBwaWQpOw0KKyAgc3ByaW50ZiAobWFwc2ZpbGVuYW1lLCAiL3Byb2MvJWQv c21hcHMiLCBwaWQpOw0KICAgaWYgKChtYXBzZmlsZSA9IGZvcGVuIChtYXBz ZmlsZW5hbWUsICJyIikpID09IE5VTEwpDQotICAgIGVycm9yIChfKCJDb3Vs ZCBub3Qgb3BlbiAlcy4iKSwgbWFwc2ZpbGVuYW1lKTsNCisgICAgew0KKyAg ICAgIHNwcmludGYgKG1hcHNmaWxlbmFtZSwgIi9wcm9jLyVkL21hcHMiLCBw aWQpOw0KKyAgICAgIGlmICgobWFwc2ZpbGUgPSBmb3BlbiAobWFwc2ZpbGVu YW1lLCAiciIpKSA9PSBOVUxMKQ0KKyAgICAgICAgZXJyb3IgKF8oIkNvdWxk IG5vdCBvcGVuICVzLiIpLCBtYXBzZmlsZW5hbWUpOw0KKyAgICB9DQogICBj bGVhbnVwID0gbWFrZV9jbGVhbnVwX2ZjbG9zZSAobWFwc2ZpbGUpOw0KIA0K ICAgaWYgKGluZm9fdmVyYm9zZSkNCkBAIC00Mzk5LDcgKzQ0MzcsNyBAQCBs aW51eF9uYXRfZmluZF9tZW1vcnlfcmVnaW9ucyAoZmluZF9tZW1vDQogDQog ICAvKiBOb3cgaXRlcmF0ZSB1bnRpbCBlbmQtb2YtZmlsZS4gICovDQogICB3 aGlsZSAocmVhZF9tYXBwaW5nIChtYXBzZmlsZSwgJmFkZHIsICZlbmRhZGRy LCAmcGVybWlzc2lvbnNbMF0sDQotCQkgICAgICAgJm9mZnNldCwgJmRldmlj ZVswXSwgJmlub2RlLCAmZmlsZW5hbWVbMF0pKQ0KKwkJICAgICAgICZvZmZz ZXQsICZkZXZpY2VbMF0sICZpbm9kZSwgJmZpbGVuYW1lWzBdLCAmbW9kaWZp ZWQpKQ0KICAgICB7DQogICAgICAgc2l6ZSA9IGVuZGFkZHIgLSBhZGRyOw0K IA0KQEAgLTQ0MjIsNyArNDQ2MCw3IEBAIGxpbnV4X25hdF9maW5kX21lbW9y eV9yZWdpb25zIChmaW5kX21lbW8NCiANCiAgICAgICAvKiBJbnZva2UgdGhl IGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGNyZWF0ZSB0aGUgY29yZWZpbGUNCiAJ IHNlZ21lbnQuICAqLw0KLSAgICAgIGZ1bmMgKGFkZHIsIHNpemUsIHJlYWQs IHdyaXRlLCBleGVjLCBvYmZkKTsNCisgICAgICBmdW5jIChhZGRyLCBzaXpl LCByZWFkLCB3cml0ZSwgZXhlYywgbW9kaWZpZWQsIG9iZmQpOw0KICAgICB9 DQogICBkb19jbGVhbnVwcyAoY2xlYW51cCk7DQogICByZXR1cm4gMDsNCkBA IC00ODcxLDcgKzQ5MDksOCBAQCBsaW51eF9uYXRfaW5mb19wcm9jX2NtZF8x IChjaGFyICphcmdzLCBlDQogCSAgICB9DQogDQogCSAgd2hpbGUgKHJlYWRf bWFwcGluZyAocHJvY2ZpbGUsICZhZGRyLCAmZW5kYWRkciwgJnBlcm1pc3Np b25zWzBdLA0KLQkJCSAgICAgICAmb2Zmc2V0LCAmZGV2aWNlWzBdLCAmaW5v ZGUsICZmaWxlbmFtZVswXSkpDQorCQkJICAgICAgICZvZmZzZXQsICZkZXZp Y2VbMF0sICZpbm9kZSwgJmZpbGVuYW1lWzBdLA0KKwkJCSAgICAgICBOVUxM KSkNCiAJICAgIHsNCiAJICAgICAgc2l6ZSA9IGVuZGFkZHIgLSBhZGRyOw0K IA0KZGlmZiAtLWdpdCBhL2dkYi9wcm9jZnMuYyBiL2dkYi9wcm9jZnMuYw0K LS0tIGEvZ2RiL3Byb2Nmcy5jDQorKysgYi9nZGIvcHJvY2ZzLmMNCkBAIC01 Mjc1LDcgKzUyNzUsNyBAQCBmaW5kX21lbW9yeV9yZWdpb25zX2NhbGxiYWNr IChzdHJ1Y3QgcHJtDQogCQkgIChtYXAtPnByX21mbGFncyAmIE1BX1JFQUQp ICE9IDAsDQogCQkgIChtYXAtPnByX21mbGFncyAmIE1BX1dSSVRFKSAhPSAw LA0KIAkJICAobWFwLT5wcl9tZmxhZ3MgJiBNQV9FWEVDKSAhPSAwLA0KLQkJ ICBkYXRhKTsNCisJCSAgLTEsIGRhdGEpOw0KIH0NCiANCiAvKiBFeHRlcm5h bCBpbnRlcmZhY2UuICBDYWxscyBhIGNhbGxiYWNrIGZ1bmN0aW9uIG9uY2Ug Zm9yIGVhY2gNCmRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5iYXNl L2djb3JlLXJlbHJvLWxpYi5jIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9n Y29yZS1yZWxyby1saWIuYw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCi0tLSAv ZGV2L251bGwNCisrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvZ2NvcmUt cmVscm8tbGliLmMNCkBAIC0wLDAgKzEsMjEgQEANCisvKiBDb3B5cmlnaHQg MjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCisNCisgICBU aGlzIGZpbGUgaXMgcGFydCBvZiBHREIuDQorDQorICAgVGhpcyBwcm9ncmFt IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFu ZC9vciBtb2RpZnkNCisgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KKyAg IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9u IDMgb2YgdGhlIExpY2Vuc2UsIG9yDQorICAgKGF0IHlvdXIgb3B0aW9uKSBh bnkgbGF0ZXIgdmVyc2lvbi4NCisNCisgICBUaGlzIHByb2dyYW0gaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwN CisgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0 aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KKyAgIE1FUkNIQU5UQUJJTElUWSBv ciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUN CisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRh aWxzLg0KKw0KKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQorICAgYWxvbmcg d2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5n bnUub3JnL2xpY2Vuc2VzLz4uICAqLw0KKw0KK3ZvaWQNCitsaWIgKHZvaWQp DQorew0KK30NCmRpZmYgLS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5iYXNl L2djb3JlLXJlbHJvLW1haW4uYyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uv Z2NvcmUtcmVscm8tbWFpbi5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KLS0t IC9kZXYvbnVsbA0KKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9nY29y ZS1yZWxyby1tYWluLmMNCkBAIC0wLDAgKzEsMjUgQEANCisvKiBDb3B5cmln aHQgMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCisNCisg ICBUaGlzIGZpbGUgaXMgcGFydCBvZiBHREIuDQorDQorICAgVGhpcyBwcm9n cmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkNCisgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0K KyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yDQorICAgKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4NCisNCisgICBUaGlzIHByb2dyYW0gaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1 bCwNCisgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KKyAgIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0 aGUNCisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBk ZXRhaWxzLg0KKw0KKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNv cHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQorICAgYWxv bmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3 dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLw0KKw0KK2V4dGVybiB2b2lkIGxp YiAodm9pZCk7DQorDQoraW50DQorbWFpbiAodm9pZCkNCit7DQorICBsaWIg KCk7DQorICByZXR1cm4gMDsNCit9DQpkaWZmIC0tZ2l0IGEvZ2RiL3Rlc3Rz dWl0ZS9nZGIuYmFzZS9nY29yZS1yZWxyby5leHAgYi9nZGIvdGVzdHN1aXRl L2dkYi5iYXNlL2djb3JlLXJlbHJvLmV4cA0KbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCi0tLSAvZGV2L251bGwNCisrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJh c2UvZ2NvcmUtcmVscm8uZXhwDQpAQCAtMCwwICsxLDgwIEBADQorIyBDb3B5 cmlnaHQgMjAxMCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4NCisN CisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQorIyBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQ0KKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsg ZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3INCisjIChhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQorIw0KKyMgVGhpcyBw cm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsDQorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KKyMgTUVSQ0hB TlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF LiAgU2VlIHRoZQ0KKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y IG1vcmUgZGV0YWlscy4NCisjDQorIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2 ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0K KyMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0 cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uDQorDQoraWYge1tza2lwX3No bGliX3Rlc3RzXX0gew0KKyAgICByZXR1cm4gMA0KK30NCisNCitzZXQgdGVz dGZpbGUgImdjb3JlLXJlbHJvIg0KK3NldCBzcmNtYWluZmlsZSAke3Rlc3Rm aWxlfS1tYWluLmMNCitzZXQgc3JjbGliZmlsZSAke3Rlc3RmaWxlfS1saWIu Yw0KK3NldCBsaWJmaWxlICR7b2JqZGlyfS8ke3N1YmRpcn0vJHt0ZXN0Zmls ZX0tbGliLnNvDQorc2V0IG9iamZpbGUgJHtvYmpkaXJ9LyR7c3ViZGlyfS8k e3Rlc3RmaWxlfS1tYWluLm8NCitzZXQgZXhlY3V0YWJsZSAke3Rlc3RmaWxl fS1tYWluDQorc2V0IGJpbmZpbGUgJHtvYmpkaXJ9LyR7c3ViZGlyfS8ke2V4 ZWN1dGFibGV9DQorc2V0IGdjb3JlZmlsZSAke29iamRpcn0vJHtzdWJkaXJ9 LyR7ZXhlY3V0YWJsZX0uZ2NvcmUNCisNCitpZiB7IFtnZGJfY29tcGlsZV9z aGxpYiAke3NyY2Rpcn0vJHtzdWJkaXJ9LyR7c3JjbGliZmlsZX0gJHtsaWJm aWxlfSB7ZGVidWd9XSAhPSAiIg0KKyAgICAgfHwgW2dkYl9jb21waWxlICR7 c3JjZGlyfS8ke3N1YmRpcn0vJHtzcmNtYWluZmlsZX0gJHtvYmpmaWxlfSBv YmplY3Qge2RlYnVnfV0gIT0gIiIgfSB7DQorICAgICB1bnRlc3RlZCAke3Rl c3RmaWxlfS5leHANCisgICAgIHJldHVybiAtMQ0KK30NCitzZXQgb3B0cyBb bGlzdCBkZWJ1ZyBzaGxpYj0ke2xpYmZpbGV9IGFkZGl0aW9uYWxfZmxhZ3M9 LVdsLC16LHJlbHJvXQ0KK2lmIHsgW2dkYl9jb21waWxlICR7b2JqZmlsZX0g JHtiaW5maWxlfSBleGVjdXRhYmxlICRvcHRzXSAhPSAiIiB9IHsNCisgICAg IHVuc3VwcG9ydGVkICItV2wsLXoscmVscm8gY29tcGlsYXRpb24gZmFpbGVk Ig0KKyAgICAgcmV0dXJuIC0xDQorfQ0KKw0KK2NsZWFuX3Jlc3RhcnQgJGV4 ZWN1dGFibGUNCitnZGJfbG9hZF9zaGxpYnMgJGxpYmZpbGUNCisNCisjIERv ZXMgdGhpcyBnZGIgc3VwcG9ydCBnY29yZT8NCitzZXQgdGVzdCAiaGVscCBn Y29yZSINCitnZGJfdGVzdF9tdWx0aXBsZSAkdGVzdCAkdGVzdCB7DQorICAg IC1yZSAiVW5kZWZpbmVkIGNvbW1hbmQ6IC5nY29yZS4qXHJcbiRnZGJfcHJv bXB0ICQiIHsNCisJIyBnY29yZSBjb21tYW5kIG5vdCBzdXBwb3J0ZWQgLS0g bm90aGluZyB0byB0ZXN0IGhlcmUuDQorCXVuc3VwcG9ydGVkICJnZGIgZG9l cyBub3Qgc3VwcG9ydCBnY29yZSBvbiB0aGlzIHRhcmdldCINCisJcmV0dXJu IC0xOw0KKyAgICB9DQorICAgIC1yZSAiU2F2ZSBhIGNvcmUgZmlsZSAuKlxy XG4kZ2RiX3Byb21wdCAkIiB7DQorCXBhc3MgJHRlc3QNCisgICAgfQ0KK30N CisNCitpZiB7ICFbcnVudG8gbGliXSB9IHRoZW4gew0KKyAgICByZXR1cm4g LTENCit9DQorDQorc2V0IGVzY2FwZWRmaWxlbmFtZSBbc3RyaW5nX3RvX3Jl Z2V4cCAke2djb3JlZmlsZX1dDQorDQorc2V0IHRlc3QgInNhdmUgYSBjb3Jl ZmlsZSINCitnZGJfdGVzdF9tdWx0aXBsZSAiZ2NvcmUgJHtnY29yZWZpbGV9 IiAkdGVzdCB7DQorICAgIC1yZSAiU2F2ZWQgY29yZWZpbGUgJHtlc2NhcGVk ZmlsZW5hbWV9XHJcbiRnZGJfcHJvbXB0ICQiIHsNCisJcGFzcyAkdGVzdA0K KyAgICB9DQorICAgIC1yZSAiQ2FuJ3QgY3JlYXRlIGEgY29yZWZpbGVcclxu JGdkYl9wcm9tcHQgJCIgew0KKwl1bnN1cHBvcnRlZCAkdGVzdA0KKwlyZXR1 cm4gLTENCisgICAgfQ0KK30NCisNCisjIE5vdyByZXN0YXJ0IGdkYiBhbmQg bG9hZCB0aGUgY29yZWZpbGUuDQorDQorY2xlYW5fcmVzdGFydCAkZXhlY3V0 YWJsZQ0KK2dkYl9sb2FkX3NobGlicyAkbGliZmlsZQ0KKw0KK2dkYl90ZXN0 ICJjb3JlICR7Z2NvcmVmaWxlfSIgIkNvcmUgd2FzIGdlbmVyYXRlZCBieSAu KiIgInJlLWxvYWQgZ2VuZXJhdGVkIGNvcmVmaWxlIg0KKw0KK2dkYl90ZXN0 ICJmcmFtZSIgIiMwIFxbXlxyXG5cXSogbGliIC4qIiAibGlicmFyeSBnb3Qg bG9hZGVkIg0K ---1463802624-2128796671-1342572608=:5348--