From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from sog-mx-2.v43.ch3.sourceforge.com ([172.29.43.192] helo=mx.sourceforge.net) by sfs-ml-1.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1Y8Un7-0000i9-Mx for ltp-list@lists.sourceforge.net; Tue, 06 Jan 2015 14:07:25 +0000 Received: from mx4-phx2.redhat.com ([209.132.183.25]) by sog-mx-2.v43.ch3.sourceforge.com with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) id 1Y8Un4-0006mH-Vd for ltp-list@lists.sourceforge.net; Tue, 06 Jan 2015 14:07:25 +0000 Date: Tue, 6 Jan 2015 09:07:16 -0500 (EST) From: Li Wang Message-ID: <169945440.3971026.1420553236395.JavaMail.zimbra@redhat.com> In-Reply-To: <27844855.3137974.1420540536445.JavaMail.zimbra@redhat.com> References: <1419664386-14888-1-git-send-email-liwang@redhat.com> <511980342.1455678.1419931434983.JavaMail.zimbra@redhat.com> <1667897429.3183348.1420341038221.JavaMail.zimbra@redhat.com> <124148100.2234995.1420452985543.JavaMail.zimbra@redhat.com> <1759699028.3904548.1420537912980.JavaMail.zimbra@redhat.com> <27844855.3137974.1420540536445.JavaMail.zimbra@redhat.com> MIME-Version: 1.0 Subject: Re: [LTP] [PATCH] mem/hugeshmat: new case for hugepage leak inspection List-Id: Linux Test Project General Discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ltp-list-bounces@lists.sourceforge.net To: Jan Stancek Cc: ltp-list@lists.sourceforge.net Cj4gLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLQo+ID4gRnJvbTogIkxpIFdhbmciIDxsaXdh bmdAcmVkaGF0LmNvbT4KPiA+IFRvOiAiSmFuIFN0YW5jZWsiIDxqc3RhbmNla0ByZWRoYXQuY29t Pgo+ID4gQ2M6IGx0cC1saXN0QGxpc3RzLnNvdXJjZWZvcmdlLm5ldAo+ID4gU2VudDogVHVlc2Rh eSwgNiBKYW51YXJ5LCAyMDE1IDEwOjUxOjUyIEFNCj4gPiBTdWJqZWN0OiBSZTogW0xUUF0gW1BB VENIXSBtZW0vaHVnZXNobWF0OiBuZXcgY2FzZSBmb3IgaHVnZXBhZ2UgbGVhawo+ID4gaW5zcGVj dGlvbgo+ID4gCj4gPiAKPiA+ID4gLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLQo+ID4gPiA+ IEZyb206ICJMaSBXYW5nIiA8bGl3YW5nQHJlZGhhdC5jb20+Cj4gPiA+ID4gVG86ICJKYW4gU3Rh bmNlayIgPGpzdGFuY2VrQHJlZGhhdC5jb20+Cj4gPiA+ID4gQ2M6IGx0cC1saXN0QGxpc3RzLnNv dXJjZWZvcmdlLm5ldAo+ID4gPiA+IFNlbnQ6IFN1bmRheSwgNCBKYW51YXJ5LCAyMDE1IDQ6MTA6 MzggQU0KPiA+ID4gPiBTdWJqZWN0OiBSZTogW0xUUF0gW1BBVENIXSBtZW0vaHVnZXNobWF0OiBu ZXcgY2FzZSBmb3IgaHVnZXBhZ2UgbGVhawo+ID4gPiA+IGluc3BlY3Rpb24KPiA+ID4gPiAKPiA+ ID4gPiBUaGUgcmVncmVzc2lvbiBoYXMgYSBsb25nIGhpc3RvcnksIFBhdGNoIGluIHVwc3RyZWFt IDIuNi4yMC1yYzEKPiA+ID4gPiBHSVQ6IDM5ZGRlNjVjOTk0MGM5N2ZjZDE3OGEzZDJiMWM1N2Vk OGI3YjY4YWEuCj4gPiA+ID4gaHR0cHM6Ly9sa21sLm9yZy9sa21sLzIwMTIvNC8xNi8xMjkKPiA+ ID4gCj4gPiA+IEFuZCBmaXggaXMgcHJlc3VtYWJseSB0aGlzIGNvbW1pdDoKPiA+ID4gCj4gPiA+ IG9tbWl0IGM1Yzk5NDI5ZmE1N2RjZjZlMDUyMDNlYmUzNjc2ZGIxZWM2NDY3OTMKPiA+ID4gQXV0 aG9yOiBMYXJyeSBXb29kbWFuIDxsd29vZG1hbkByZWRoYXQuY29tPgo+ID4gPiBEYXRlOiAgIFRo dSBKYW4gMjQgMDU6NDk6MjUgMjAwOCAtMDgwMAo+ID4gPiAgICAgZml4IGh1Z2VwYWdlcyBsZWFr IGR1ZSB0byBwYWdldGFibGUgcGFnZSBzaGFyaW5nCj4gPiA+IAo+ID4gPiBJdCdkIGJlIG5pY2Ug dG8gaW5jbHVkZSB0aGlzIGluZm9ybWF0aW9uIHNvbWV3aGVyZSBpbiB0ZXN0Y2FzZSBvciBjb21t aXQKPiA+ID4gbWVzc2FnZS4KPiA+ID4gTW9yZSBjb21tZW50cyBiZWxvdzoKPiA+IC4uLgo+ID4g PiA+ID4gPiAraW50IHNoYXJlZF9odWdlcGFnZSh2b2lkKQo+ID4gPiA+ID4gPiArewo+ID4gPiA+ ID4gPiArCXBpZF90IHBpZDsKPiA+ID4gPiA+ID4gKwlpbnQgc3RhdHVzLCBzaG1pZDsKPiA+ID4g PiA+ID4gKwlzaXplX3Qgc2l6ZSA9IChzaXplX3QpU0laRTsKPiA+ID4gPiA+ID4gKwl2b2lkICpi dWY7Cj4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4gKwlzaG1pZCA9IHNobWdldChJUENfUFJJVkFU RSwgc2l6ZSwgU0hNX0hVR0VUTEIgfCBJUENfQ1JFQVQgfAo+ID4gPiA+ID4gPiAwNzc3KTsKPiA+ ID4gPiA+ID4gKwlpZiAoc2htaWQgPCAwKQo+ID4gPiA+ID4gPiArCQl0c3RfYnJrbShUQlJPSyB8 IFRFUlJOTywgY2xlYW51cCwgInNobWdldCIpOwo+ID4gPiA+ID4gPiArCj4gPiA+ID4gPiA+ICsJ YnVmID0gc2htYXQoc2htaWQsICh2b2lkICopQk9VTkRBUlksIFNITV9STkQgfCAwNzc3KTsKPiA+ ID4gCj4gPiA+IERvZXMgaXQgbWFrZSBhIGRpZmZlcmVuY2Ugd2hlcmUgeW91IGF0dGFjaCBzaGFy ZWQgc2VnbWVudD8gSSdtIHNsaWdodGx5Cj4gPiA+IHdvcnJpZWQsCj4gPiA+IHRoYXQgYWJzb2x1 dGUgYWRkcmVzcyB5b3UgcGlja2VkIG1heSBhbHJlYWR5IGJlIGluIHVzZSBvbiBzb21lCj4gPiA+ IGRpc3Ryb3MvYXJjaGVzLgo+ID4gCj4gPiBIaSBKYW4sCj4gPiAKPiA+IFRoYW5rIHlvdSBmb3Ig cmV2aWV3aW5nIG15IHN0dXBpZCBwYXRjaC4gOikKPiA+IAo+ID4gQWN0dWFsbHkgSSBhbHNvIGRv bid0IGtub3cgd2h5IHVzaW5nIGFic29sdXRlIGFkZHJlc3MgaGVyZSwgSSBkb3VidCB0aGlzCj4g PiBtYW5uZXIgYXJlIHNpbWlsYXIgd2l0aCB0aGUgQlogb2NjdXJyZWQgZW52aXJvbm1lbnQuIFRo ZSBzbGVlcCgzKSBiZWxvdyBhcwo+ID4gd2VsbC4KPiA+IAo+ID4gU2luY2UgdGhlIG9yaWdpbmFs IGNhc2UgaXMgdG9vIG9sZCB0byBmb3VuZCBvdXQgd2hvIGlzIHRoZSBhdXRob3IuIEkgaG9wZQo+ ID4gc29tZW9uZQo+ID4gbm93IGNvdWxkIHByb3ZpZGUgYW55IHVzZWZ1bCBkaXNjdXNzaW9uIGhl cmUsIGlmIG5vdCwgSSBzdGlsbCBmZWVsIHdlIGNhbgo+ID4gdXNlCj4gPiB0aGVzZQo+ID4gY29k ZSB0byBjb3ZlciB0aGUgcmVncmVzc2lvbi4gV2hhdCBkbyB5b3UgdGhpbms/Cj4gCj4gSSdtIGFz c3VtaW5nIHRoYXQgYm90aCBhYnNvbHV0ZSBhZGRyZXNzIGFuZCBzbGVlcCBpcyBub3QgbmVjZXNz YXJ5Lgo+IEkgdGhpbmsgSSdsbCB0YWtlIHNvbWUgcmVjZW50IGtlcm5lbCwgcmV2ZXJ0IHRoYXQg cGF0Y2ggYW5kIHRyeSB0byByZXByb2R1Y2UKPiB0aGUgZmFpbHVyZS4KCkhpIEphbiwKCkkganVz dCB0cmllZCBrZXJuZWwtMy4xMC4wKyB3aXRob3V0IHRoZSBmaXhlZCBwYXRjaCwgYW5kIEkgaGl0 IGEgQ1BVIHN0dWNrIGlzc3VlCndpdGggYWJzb2x1dGUgYWRkcmVzcyBhbmQgc2xlZXAoMykuCgpU aGVuIEkgdHJpZWQgdGhlIHRlc3RjYXNlIHdpdGggYWJzb2x1dGUgYWRkcmVzcyBidXQgbm90IHNs ZWVwKDMpLCB0aGUgc2FtZSByZXN1bHRzIGFzIGJlbG93LgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQpbIDExMDUuNjUwMTIyXSBCVUc6IHNvZnQgbG9ja3VwIC0gQ1BVIzMg c3R1Y2sgZm9yIDIycyEgW2h1Z2VzaG1hdDA0OjIzNzRdClsgMTEwNS42NTY2NDldIE1vZHVsZXMg bGlua2VkIGluOiBpbnRlbF9wb3dlcmNsYW1wIGNvcmV0ZW1wIGt2bV9pbnRlbCBrdm0gY3JjdDEw ZGlmX3BjbG11bCBjcmMzMl9wY2xtdWwgY3JjMzJjX2ludGVsIGdoYXNoX2NsbXVsbmlfaW50ZWwg YWVzbmlfaW50ZWwgbHJ3IGdmMTI4bXVsIGdsdWVfaGVscGVyIGFibGtfaGVscGVyIHBjc3BrciBj cnlwdGQgc2VyaW9fcmF3IGlUQ09fd2R0IGlUQ09fdmVuZG9yX3N1cHBvcnQgcHBkZXYgbHBjX2lj aCBtZmRfY29yZSBpMmNfaTgwMSBpcG1pX3NpIHBhcnBvcnRfcGMgcGFycG9ydCBpcG1pX21zZ2hh bmRsZXIgc2hwY2hwIGFjcGlfY3B1ZnJlcSBpb2F0ZG1hIGk3Y29yZV9lZGFjIGVkYWNfY29yZSBk Y2EgeGZzIGxpYmNyYzMyYyBzZF9tb2Qgc3JfbW9kIGNkcm9tIGNyY190MTBkaWYgY3JjdDEwZGlm X2NvbW1vbiBhc3Qgc3lzY29weWFyZWEgc3lzZmlsbHJlY3Qgc3lzaW1nYmx0IGkyY19hbGdvX2Jp dCBkcm1fa21zX2hlbHBlciB0dG0gYXRhX2dlbmVyaWMgcGF0YV9hY3BpIGRybSBlMTAwMGUgYXRh X3BpaXggbGliYXRhIHB0cCBpMmNfY29yZSBwcHNfY29yZSBkbV9taXJyb3IgZG1fcmVnaW9uX2hh c2ggZG1fbG9nIGRtX21vZApbIDExMDUuNzEwNjkwXSBDUFU6IDMgUElEOiAyMzc0IENvbW06IGh1 Z2VzaG1hdDA0IE5vdCB0YWludGVkIDMuMTAuMCsgIzEKWyAxMTA1LjcxNzEyNF0gSGFyZHdhcmUg bmFtZTogTGVub3ZvIDQwMTExOFUvVHlhbiBUYW5rIEdUMjAtQjcwMDJMTlYsIEJJT1MgJ1YyLjcg IDA0LjA3LjIwMTEgJyAwNC8wNy8yMDExClsgMTEwNS43MjY0MjBdIHRhc2s6IGZmZmY4ODAyMmNj OGNmYTAgdGk6IGZmZmY4ODAwMzRlNWMwMDAgdGFzay50aTogZmZmZjg4MDAzNGU1YzAwMApbIDEx MDUuNzMzODk0XSBSSVA6IDAwMTA6WzxmZmZmZmZmZjgxNjBjNmIyPl0gIFs8ZmZmZmZmZmY4MTYw YzZiMj5dIF9yYXdfc3Bpbl9sb2NrKzB4MzIvMHg1MApbIDExMDUuNzQyMDgxXSBSU1A6IDAwMTg6 ZmZmZjg4MDAzNGU1ZmM4OCAgRUZMQUdTOiAwMDAwMDIwMgpbIDExMDUuNzQ3Mzg4XSBSQVg6IDAw MDAwMDAwMDAwMDU4OTcgUkJYOiBmZmZmODgwMDM0MjM5MmMwIFJDWDogMDAwMDAwMDAwMDAwMDQw MgpbIDExMDUuNzU0NTE1XSBSRFg6IDAwMDAwMDAwMDAwMDA0MDQgUlNJOiAwMDAwMDAwMDAwMDAw NDA0IFJESTogZmZmZmVhMDAwMGQyNDE3MApbIDExMDUuNzYxNjQzXSBSQlA6IGZmZmY4ODAwMzRl NWZjODggUjA4OiBmZmZmODgwMDAwMDAwMDAwIFIwOTogZmZmZjg4MDAzNTk3OGZjMApbIDExMDUu NzY4NzcxXSBSMTA6IGZmZmY4ODAyM2ZmZDc4MDAgUjExOiAwMDAwMDAwMDAwMDAwMDAwIFIxMjog ZmZmZjg4MDAzNGI2NjAzMApbIDExMDUuNzc1ODk4XSBSMTM6IGZmZmY4ODAwMzRkZDMwMzAgUjE0 OiAwMDAwMDAwMDJjYzhjZmEwIFIxNTogMDAwMDAwMDAwMDAwMDAwMApbIDExMDUuNzgzMDI2XSBG UzogIDAwMDA3ZjMyOTEyNDE3NDAoMDAwMCkgR1M6ZmZmZjg4MDIzNzI2MDAwMCgwMDAwKSBrbmxH UzowMDAwMDAwMDAwMDAwMDAwClsgMTEwNS43OTExMTBdIENTOiAgMDAxMCBEUzogMDAwMCBFUzog MDAwMCBDUjA6IDAwMDAwMDAwODAwNTAwM2IKWyAxMTA1Ljc5Njg0OF0gQ1IyOiAwMDAwN2YzMjkw ZDI5NGMwIENSMzogMDAwMDAwMDAzNTBhNjAwMCBDUjQ6IDAwMDAwMDAwMDAwMDA3ZTAKWyAxMTA1 LjgwMzk3N10gRFIwOiAwMDAwMDAwMDAwMDAwMDAwIERSMTogMDAwMDAwMDAwMDAwMDAwMCBEUjI6 IDAwMDAwMDAwMDAwMDAwMDAKWyAxMTA1LjgxMTEwNV0gRFIzOiAwMDAwMDAwMDAwMDAwMDAwIERS NjogMDAwMDAwMDBmZmZmMGZmMCBEUjc6IDAwMDAwMDAwMDAwMDA0MDAKWyAxMTA1LjgxODIzM10g U3RhY2s6ClsgMTEwNS44MjAyNDRdICBmZmZmODgwMDM0ZTVmZDE4IGZmZmZmZmZmODExOWNmMTAg MDAwMDAwMDA4MDAwMDAwMCAwMDAwMDAwMDQwMDAwMDAwClsgMTEwNS44Mjc3MDJdICBmZmZmODgw MDM0ZGQzMDMwIDAwMDAwMDAwMzRkMjViYzggZmZmZjg4MDAzNDIzODZiNCBmZmZmODgwMDM0MjM5 MzM0ClsgMTEwNS44MzUxNjBdICBmZmZmODgwMGJhYzZlYWY4IGZmZmY4ODAwMzQyMzkyYzAgZmZm Zjg4MDAzNDkwNTAwMCBmZmZmODgwMDM0MjM4NjQwClsgMTEwNS44NDI2MTZdIENhbGwgVHJhY2U6 ClsgMTEwNS44NDUwNjVdICBbPGZmZmZmZmZmODExOWNmMTA+XSBjb3B5X2h1Z2V0bGJfcGFnZV9y YW5nZSsweGMwLzB4MzAwClsgMTEwNS44NTE0MjFdICBbPGZmZmZmZmZmODExODFkMzk+XSBjb3B5 X3BhZ2VfcmFuZ2UrMHgzZDkvMHg0ODAKWyAxMTA1Ljg1NzE2MV0gIFs8ZmZmZmZmZmY4MTE4NmRh OD5dID8gX192bWFfbGlua19yYisweGI4LzB4ZTAKWyAxMTA1Ljg2MjcyOF0gIFs8ZmZmZmZmZmY4 MTA2YmE3Nz5dIGR1cF9tbSsweDM1Ny8weDY2MApbIDExMDUuODY3Njg5XSAgWzxmZmZmZmZmZjgx MDZjN2Y5Pl0gY29weV9wcm9jZXNzLnBhcnQuMjUrMHhhNDkvMHgxNGQwClsgMTEwNS44NzM5NDhd ICBbPGZmZmZmZmZmODEwNmQ0M2M+XSBkb19mb3JrKzB4YmMvMHgzNTAKWyAxMTA1Ljg3ODkxMF0g IFs8ZmZmZmZmZmY4MTA2ZDc1Nj5dIFN5U19jbG9uZSsweDE2LzB4MjAKWyAxMTA1Ljg4Mzk2NF0g IFs8ZmZmZmZmZmY4MTYxNTY3OT5dIHN0dWJfY2xvbmUrMHg2OS8weDkwClsgMTEwNS44ODkwOThd ICBbPGZmZmZmZmZmODE2MTUzMjk+XSA/IHN5c3RlbV9jYWxsX2Zhc3RwYXRoKzB4MTYvMHgxYgoK CgpBdCBsYXN0IEkgdHJpZWQgdGhlIHRlc3RjYXNlIHdpdGhvdXQgYWJzb2x1dGUgYWRkcmVzcyBh bmQgc2xlZXAoMyksIHRoZSB0ZXN0IGF3YWx5cyBQQVNTLgoKCkZyb20gYWJvdmUgcmVzdWx0LCBp dCBjb3VsZG4ndCB0ZWxsIHRoZSB3aG9sZSBzdG9yee+8jCBwZXJoYXBzIHdlIHNob3VsZCBiZXR0 ZXIgdGVzdGluZyBvbiB0aGUga2VybmVsIGxlc3MgdGhhbiAyLjYuMjQgdmVyc2lvbi4KClRoYW5r cywKTGkgV2FuZwoKPiAKPiBSZWdhcmRzLAo+IEphbgo+IAo+ID4gCj4gPiAKPiA+IEEgbmV3IHBh dGNoOgo+ID4gCj4gPiBTdWJqZWN0OiBbUEFUQ0hdIG1lbS9odWdlc2htYXQ6IG5ldyBjYXNlIGZv ciBodWdlcGFnZSBsZWFrIGluc3BlY3Rpb24KPiA+IAo+ID4gRGVzY3JpcHRpb24gb2YgUHJvYmxl bToKPiA+IAlXaGVuIG92ZXIgMUdCIHNoYXJlZCBtZW1vcnkgd2FzIGFsb2NhdGVkIGluIGh1Z2Vw YWdlLCB0aGUgaHVnZXBhZ2UKPiA+IAlpcyBub3QgcmVsZWFzZWQgdGhvdWdoIHByb2Nlc3MgZmlu aXNoZWQuCj4gPiAKPiA+IFRoZSBmaXggaXMgdGhpcyBjb21taXQ6Cj4gPiAJY29tbWl0IGM1Yzk5 NDI5ZmE1N2RjZjZlMDUyMDNlYmUzNjc2ZGIxZWM2NDY3OTMKPiA+IAlBdXRob3I6IExhcnJ5IFdv b2RtYW4gPGx3b29kbWFuQHJlZGhhdC5jb20+Cj4gPiAJRGF0ZTogICBUaHUgSmFuIDI0IDA1OjQ5 OjI1IDIwMDggLTA4MDAKPiA+ICAgICAJZml4IGh1Z2VwYWdlcyBsZWFrIGR1ZSB0byBwYWdldGFi bGUgcGFnZSBzaGFyaW5nCj4gPiAKPiA+IFNpZ25lZC1vZmYtYnk6IExpIFdhbmcgPGxpd2FuZ0By ZWRoYXQuY29tPgo+ID4gU2lnbmVkLW9mZi1ieTogSmFuIFN0YW5jZWsgPGpzdGFuY2VrQHJlZGhh dC5jb20+Cj4gPiAtLS0KPiA+ICBydW50ZXN0L2h1Z2V0bGIgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMSArCj4gPiAgdGVzdGNhc2VzL2tlcm5lbC9tZW0vLmdpdGlnbm9y ZSAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwo+ID4gIC4uLi9rZXJuZWwvbWVtL2h1Z2V0bGIv aHVnZXNobWF0L2h1Z2VzaG1hdDA0LmMgICAgIHwgMTY2Cj4gPiAgKysrKysrKysrKysrKysrKysr KysrCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCAxNjggaW5zZXJ0aW9ucygrKQo+ID4gIGNyZWF0ZSBt b2RlIDEwMDY0NCB0ZXN0Y2FzZXMva2VybmVsL21lbS9odWdldGxiL2h1Z2VzaG1hdC9odWdlc2ht YXQwNC5jCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9ydW50ZXN0L2h1Z2V0bGIgYi9ydW50ZXN0L2h1 Z2V0bGIKPiA+IGluZGV4IDNlYWYxNGMuLjgwNTE0MWQgMTAwNjQ0Cj4gPiAtLS0gYS9ydW50ZXN0 L2h1Z2V0bGIKPiA+ICsrKyBiL3J1bnRlc3QvaHVnZXRsYgo+ID4gQEAgLTEwLDYgKzEwLDcgQEAg aHVnZW1tYXAwNV8zIGh1Z2VtbWFwMDUgLXMgLW0KPiA+ICBodWdlc2htYXQwMSBodWdlc2htYXQw MSAtaSA1Cj4gPiAgaHVnZXNobWF0MDIgaHVnZXNobWF0MDIgLWkgNQo+ID4gIGh1Z2VzaG1hdDAz IGh1Z2VzaG1hdDAzIC1pIDUKPiA+ICtodWdlc2htYXQwNCBodWdlc2hhbXQwNCAtaSA1Cj4gPiAg Cj4gPiAgaHVnZXNobWN0bDAxIGh1Z2VzaG1jdGwwMSAtaSA1Cj4gPiAgaHVnZXNobWN0bDAyIGh1 Z2VzaG1jdGwwMiAtaSA1Cj4gPiBkaWZmIC0tZ2l0IGEvdGVzdGNhc2VzL2tlcm5lbC9tZW0vLmdp dGlnbm9yZQo+ID4gYi90ZXN0Y2FzZXMva2VybmVsL21lbS8uZ2l0aWdub3JlCj4gPiBpbmRleCBm OTY5NjRjLi5jNTMxNTYzIDEwMDY0NAo+ID4gLS0tIGEvdGVzdGNhc2VzL2tlcm5lbC9tZW0vLmdp dGlnbm9yZQo+ID4gKysrIGIvdGVzdGNhc2VzL2tlcm5lbC9tZW0vLmdpdGlnbm9yZQo+ID4gQEAg LTYsNiArNiw3IEBACj4gPiAgL2h1Z2V0bGIvaHVnZXNobWF0L2h1Z2VzaG1hdDAxCj4gPiAgL2h1 Z2V0bGIvaHVnZXNobWF0L2h1Z2VzaG1hdDAyCj4gPiAgL2h1Z2V0bGIvaHVnZXNobWF0L2h1Z2Vz aG1hdDAzCj4gPiArL2h1Z2V0bGIvaHVnZXNobWF0L2h1Z2VzaG1hdDA0Cj4gPiAgL2h1Z2V0bGIv aHVnZXNobWN0bC9odWdlc2htY3RsMDEKPiA+ICAvaHVnZXRsYi9odWdlc2htY3RsL2h1Z2VzaG1j dGwwMgo+ID4gIC9odWdldGxiL2h1Z2VzaG1jdGwvaHVnZXNobWN0bDAzCj4gPiBkaWZmIC0tZ2l0 IGEvdGVzdGNhc2VzL2tlcm5lbC9tZW0vaHVnZXRsYi9odWdlc2htYXQvaHVnZXNobWF0MDQuYwo+ ID4gYi90ZXN0Y2FzZXMva2VybmVsL21lbS9odWdldGxiL2h1Z2VzaG1hdC9odWdlc2htYXQwNC5j Cj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5kZXggMDAwMDAwMC4uNDNlOWYzZgo+ID4g LS0tIC9kZXYvbnVsbAo+ID4gKysrIGIvdGVzdGNhc2VzL2tlcm5lbC9tZW0vaHVnZXRsYi9odWdl c2htYXQvaHVnZXNobWF0MDQuYwo+ID4gQEAgLTAsMCArMSwxNjYgQEAKPiA+ICsvKgo+ID4gKyAq ICAgQ29weXJpZ2h0IChjKSBMaW51eCBUZXN0IFByb2plY3QsIDIwMTQKPiA+ICsgKgo+ID4gKyAq ICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7ICB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp dCBhbmQvb3IgbW9kaWZ5Cj4gPiArICogICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQo+ID4gKyAqICAgdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IK PiA+ICsgKiAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCj4gPiArICoKPiA+ ICsgKiAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAo+ID4gKyAqICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyAgd2l0aG91 dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4gPiArICogICBNRVJDSEFOVEFCSUxJVFkg b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUKPiA+ICsgKiAgIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgo+ID4gKyAqCj4gPiAr ICogICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZQo+ID4gKyAqICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07ICBpZiBub3Qs IHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCj4gPiArICogICBGb3VuZGF0aW9uLCBJbmMuLCA1 MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BCj4gPiArICogICAwMjEx MC0xMzAxIFVTQQo+ID4gKyAqLwo+ID4gKwo+ID4gKy8qCj4gPiArICogTkFNRQo+ID4gKyAqIAlo dWdlc2htYXQwNC5jCj4gPiArICoKPiA+ICsgKiBERVNDUklQVElPTgo+ID4gKyAqCWh1Z2VzaG1h dDA0IC0gdGVzdCBmb3IgaHVnZXBhZ2UgbGVhayBpbnNwZWN0aW9uLgo+ID4gKyAqCj4gPiArICog ICAgICBEZXNjcmlwdGlvbiBvZiBQcm9ibGVtOgo+ID4gKyAqICAgICAgICAgV2hlbiBvdmVyIDFH QiBzaGVyZWQgbWVtb3J5IHdhcyBhbG9jYXRlZCBpbiBodWdlcGFnZSwgdGhlCj4gPiBodWdlcGFn ZQo+ID4gKyAqICAgICAgICAgaXMgbm90IHJlbGVhc2VkIHRob3VnaCBwcm9jZXNzIGZpbmlzaGVk Lgo+ID4gKyAqCj4gPiArICogICAgICAgICBZb3UgbmVlZCBtb3JlIHRoYW4gMkdCIG1lbW9yeSBp biB0ZXN0IGpvYgo+ID4gKyAqCj4gPiArICoJVGVzdCByZXN1bHRzOgo+ID4gKyAqCSAgIFN1Y2Nl c3NlZDogTm8gcmVncmVzc2lvbiBmb3VuZC4KPiA+ICsgKgkgICBGYWlsZWQ6ICAgIFJlZ3Jlc3Np b24gZGV0ZWN0ZWQuCj4gPiArICoKPiA+ICsgKiBISVNUT1JZCj4gPiArICogCTA1LzIwMTQgLSBX cml0dGVuIGJ5IEZ1amlzdHUgQ29ycC4KPiA+ICsgKgkxMi8yMDE0IC0gUG9ydCB0byBMVFAgYnkg TGkgV2FuZy4KPiA+ICsgKgo+ID4gKyAqIFJFU1RSSUNUSU9OUwo+ID4gKyAqIAl0ZXN0IG11c3Qg YmUgcnVuIGF0IHJvb3QKPiA+ICsgKi8KPiA+ICsKPiA+ICsjaW5jbHVkZSA8c3RkaW8uaD4KPiA+ ICsjaW5jbHVkZSA8c3RkbGliLmg+Cj4gPiArI2luY2x1ZGUgPHVuaXN0ZC5oPgo+ID4gKyNpbmNs dWRlIDxmY250bC5oPgo+ID4gKyNpbmNsdWRlIDxzdHJpbmcuaD4KPiA+ICsjaW5jbHVkZSA8c3lz L21tYW4uaD4KPiA+ICsjaW5jbHVkZSA8c3lzL3R5cGVzLmg+Cj4gPiArI2luY2x1ZGUgPHN5cy9z aG0uaD4KPiA+ICsjaW5jbHVkZSA8c3lzL3dhaXQuaD4KPiA+ICsKPiA+ICsjaW5jbHVkZSAidGVz dC5oIgo+ID4gKyNpbmNsdWRlICJtZW0uaCIKPiA+ICsKPiA+ICsjZGVmaW5lIFNJWkUJKDEwMjQg KiAxMDI0ICogMTAyNCkKPiA+ICsjZGVmaW5lIEJPVU5EQVJZICgxMDI0ICogMTAyNCAqIDEwMjQp Cj4gPiArCj4gPiArY2hhciAqVENJRCA9ICJodWdlc2htYXQwNCI7Cj4gPiAraW50IFRTVF9UT1RB TCA9IDM7Cj4gPiArCj4gPiArc3RhdGljIGxvbmcgaHVnZV90b3RhbDsKPiA+ICtzdGF0aWMgbG9u ZyBodWdlX2ZyZWU7Cj4gPiArc3RhdGljIGxvbmcgaHVnZV9mcmVlMjsKPiA+ICtzdGF0aWMgbG9u ZyBodWdlcGFnZXM7Cj4gPiArc3RhdGljIGxvbmcgb3JpZ19odWdlcGFnZXM7Cj4gPiArCj4gPiAr c3RhdGljIHZvaWQgc2hhcmVkX2h1Z2VwYWdlKHZvaWQpOwo+ID4gKwo+ID4gK2ludCBtYWluKGlu dCBhYywgY2hhciAqKmF2KQo+ID4gK3sKPiA+ICsJaW50IGxjLCBpOwo+ID4gKwljb25zdCBjaGFy ICptc2c7Cj4gPiArCj4gPiArCW1zZyA9IHBhcnNlX29wdHMoYWMsIGF2LCBOVUxMLCBOVUxMKTsK PiA+ICsJaWYgKG1zZyAhPSBOVUxMKQo+ID4gKwkJdHN0X2Jya20oVEJST0ssIE5VTEwsICJPUFRJ T04gUEFSU0lORyBFUlJPUiAtICVzIiwgbXNnKTsKPiA+ICsKPiA+ICsJc2V0dXAoKTsKPiA+ICsK PiA+ICsJZm9yIChsYyA9IDA7IFRFU1RfTE9PUElORyhsYyk7IGxjKyspIHsKPiA+ICsJCXRzdF9j b3VudCA9IDA7Cj4gPiArCj4gPiArCQlmb3IgKGkgPSAwOyBpIDwgVFNUX1RPVEFMOyBpKyspIHsK PiA+ICsKPiA+ICsJCQlzaGFyZWRfaHVnZXBhZ2UoKTsKPiA+ICsJCQlodWdlX2ZyZWUyID0gcmVh ZF9tZW1pbmZvKCJIdWdlUGFnZXNfRnJlZToiKTsKPiA+ICsKPiA+ICsJCQlpZiAoaHVnZV9mcmVl MiAhPSBodWdlX2ZyZWUpCj4gPiArCQkJCXRzdF9icmttKFRGQUlMLCBjbGVhbnVwLAo+ID4gKwkJ CQkJIlRlc3QgZmFpbGVkLiBIdWdlcGFnZSBsZWFrIGluc3BlY3Rpb24uIik7Cj4gPiArCQkJZWxz ZQo+ID4gKwkJCQl0c3RfcmVzbShUUEFTUywgIk5vIHJlZ3Jlc3Npb24gZm91bmQuIik7Cj4gPiAr CQl9Cj4gPiArCX0KPiA+ICsKPiA+ICsJY2xlYW51cCgpOwo+ID4gKwl0c3RfZXhpdCgpOwo+ID4g K30KPiA+ICsKPiA+ICt2b2lkIHNoYXJlZF9odWdlcGFnZSh2b2lkKQo+ID4gK3sKPiA+ICsJcGlk X3QgcGlkOwo+ID4gKwlpbnQgc3RhdHVzLCBzaG1pZDsKPiA+ICsJc2l6ZV90IHNpemUgPSAoc2l6 ZV90KVNJWkU7Cj4gPiArCXZvaWQgKmJ1ZjsKPiA+ICsKPiA+ICsJc2htaWQgPSBzaG1nZXQoSVBD X1BSSVZBVEUsIHNpemUsIFNITV9IVUdFVExCIHwgSVBDX0NSRUFUIHwgMDc3Nyk7Cj4gPiArCWlm IChzaG1pZCA8IDApCj4gPiArCQl0c3RfYnJrbShUQlJPSyB8IFRFUlJOTywgY2xlYW51cCwgInNo bWdldCIpOwo+ID4gKwo+ID4gKwlidWYgPSBzaG1hdChzaG1pZCwgKHZvaWQgKilCT1VOREFSWSwg U0hNX1JORCB8IDA3NzcpOwo+ID4gKwlpZiAoYnVmID09ICh2b2lkICopLTEpIHsKPiA+ICsJCXNo bWN0bChzaG1pZCwgSVBDX1JNSUQsIE5VTEwpOwo+ID4gKwkJdHN0X2Jya20oVEJST0sgfCBURVJS Tk8sIGNsZWFudXAsICJzaG1hdCIpOwo+ID4gKwl9Cj4gPiArCj4gPiArCW1lbXNldChidWYsIDIs IHNpemUpOwo+ID4gKwlzbGVlcCgzKTsKPiA+ICsJcGlkID0gZm9yaygpOwo+ID4gKwo+ID4gKwlp ZiAocGlkID09IDApCj4gPiArCQlleGl0KDEpOwo+ID4gKwllbHNlIGlmIChwaWQgPCAwKQo+ID4g KwkJdHN0X2Jya20oVEJST0sgfCBURVJSTk8sIGNsZWFudXAsICJmb3JrIik7Cj4gPiArCj4gPiAr CXdhaXQoJnN0YXR1cyk7Cj4gPiArCXNobWR0KGJ1Zik7Cj4gPiArCXNobWN0bChzaG1pZCwgSVBD X1JNSUQsIE5VTEwpOwo+ID4gK30KPiA+ICsKPiA+ICt2b2lkIHNldHVwKHZvaWQpCj4gPiArewo+ ID4gKwlsb25nIG1lbV90b3RhbCwgaHBhZ2Vfc2l6ZTsKPiA+ICsKPiA+ICsJdHN0X3JlcXVpcmVf cm9vdChOVUxMKTsKPiA+ICsKPiA+ICsJbWVtX3RvdGFsID0gcmVhZF9tZW1pbmZvKCJNZW1Ub3Rh bDoiKSAqIDEwMjQ7Cj4gPiArCWlmIChtZW1fdG90YWwgPCAyTCpTSVpFKSB7Cj4gPiArCQl0c3Rf cmVzbShUSU5GTywgIlRvdGFsIG1lbW9yeSBzaG91bGQgZ3JlYXRlciB0aGFuIDJHLiIpOwo+ID4g KwkJdHN0X2V4aXQoKTsKPiA+ICsJfQo+ID4gKwo+ID4gKwlvcmlnX2h1Z2VwYWdlcyA9IGdldF9z eXNfdHVuZSgibnJfaHVnZXBhZ2VzIik7Cj4gPiArCWhwYWdlX3NpemUgPSByZWFkX21lbWluZm8o Ikh1Z2VwYWdlc2l6ZToiKSAqIDEwMjQ7Cj4gPiArCj4gPiArCWh1Z2VwYWdlcyA9IChvcmlnX2h1 Z2VwYWdlcyAqIGhwYWdlX3NpemUgKyBTSVpFKSAvIGhwYWdlX3NpemU7Cj4gPiArCXNldF9zeXNf dHVuZSgibnJfaHVnZXBhZ2VzIiwgaHVnZXBhZ2VzLCAxKTsKPiA+ICsKPiA+ICsJaHVnZV90b3Rh bCA9IHJlYWRfbWVtaW5mbygiSHVnZVBhZ2VzX1RvdGFsOiIpOwo+ID4gKwlodWdlX2ZyZWUgPSBy ZWFkX21lbWluZm8oIkh1Z2VQYWdlc19GcmVlOiIpOwo+ID4gKwo+ID4gKwlpZiAoaHVnZV90b3Rh bCAhPSBodWdlcGFnZXMgfHwgaHVnZV9mcmVlICE9IGh1Z2VwYWdlcykKPiA+ICsJCXRzdF9icmtt KFRDT05GLCBjbGVhbnVwLAo+ID4gKwkJCSJNYXliZSBodWdlIHBhZ2VzIG5vdCBlbm91Z2ggZm9y IHRlc3QuIik7Cj4gPiArCj4gPiArCVRFU1RfUEFVU0U7Cj4gPiArfQo+ID4gKwo+ID4gK3ZvaWQg Y2xlYW51cCh2b2lkKQo+ID4gK3sKPiA+ICsJVEVTVF9DTEVBTlVQOwo+ID4gKwlzZXRfc3lzX3R1 bmUoIm5yX2h1Z2VwYWdlcyIsIG9yaWdfaHVnZXBhZ2VzLCAwKTsKPiA+ICt9Cj4gPiAtLQo+ID4g MS44LjMuMQo+ID4gCj4gCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRGl2ZSBpbnRvIHRoZSBXb3Js ZCBvZiBQYXJhbGxlbCBQcm9ncmFtbWluZyEgVGhlIEdvIFBhcmFsbGVsIFdlYnNpdGUsCnNwb25z b3JlZCBieSBJbnRlbCBhbmQgZGV2ZWxvcGVkIGluIHBhcnRuZXJzaGlwIHdpdGggU2xhc2hkb3Qg TWVkaWEsIGlzIHlvdXIKaHViIGZvciBhbGwgdGhpbmdzIHBhcmFsbGVsIHNvZnR3YXJlIGRldmVs b3BtZW50LCBmcm9tIHdlZWtseSB0aG91Z2h0CmxlYWRlcnNoaXAgYmxvZ3MgdG8gbmV3cywgdmlk ZW9zLCBjYXNlIHN0dWRpZXMsIHR1dG9yaWFscyBhbmQgbW9yZS4gVGFrZSBhCmxvb2sgYW5kIGpv aW4gdGhlIGNvbnZlcnNhdGlvbiBub3cuIGh0dHA6Ly9nb3BhcmFsbGVsLnNvdXJjZWZvcmdlLm5l dApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMdHAtbGlz dCBtYWlsaW5nIGxpc3QKTHRwLWxpc3RAbGlzdHMuc291cmNlZm9yZ2UubmV0Cmh0dHBzOi8vbGlz dHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL2x0cC1saXN0Cg==