From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23695 invoked by alias); 30 Apr 2012 16:55:36 -0000 Received: (qmail 23681 invoked by uid 22791); 30 Apr 2012 16:55:28 -0000 X-SWARE-Spam-Status: No, hits=-5.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,TW_BJ,TW_TM,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-vb0-f41.google.com (HELO mail-vb0-f41.google.com) (209.85.212.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 30 Apr 2012 16:55:08 +0000 Received: by vbbey12 with SMTP id ey12so2710128vbb.0 for ; Mon, 30 Apr 2012 09:55:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-system-of-record:x-gm-message-state; bh=L+ViqNWVQQKjPMREX0L7hIm5t/ruH1i04X1o/XrlNkY=; b=gfAj9F9ni+VJoYJ7VzbKElp199J1/7ZTHTApK2ofkM1S3oFn+gUGjckgLzO3a8pga5 lFgq4wvIKwHANZy1IQYavN5ahKvG0o4hDIK0Jnkv/YNVUuNATbKeyWnSGdNTgqvWXptV yVa/TKVqircJ/Yk6nIvM4czUPvjHf1wDBuX/xyDC9kf/3n4M3yO6UYDBJk1hdVJd+O8x yGO5wlViQZBn5biwtTYR5+tVwU3nQ3302Ju8iJA1hhu6+dP+90Fd3FAzkctPe2Id8+jr rD2SxItEmBl/BDb4IyOLIkuMx5lrnWtw3l3oBHIuPWQGpKSV0wOe6bZmLUNpc12YhVwH hOaA== Received: by 10.220.240.195 with SMTP id lb3mr5254479vcb.63.1335804907604; Mon, 30 Apr 2012 09:55:07 -0700 (PDT) MIME-Version: 1.0 Received: by 10.220.240.195 with SMTP id lb3mr5254459vcb.63.1335804907443; Mon, 30 Apr 2012 09:55:07 -0700 (PDT) Received: by 10.52.165.2 with HTTP; Mon, 30 Apr 2012 09:55:07 -0700 (PDT) In-Reply-To: <20120430013711.GA3186@host2.jankratochvil.net> References: <20120418185511.0AED52461AF@ruffy.mtv.corp.google.com> <878vhi6vq1.fsf@fleche.redhat.com> <20120429090455.GA9848@host2.jankratochvil.net> <20120430013711.GA3186@host2.jankratochvil.net> Date: Mon, 30 Apr 2012 17:09:00 -0000 Message-ID: Subject: Re: Crash regression for gdb.ada/*.exp [Re: [RFA 2/3] Initial Fission support, rewrite DIE reading] From: Doug Evans To: Jan Kratochvil Cc: Tom Tromey , gdb-patches@sourceware.org, ccoutant@google.com, saugustine@google.com Content-Type: multipart/mixed; boundary=14dae9d24d56ff566004bee8506e X-System-Of-Record: true X-Gm-Message-State: ALoCoQkXwZd6ESs/aqkUU5SgKgopWFI6G6+L9eGEOlfxy69AU8GXTTq0d1wTMmp3g+HhvCJ87gfXefjskNH0CJyvruVhnwVaWn62dMOGvA9aPRyZHRAOB/ZN52cXFxAY3DkLxuzgN8hvw4sEf/MwmB1s4PtdbyXdng== 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-04/txt/msg01078.txt.bz2 --14dae9d24d56ff566004bee8506e Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 1541 On Sun, Apr 29, 2012 at 6:37 PM, Jan Kratochvil wrote: > On Mon, 30 Apr 2012 02:06:13 +0200, Doug Evans wrote: >> On Sun, Apr 29, 2012 at 2:04 AM, Jan Kratochvil wrote: >> > =A0Running gdb/testsuite/gdb.ada/array_bounds.exp ... >> > =A0PASS: gdb.ada/array_bounds.exp: compilation bar.adb >> > -PASS: gdb.ada/array_bounds.exp: print itable'first >> > +FAIL: gdb.ada/array_bounds.exp: running to bar.adb:24 in runto (GDB i= nternal error) >> > +ERROR: Couldn't run array_bounds/bar > [...] >> I can't recreate this on my fc16 box, though I see the issue. >> What gcc are you using? > > Standard fc16 GCC. =A0But I have tested now a pre-requisite is: > $ rpm -qf /usr/lib/debug/usr/lib64/libgnat-4.6.so.debug > gcc-debuginfo-4.6.3-2.fc16.x86_64 I'm currently testing this patch. Can you check that it fixes the regression for you? TIA [There's no longer a need to distinguish reading CUs and TUs like I did before so I just collapsed them all into one function.] 2012-04-30 Doug Evans * dwarf2read.c (init_cutu_and_read_dies): Renamed from init_and_read_dies_worker. All callers updated. (init_cu_and_read_dies, init_tu_and_read_dies): Delete. All calls replaced with init_cutu_and_read_dies. (load_partial_comp_unit): Pass 1 for use_existing_cu. (find_partial_die): Remove FIXME. Don't free current CU. testsuite/ * gdb.dwarf2/pr13961.S: New file. * gdb.dwarf2/pr13961.exp: New file. --14dae9d24d56ff566004bee8506e Content-Type: text/plain; charset=US-ASCII; name="gdb-120430-fission-supplement-4-2.patch.txt" Content-Disposition: attachment; filename="gdb-120430-fission-supplement-4-2.patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h1nro4ej0 Content-length: 28581 MjAxMi0wNC0zMCAgRG91ZyBFdmFucyAgPGRqZUBnb29nbGUuY29tPgoKCSog ZHdhcmYycmVhZC5jIChpbml0X2N1dHVfYW5kX3JlYWRfZGllcyk6IFJlbmFt ZWQgZnJvbQoJaW5pdF9hbmRfcmVhZF9kaWVzX3dvcmtlci4gIEFsbCBjYWxs ZXJzIHVwZGF0ZWQuCgkoaW5pdF9jdV9hbmRfcmVhZF9kaWVzLCBpbml0X3R1 X2FuZF9yZWFkX2RpZXMpOiBEZWxldGUuICBBbGwgY2FsbHMKCXJlcGxhY2Vk IHdpdGggaW5pdF9jdXR1X2FuZF9yZWFkX2RpZXMuCgkobG9hZF9wYXJ0aWFs X2NvbXBfdW5pdCk6IFBhc3MgMSBmb3IgdXNlX2V4aXN0aW5nX2N1LgoJKGZp bmRfcGFydGlhbF9kaWUpOiBSZW1vdmUgRklYTUUuICBEb24ndCBmcmVlIGN1 cnJlbnQgQ1UuCgoJdGVzdHN1aXRlLwoJKiBnZGIuZHdhcmYyL3ByMTM5NjEu UzogTmV3IGZpbGUuCgkqIGdkYi5kd2FyZjIvcHIxMzk2MS5leHA6IE5ldyBm aWxlLgoKSW5kZXg6IGR3YXJmMnJlYWQuYwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL2R3YXJmMnJlYWQuYyx2 CnJldHJpZXZpbmcgcmV2aXNpb24gMS42NDUKZGlmZiAtdSAtcCAtcjEuNjQ1 IGR3YXJmMnJlYWQuYwotLS0gZHdhcmYycmVhZC5jCTMwIEFwciAyMDEyIDE1 OjUwOjQwIC0wMDAwCTEuNjQ1CisrKyBkd2FyZjJyZWFkLmMJMzAgQXByIDIw MTIgMTU6NTc6MTUgLTAwMDAKQEAgLTU5Nyw3ICs1OTcsNyBAQCBzdHJ1Y3Qg ZGllX3JlYWRlcl9zcGVjcwogICBnZGJfYnl0ZSAqYnVmZmVyOwogfTsKIAot LyogVHlwZSBvZiBmdW5jdGlvbiBwYXNzZWQgdG8gaW5pdF9jdV9hbmRfcmVh ZF9kaWVzLCBldC5hbC4gICovCisvKiBUeXBlIG9mIGZ1bmN0aW9uIHBhc3Nl ZCB0byBpbml0X2N1dHVfYW5kX3JlYWRfZGllcywgZXQuYWwuICAqLwogdHlw ZWRlZiB2b2lkIChkaWVfcmVhZGVyX2Z1bmNfZnR5cGUpIChjb25zdCBzdHJ1 Y3QgZGllX3JlYWRlcl9zcGVjcyAqcmVhZGVyLAogCQkJCSAgICAgIGdkYl9i eXRlICppbmZvX3B0ciwKIAkJCQkgICAgICBzdHJ1Y3QgZGllX2luZm8gKmNv bXBfdW5pdF9kaWUsCkBAIC0xNDAxLDggKzE0MDEsOCBAQCBzdGF0aWMgZ2Ri X2J5dGUgKnJlYWRfYW5kX2NoZWNrX2NvbXBfdW5pCiAgICBzdHJ1Y3QgZHdh cmYyX3NlY3Rpb25faW5mbyAqc2VjdGlvbiwgZ2RiX2J5dGUgKmluZm9fcHRy LAogICAgaW50IGlzX2RlYnVnX3R5cGVzX3NlY3Rpb24pOwogCi1zdGF0aWMg dm9pZCBpbml0X3R1X2FuZF9yZWFkX2RpZXMKLSAgKHN0cnVjdCBkd2FyZjJf cGVyX2N1X2RhdGEgKnRoaXNfY3UsIGludCBrZWVwLAorc3RhdGljIHZvaWQg aW5pdF9jdXR1X2FuZF9yZWFkX2RpZXMKKyAgKHN0cnVjdCBkd2FyZjJfcGVy X2N1X2RhdGEgKnRoaXNfY3UsIGludCB1c2VfZXhpc3RpbmdfY3UsIGludCBr ZWVwLAogICAgZGllX3JlYWRlcl9mdW5jX2Z0eXBlICpkaWVfcmVhZGVyX2Z1 bmMsIHZvaWQgKmRhdGEpOwogCiBzdGF0aWMgdm9pZCBpbml0X2N1dHVfYW5k X3JlYWRfZGllc19zaW1wbGUKQEAgLTI0NzQsNyArMjQ3NCw3IEBAIGR3Ml9n ZXRfZmlsZV9uYW1lcyAoc3RydWN0IG9iamZpbGUgKm9iamYKICAgICAgSG93 ZXZlciwgdGhhdCdzIG5vdCB0aGUgY2FzZSBmb3IgVFVzIHdoZXJlIERXX0FU X3N0bXRfbGlzdCBsaXZlcyBpbiB0aGUKICAgICAgRFdPIGZpbGUuICAqLwog ICBpZiAodGhpc19jdS0+aXNfZGVidWdfdHlwZXMpCi0gICAgaW5pdF90dV9h bmRfcmVhZF9kaWVzICh0aGlzX2N1LCAwLCBkdzJfZ2V0X2ZpbGVfbmFtZXNf cmVhZGVyLCBOVUxMKTsKKyAgICBpbml0X2N1dHVfYW5kX3JlYWRfZGllcyAo dGhpc19jdSwgMCwgMCwgZHcyX2dldF9maWxlX25hbWVzX3JlYWRlciwgTlVM TCk7CiAgIGVsc2UKICAgICBpbml0X2N1dHVfYW5kX3JlYWRfZGllc19zaW1w bGUgKHRoaXNfY3UsIGR3Ml9nZXRfZmlsZV9uYW1lc19yZWFkZXIsIE5VTEwp OwogCkBAIC0zNjI4LDggKzM2MjgsNyBAQCBkd2FyZjJfZmluZF9iYXNlX2Fk ZHJlc3MgKHN0cnVjdCBkaWVfaW5mCiAgICAgfQogfQogCi0vKiBTdWJyb3V0 aW5lIG9mIGluaXRfe2N1LHR1fV9hbmRfcmVhZF9kaWVzLgotICAgRG8gYWxs IHRoZSB3b3JrIG5lY2Vzc2FyeSB0byBpbml0aWFsaXplIFRISVNfQ1UtPmN1 IGFuZCByZWFkIGluIGl0cyBESUUocykuCisvKiBJbml0aWFsaXplIGEgQ1Ug KG9yIFRVKSBhbmQgcmVhZCBpdHMgRElFcy4KICAgIElmIHRoZSBDVSBkZWZl cnMgdG8gYSBEV08gZmlsZSwgcmVhZCB0aGUgRFdPIGZpbGUgYXMgd2VsbC4K IAogICAgSWYgVVNFX0VYSVNUSU5HX0NVIGlzIG5vbi16ZXJvLCBhbmQgVEhJ U19DVS0+Y3UgaXMgbm9uLU5VTEwsIHRoZW4gdXNlIGl0LgpAQCAtMzYzOSwx OCArMzYzOCwxMyBAQCBkd2FyZjJfZmluZF9iYXNlX2FkZHJlc3MgKHN0cnVj dCBkaWVfaW5mCiAgICByZWFkX2luX2NoYWluLiAgT3RoZXJ3aXNlIHRoZSBk d2FyZjJfY3UgZGF0YSBpcyBmcmVlZCBhdCB0aGUgZW5kLgogCiAgICBXQVJO SU5HOiBJZiBUSElTX0NVIGlzIGEgImR1bW15IENVIiAodXNlZCBhcyBmaWxs ZXIgYnkgdGhlIGluY3JlbWVudGFsCi0gICBsaW5rZXIpIHRoZW4gRElFX1JF QURFUl9GVU5DIHdpbGwgbm90IGdldCBjYWxsZWQuCi0KLSAgIEZJWE1FOiBB cyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWwgYmV0d2VlbiBvdXIgY2FsbGVy cyBhbmQgdXMsCi0gICBVU0VfRVhJU1RJTkdfQ1UgYW5kIEtFRVAgYXJlIE9L LiAgQnV0IGJ1YmJsaW5nIHRoZW0gdXAgaW50byB0aGVpciBjYWxsZXJzCi0g ICBpc24ndCBhcyBjbGVhbiBhcyBJJ2QgbGlrZS4gIEhhdmluZyBtb3JlIGNh bGxlcnMgd2l0aCBnb29kIG5hbWVzCi0gICBtYXkgYmUgdGhlIHdheSB0byBn by4gICovCisgICBsaW5rZXIpIHRoZW4gRElFX1JFQURFUl9GVU5DIHdpbGwg bm90IGdldCBjYWxsZWQuICAqLwogCiBzdGF0aWMgdm9pZAotaW5pdF9hbmRf cmVhZF9kaWVzX3dvcmtlciAoc3RydWN0IGR3YXJmMl9wZXJfY3VfZGF0YSAq dGhpc19jdSwKLQkJCSAgIGludCB1c2VfZXhpc3RpbmdfY3UsIGludCBrZWVw LAotCQkJICAgZGllX3JlYWRlcl9mdW5jX2Z0eXBlICpkaWVfcmVhZGVyX2Z1 bmMsCi0JCQkgICB2b2lkICpkYXRhKQoraW5pdF9jdXR1X2FuZF9yZWFkX2Rp ZXMgKHN0cnVjdCBkd2FyZjJfcGVyX2N1X2RhdGEgKnRoaXNfY3UsCisJCQkg aW50IHVzZV9leGlzdGluZ19jdSwgaW50IGtlZXAsCisJCQkgZGllX3JlYWRl cl9mdW5jX2Z0eXBlICpkaWVfcmVhZGVyX2Z1bmMsCisJCQkgdm9pZCAqZGF0 YSkKIHsKICAgc3RydWN0IG9iamZpbGUgKm9iamZpbGUgPSBkd2FyZjJfcGVy X29iamZpbGUtPm9iamZpbGU7CiAgIHN0cnVjdCBkd2FyZjJfc2VjdGlvbl9p bmZvICpzZWN0aW9uID0gdGhpc19jdS0+aW5mb19vcl90eXBlc19zZWN0aW9u OwpAQCAtMzY2Niw4ICszNjYwLDYgQEAgaW5pdF9hbmRfcmVhZF9kaWVzX3dv cmtlciAoc3RydWN0IGR3YXJmMgogCiAgIGlmICh1c2VfZXhpc3RpbmdfY3Up CiAgICAgZ2RiX2Fzc2VydCAoa2VlcCk7Ci0gIGlmICh0aGlzX2N1LT5pc19k ZWJ1Z190eXBlcykKLSAgICBnZGJfYXNzZXJ0ICghIHVzZV9leGlzdGluZ19j dSk7CiAKICAgY2xlYW51cHMgPSBtYWtlX2NsZWFudXAgKG51bGxfY2xlYW51 cCwgTlVMTCk7CiAKQEAgLTM5MTgsNDMgKzM5MTAsNiBAQCBpbml0X2FuZF9y ZWFkX2RpZXNfd29ya2VyIChzdHJ1Y3QgZHdhcmYyCiAgIGRvX2NsZWFudXBz IChjbGVhbnVwcyk7CiB9CiAKLS8qIE1haW4gZW50cnkgcG9pbnQgZm9yIHJl YWRpbmcgYSBDVS4KLSAgIERvIGFsbCB0aGUgd29yayBuZWNlc3NhcnkgdG8g aW5pdGlhbGl6ZSBUSElTX0NVLT5jdSBhbmQgcmVhZCBpbiBpdHMgRElFKHMp LgotICAgSWYgdGhlIENVIGRlZmVycyB0byBhIERXTyBmaWxlLCByZWFkIHRo ZSBEV08gZmlsZSBhcyB3ZWxsLgotCi0gICBJZiBVU0VfRVhJU1RJTkdfQ1Ug aXMgbm9uLXplcm8sIGFuZCBUSElTX0NVLT5jdSBpcyBub24tTlVMTCwgdGhl biB1c2UgaXQuCi0gICBPdGhlcndpc2UsIGEgbmV3IENVIGlzIGFsbG9jYXRl ZCB3aXRoIHhtYWxsb2MuCi0KLSAgIElmIEtFRVAgaXMgbm9uLXplcm8sIHRo ZW4gaWYgd2UgYWxsb2NhdGVkIGEgZHdhcmYyX2N1IHdlIGFkZCBpdCB0bwot ICAgcmVhZF9pbl9jaGFpbi4gIE90aGVyd2lzZSB0aGUgZHdhcmYyX2N1IGRh dGEgaXMgZnJlZWQgYXQgdGhlIGVuZC4gICovCi0KLXN0YXRpYyB2b2lkCi1p bml0X2N1X2FuZF9yZWFkX2RpZXMgKHN0cnVjdCBkd2FyZjJfcGVyX2N1X2Rh dGEgKnRoaXNfY3UsCi0JCSAgICAgICBpbnQgdXNlX2V4aXN0aW5nX2N1LCBp bnQga2VlcCwKLQkJICAgICAgIGRpZV9yZWFkZXJfZnVuY19mdHlwZSAqZGll X3JlYWRlcl9mdW5jLAotCQkgICAgICAgdm9pZCAqZGF0YSkKLXsKLSAgaW5p dF9hbmRfcmVhZF9kaWVzX3dvcmtlciAodGhpc19jdSwgdXNlX2V4aXN0aW5n X2N1LCBrZWVwLAotCQkJICAgICBkaWVfcmVhZGVyX2Z1bmMsIGRhdGEpOwot fQotCi0vKiBNYWluIGVudHJ5IHBvaW50IGZvciByZWFkaW5nIGEgVFUuCi0g ICBEbyBhbGwgdGhlIHdvcmsgbmVjZXNzYXJ5IHRvIGluaXRpYWxpemUgVEhJ U19DVS0+Y3UgYW5kIHJlYWQgaW4gaXRzIERJRShzKS4KLSAgIElmIHRoZSBU VSBkZWZlcnMgdG8gYSBEV08gZmlsZSwgcmVhZCB0aGUgRFdPIGZpbGUgYXMg d2VsbC4KLQotICAgSWYgS0VFUCBpcyBub24temVybywgdGhlbiBpZiB3ZSBh bGxvY2F0ZWQgYSBkd2FyZjJfY3Ugd2UgYWRkIGl0IHRvCi0gICByZWFkX2lu X2NoYWluLiAgT3RoZXJ3aXNlIHRoZSBkd2FyZjJfY3UgZGF0YSBpcyBmcmVl ZCBhdCB0aGUgZW5kLiAgKi8KLQotc3RhdGljIHZvaWQKLWluaXRfdHVfYW5k X3JlYWRfZGllcyAoc3RydWN0IGR3YXJmMl9wZXJfY3VfZGF0YSAqdGhpc19j dSwKLQkJICAgICAgIGludCBrZWVwLAotCQkgICAgICAgZGllX3JlYWRlcl9m dW5jX2Z0eXBlICpkaWVfcmVhZGVyX2Z1bmMsCi0JCSAgICAgICB2b2lkICpk YXRhKQotewotICBnZGJfYXNzZXJ0ICh0aGlzX2N1LT5pc19kZWJ1Z190eXBl cyk7Ci0gIGluaXRfYW5kX3JlYWRfZGllc193b3JrZXIgKHRoaXNfY3UsIDAs IGtlZXAsIGRpZV9yZWFkZXJfZnVuYywgZGF0YSk7Ci19Ci0KIC8qIFJlYWQg Q1UvVFUgVEhJU19DVSBpbiBzZWN0aW9uIFNFQ1RJT04sCiAgICBidXQgZG8g bm90IGZvbGxvdyBEV19BVF9HTlVfZHdvX25hbWUgaWYgcHJlc2VudC4KICAg IERXT19GSUxFLCBpZiBub24tTlVMTCwgaXMgdGhlIERXTyBmaWxlIHRvIHJl YWQgKHRoZSBjYWxsZXIgaXMgYXNzdW1lZCB0bwpAQCAtNDE3Niw4ICs0MTMx LDggQEAgcHJvY2Vzc19wc3ltdGFiX2NvbXBfdW5pdCAoc3RydWN0IGR3YXJm MgogICAgIGZyZWVfb25lX2NhY2hlZF9jb21wX3VuaXQgKHRoaXNfY3UpOwog CiAgIGdkYl9hc3NlcnQgKCEgdGhpc19jdS0+aXNfZGVidWdfdHlwZXMpOwot ICBpbml0X2N1X2FuZF9yZWFkX2RpZXMgKHRoaXNfY3UsIDAsIDAsIHByb2Nl c3NfcHN5bXRhYl9jb21wX3VuaXRfcmVhZGVyLAotCQkJIE5VTEwpOworICBp bml0X2N1dHVfYW5kX3JlYWRfZGllcyAodGhpc19jdSwgMCwgMCwgcHJvY2Vz c19wc3ltdGFiX2NvbXBfdW5pdF9yZWFkZXIsCisJCQkgICBOVUxMKTsKIAog ICAvKiBBZ2Ugb3V0IGFueSBzZWNvbmRhcnkgQ1VzLiAgKi8KICAgYWdlX2Nh Y2hlZF9jb21wX3VuaXRzICgpOwpAQCAtNDE5Miw2ICs0MTQ3LDcgQEAgcHJv Y2Vzc19wc3ltdGFiX3R5cGVfdW5pdCAodm9pZCAqKnNsb3QsIAogICBzdHJ1 Y3Qgc2lnbmF0dXJlZF90eXBlICpzaWdfdHlwZSA9IChzdHJ1Y3Qgc2lnbmF0 dXJlZF90eXBlICopICpzbG90OwogICBzdHJ1Y3QgZHdhcmYyX3Blcl9jdV9k YXRhICpwZXJfY3UgPSAmc2lnX3R5cGUtPnBlcl9jdTsKIAorICBnZGJfYXNz ZXJ0IChwZXJfY3UtPmlzX2RlYnVnX3R5cGVzKTsKICAgZ2RiX2Fzc2VydCAo aW5mbyA9PSBOVUxMKTsKIAogICAvKiBJZiB0aGlzIGNvbXBpbGF0aW9uIHVu aXQgd2FzIGFscmVhZHkgcmVhZCBpbiwgZnJlZSB0aGUKQEAgLTQyMDIsOCAr NDE1OCw4IEBAIHByb2Nlc3NfcHN5bXRhYl90eXBlX3VuaXQgKHZvaWQgKipz bG90LCAKICAgaWYgKHBlcl9jdS0+Y3UgIT0gTlVMTCkKICAgICBmcmVlX29u ZV9jYWNoZWRfY29tcF91bml0IChwZXJfY3UpOwogCi0gIGdkYl9hc3NlcnQg KHBlcl9jdS0+aXNfZGVidWdfdHlwZXMpOwotICBpbml0X3R1X2FuZF9yZWFk X2RpZXMgKHBlcl9jdSwgMCwgcHJvY2Vzc19wc3ltdGFiX2NvbXBfdW5pdF9y ZWFkZXIsIE5VTEwpOworICBpbml0X2N1dHVfYW5kX3JlYWRfZGllcyAocGVy X2N1LCAwLCAwLCBwcm9jZXNzX3BzeW10YWJfY29tcF91bml0X3JlYWRlciwK KwkJCSAgIE5VTEwpOwogCiAgIC8qIEFnZSBvdXQgYW55IHNlY29uZGFyeSBD VXMuICAqLwogICBhZ2VfY2FjaGVkX2NvbXBfdW5pdHMgKCk7CkBAIC00MzAz LDEwICs0MjU5LDcgQEAgbG9hZF9wYXJ0aWFsX2NvbXBfdW5pdF9yZWFkZXIg KGNvbnN0IHN0cgogc3RhdGljIHZvaWQKIGxvYWRfcGFydGlhbF9jb21wX3Vu aXQgKHN0cnVjdCBkd2FyZjJfcGVyX2N1X2RhdGEgKnRoaXNfY3UpCiB7Ci0g IGlmICh0aGlzX2N1LT5pc19kZWJ1Z190eXBlcykKLSAgICBpbml0X3R1X2Fu ZF9yZWFkX2RpZXMgKHRoaXNfY3UsIDEsIGxvYWRfcGFydGlhbF9jb21wX3Vu aXRfcmVhZGVyLCBOVUxMKTsKLSAgZWxzZQotICAgIGluaXRfY3VfYW5kX3Jl YWRfZGllcyAodGhpc19jdSwgMCwgMSwgbG9hZF9wYXJ0aWFsX2NvbXBfdW5p dF9yZWFkZXIsIE5VTEwpOworICBpbml0X2N1dHVfYW5kX3JlYWRfZGllcyAo dGhpc19jdSwgMSwgMSwgbG9hZF9wYXJ0aWFsX2NvbXBfdW5pdF9yZWFkZXIs IE5VTEwpOwogfQogCiAvKiBDcmVhdGUgYSBsaXN0IG9mIGFsbCBjb21waWxh dGlvbiB1bml0cyBpbiBPQkpGSUxFLgpAQCAtNTMxNSw3ICs1MjY4LDcgQEAg bG9hZF9mdWxsX2NvbXBfdW5pdCAoc3RydWN0IGR3YXJmMl9wZXJfYwogewog ICBnZGJfYXNzZXJ0ICghIHRoaXNfY3UtPmlzX2RlYnVnX3R5cGVzKTsKIAot ICBpbml0X2N1X2FuZF9yZWFkX2RpZXMgKHRoaXNfY3UsIDEsIDEsIGxvYWRf ZnVsbF9jb21wX3VuaXRfcmVhZGVyLCBOVUxMKTsKKyAgaW5pdF9jdXR1X2Fu ZF9yZWFkX2RpZXMgKHRoaXNfY3UsIDEsIDEsIGxvYWRfZnVsbF9jb21wX3Vu aXRfcmVhZGVyLCBOVUxMKTsKIH0KIAogLyogQWRkIGEgRElFIHRvIHRoZSBk ZWxheWVkIHBoeXNuYW1lIGxpc3QuICAqLwpAQCAtMTExNzYsMTEgKzExMTI5 LDE0IEBAIGZpbmRfcGFydGlhbF9kaWUgKHNlY3Rfb2Zmc2V0IG9mZnNldCwg c3QKIAogICBpZiAocGQgPT0gTlVMTCAmJiBwZXJfY3UtPmxvYWRfYWxsX2Rp ZXMgPT0gMCkKICAgICB7Ci0gICAgICAvKiBGSVhNRTogVGhlIHRlc3RzdWl0 ZSBkb2Vzbid0IHRyaWdnZXIgdGhpcyBjb2RlIHBhdGguCi0JIGh0dHA6Ly9z b3VyY2V3YXJlLm9yZy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9MTM5NjEg ICovCi0KLSAgICAgIGZyZWVfb25lX2NhY2hlZF9jb21wX3VuaXQgKHBlcl9j dSk7CiAgICAgICBwZXJfY3UtPmxvYWRfYWxsX2RpZXMgPSAxOworCisgICAg ICAvKiBUaGlzIGlzIG5hc3R5LiAgV2hlbiB3ZSByZXJlYWQgdGhlIERJRXMs IHNvbWV3aGVyZSB1cCB0aGUgY2FsbCBjaGFpbgorCSBUSElTX0NVLT5jdSBt YXkgYWxyZWFkeSBiZSBpbiB1c2UuICBTbyB3ZSBjYW4ndCBqdXN0IGZyZWUg aXQgYW5kCisJIHJlcGxhY2UgaXRzIERJRXMgd2l0aCB0aGUgb25lcyB3ZSBy ZWFkIGluLiAgSW5zdGVhZCwgd2UgbGVhdmUgdGhvc2UKKwkgRElFcyBhbG9u ZSAod2hpY2ggY2FuIHN0aWxsIGJlIGluIHVzZSwgZS5nLiBpbiBzY2FuX3Bh cnRpYWxfc3ltYm9scyksCisJIGFuZCBjbG9iYmVyIFRISVNfQ1UtPmN1LT5w YXJ0aWFsX2RpZXMgd2l0aCB0aGUgaGFzaCB0YWJsZSBmb3IgdGhlIG5ldwor CSBzZXQuICAqLwogICAgICAgbG9hZF9wYXJ0aWFsX2NvbXBfdW5pdCAocGVy X2N1KTsKIAogICAgICAgcGQgPSBmaW5kX3BhcnRpYWxfZGllX2luX2NvbXBf dW5pdCAob2Zmc2V0LCBwZXJfY3UtPmN1KTsKQEAgLTE1OTEzLDcgKzE1ODY5 LDcgQEAgcmVhZF9zaWduYXR1cmVkX3R5cGUgKHN0cnVjdCBzaWduYXR1cmVk XwogICBnZGJfYXNzZXJ0IChwZXJfY3UtPmlzX2RlYnVnX3R5cGVzKTsKICAg Z2RiX2Fzc2VydCAocGVyX2N1LT5jdSA9PSBOVUxMKTsKIAotICBpbml0X3R1 X2FuZF9yZWFkX2RpZXMgKHBlcl9jdSwgMSwgcmVhZF9zaWduYXR1cmVkX3R5 cGVfcmVhZGVyLCBOVUxMKTsKKyAgaW5pdF9jdXR1X2FuZF9yZWFkX2RpZXMg KHBlcl9jdSwgMCwgMSwgcmVhZF9zaWduYXR1cmVkX3R5cGVfcmVhZGVyLCBO VUxMKTsKIH0KIAogLyogRGVjb2RlIHNpbXBsZSBsb2NhdGlvbiBkZXNjcmlw dGlvbnMuCgpJbmRleDogdGVzdHN1aXRlL2dkYi5kd2FyZjIvcHIxMzk2MS5T Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IHRlc3RzdWl0ZS9n ZGIuZHdhcmYyL3ByMTM5NjEuUwpkaWZmIC1OIHRlc3RzdWl0ZS9nZGIuZHdh cmYyL3ByMTM5NjEuUwotLS0gL2Rldi9udWxsCTEgSmFuIDE5NzAgMDA6MDA6 MDAgLTAwMDAKKysrIHRlc3RzdWl0ZS9nZGIuZHdhcmYyL3ByMTM5NjEuUwkz MCBBcHIgMjAxMiAxNjo0OToyNyAtMDAwMApAQCAtMCwwICsxLDM1NSBAQAor LyogQ29weXJpZ2h0IDIwMTIgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgICBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGFzIHB1Ymxpc2hlZCBieQorICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRh dGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKyAg IChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgIFRo aXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0 IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZ OyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgIE1F UkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS UE9TRS4gIFNlZSB0aGUKKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGZvciBtb3JlIGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl CisgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxo dHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCisKKy8qIFRlc3Rj YXNlIHRvIGV4ZXJjaXNlIHRoZSBjb2RlIHBhdGggaW4gYnVnIDEzOTYxLgor CisgICBDb21waWxlZCBmcm9tOgorCisgICBjbGFzcyBmb28KKyAgIHsKKyAg ICBwdWJsaWM6CisgICAgIGludCBiYXI7CisgICB9OworCisgICBmb28gYmF6 OworCisgICBpbnQKKyAgIG1haW4gKCkKKyAgIHsKKyAgICAgcmV0dXJuIDA7 CisgICB9CisKKyAgIEFuZCB0aGVuIG1hbnVhbGx5IGVkaXRlZCB0byBpbnNl cnQgdGhlIG5lY2Vzc2FyeSBEV19BVF9zcGVjaWZpY2F0aW9uCisgICBlbnRy aWVzIHRvIHRyaWdnZXIgdGhlIGRlc2lyZWQgY29kZSBwYXRoLgorICAgVGhl cmUncyBubyByZWFsIG5lZWQgdG8gbWFrZSB0aGlzIGFyY2hpdGVjdHVyZS1z cGVjaWZpYywgc28gaXQgaGFzIGJlZW4KKyAgIGZ1cnRoZXIgaGFuZC1lZGl0 ZWQgdG8gc3VwcG9ydCB0aGF0LgorKi8KKworCS5maWxlCSJwcjEzOTYxLmNj IgorCisJLmdsb2JsCWJhegorCS5ic3MKKwkuYWxpZ24gNAorCS50eXBlCWJh eiwgQG9iamVjdAorCS5zaXplCWJheiwgNAorYmF6OgorCS56ZXJvCTQKKwor CS50ZXh0CisuTHRleHQwOgorCS5nbG9ibAltYWluCisJLnR5cGUJbWFpbiwg QGZ1bmN0aW9uCittYWluOgorLkxGQjA6CisJLjRieXRlIDAKKy5MRkUwOgor CS5zaXplCW1haW4sIC4tbWFpbgorLkxldGV4dDA6CisKKwkuc2VjdGlvbgku ZGVidWdfdHlwZXMKKy5MZGVidWdfdHlwZXMwOgorCS5sb25nCS5MdHVfZW5k IC0gLkx0dV9zdGFydAkvKiBMZW5ndGggb2YgQ29tcGlsYXRpb24gVW5pdCBJ bmZvICovCisuTHR1X3N0YXJ0OgorCS52YWx1ZQkweDQJLyogRFdBUkYgdmVy c2lvbiBudW1iZXIgKi8KKwkubG9uZwkuTGRlYnVnX2FiYnJldjAJLyogT2Zm c2V0IEludG8gQWJicmV2LiBTZWN0aW9uICovCisJLmJ5dGUJMHg0CS8qIFBv aW50ZXIgU2l6ZSAoaW4gYnl0ZXMpICovCisJLmJ5dGUJMHgxOQkvKiBUeXBl IFNpZ25hdHVyZSAqLworCS5ieXRlCTB4OGIKKwkuYnl0ZQkweDdlCisJLmJ5 dGUJMHhhYworCS5ieXRlCTB4Y2UKKwkuYnl0ZQkweGYxCisJLmJ5dGUJMHgy MgorCS5ieXRlCTB4OTAKKwkuNGJ5dGUJLkx0dV9jbGFzc190eXBlIC0gLkxk ZWJ1Z190eXBlczAgLyogT2Zmc2V0IHRvIFR5cGUgRElFICovCisJLnVsZWIx MjggMHgxCS8qIChESUUgKDB4MTcpIERXX1RBR190eXBlX3VuaXQpICovCisJ LmJ5dGUJMHg0CS8qIERXX0FUX2xhbmd1YWdlICovCisJLmJ5dGUJMHg3Mwkv KiBEV19BVF9HTlVfb2RyX3NpZ25hdHVyZSAqLworCS5ieXRlCTB4ZWEKKwku Ynl0ZQkweDg1CisJLmJ5dGUJMHgyMworCS5ieXRlCTB4NzUKKwkuYnl0ZQkw eDhhCisJLmJ5dGUJMHg3ZQorCS5ieXRlCTB4ODcKKwkubG9uZwkuTGRlYnVn X2xpbmUwCS8qIERXX0FUX3N0bXRfbGlzdCAqLworCisJLyogTWFudWFsbHkg aW5zZXJ0ZWQgdG8gaGF2ZSBhIERXX0FUX3NwZWNpZmljYXRpb24gcmVmZXJp bmcgdG8KKwkgICBzb21ldGhpbmcgYW5kIGFwcGVhcmluZyBhaGVhZCBvZiBp dC4gICovCisJLnVsZWIxMjggMHg4CS8qIERXX1RBR19jbGFzc190eXBlICov CisJLjRieXRlIC5MdHVfY2xhc3NfdHlwZSAtIC5MZGVidWdfdHlwZXMwCisJ LyogRW5kIG9mIG1hbnVhbCBpbnNlcnRpb24gKi8KKworLkx0dV9jbGFzc190 eXBlOgorCS51bGViMTI4IDB4MgkvKiAoRElFICgweDI1KSBEV19UQUdfY2xh c3NfdHlwZSkgKi8KKwkuYXNjaWkgImZvb1wwIgkvKiBEV19BVF9uYW1lICov CisJLmJ5dGUJMHg0CS8qIERXX0FUX2J5dGVfc2l6ZSAqLworCS5ieXRlCTB4 MQkvKiBEV19BVF9kZWNsX2ZpbGUgKHByMTM5NjEuY2MpICovCisJLmJ5dGUJ MHgxCS8qIERXX0FUX2RlY2xfbGluZSAqLworCS5sb25nCTB4M2YJLyogRFdf QVRfc2libGluZyAqLworCS51bGViMTI4IDB4MwkvKiAoRElFICgweDMxKSBE V19UQUdfbWVtYmVyKSAqLworCS5hc2NpaSAiYmFyXDAiCS8qIERXX0FUX25h bWUgKi8KKwkuYnl0ZQkweDEJLyogRFdfQVRfZGVjbF9maWxlIChwcjEzOTYx LmNjKSAqLworCS5ieXRlCTB4NAkvKiBEV19BVF9kZWNsX2xpbmUgKi8KKwku bG9uZwkweDNmCS8qIERXX0FUX3R5cGUgKi8KKwkuYnl0ZQkwCS8qIERXX0FU X2RhdGFfbWVtYmVyX2xvY2F0aW9uICovCisJLmJ5dGUJMHgxCS8qIERXX0FU X2FjY2Vzc2liaWxpdHkgKi8KKwkuYnl0ZQkwCS8qIGVuZCBvZiBjaGlsZHJl biBvZiBESUUgMHgyNSAqLworCS51bGViMTI4IDB4NAkvKiAoRElFICgweDNm KSBEV19UQUdfYmFzZV90eXBlKSAqLworCS5ieXRlCTB4NAkvKiBEV19BVF9i eXRlX3NpemUgKi8KKwkuYnl0ZQkweDUJLyogRFdfQVRfZW5jb2RpbmcgKi8K KwkuYXNjaWkgImludFwwIgkvKiBEV19BVF9uYW1lICovCisJLmJ5dGUJMAkv KiBlbmQgb2YgY2hpbGRyZW4gb2YgRElFIDB4MTcgKi8KKworLkx0dV9lbmQ6 CisKKwkuc2VjdGlvbgkuZGVidWdfaW5mbywiIixAcHJvZ2JpdHMKKy5MZGVi dWdfaW5mbzA6CisJLmxvbmcJLkxjdV9lbmQgLSAuTGN1X3N0YXJ0CS8qIExl bmd0aCBvZiBDb21waWxhdGlvbiBVbml0IEluZm8gKi8KKy5MY3Vfc3RhcnQ6 CisJLnZhbHVlCTB4NAkvKiBEV0FSRiB2ZXJzaW9uIG51bWJlciAqLworCS5s b25nCS5MZGVidWdfYWJicmV2MAkvKiBPZmZzZXQgSW50byBBYmJyZXYuIFNl Y3Rpb24gKi8KKwkuYnl0ZQkweDQJLyogUG9pbnRlciBTaXplIChpbiBieXRl cykgKi8KKwkudWxlYjEyOCAweDUJLyogKERJRSAoMHhiKSBEV19UQUdfY29t cGlsZV91bml0KSAqLworCS5sb25nCS5MQVNGMAkvKiBEV19BVF9wcm9kdWNl cjogIkdOVSBDKysgNC42LjMgMjAxMjAzMDYiICovCisJLmJ5dGUJMHg0CS8q IERXX0FUX2xhbmd1YWdlICovCisJLmxvbmcJLkxBU0YxCS8qIERXX0FUX25h bWU6ICJwcjEzOTYxLmNjIiAqLworCS5sb25nCS5MQVNGMgkvKiBEV19BVF9j b21wX2RpcjogIi4iICovCisJLmxvbmcJLkx0ZXh0MAkvKiBEV19BVF9sb3df cGMgKi8KKwkubG9uZwkuTGV0ZXh0MAkvKiBEV19BVF9oaWdoX3BjICovCisJ LmxvbmcJLkxkZWJ1Z19saW5lMAkvKiBEV19BVF9zdG10X2xpc3QgKi8KKy5M aW50X2Jhc2VfdHlwZToKKwkudWxlYjEyOCAweDQJLyogKERJRSAoMHgyNSkg RFdfVEFHX2Jhc2VfdHlwZSkgKi8KKwkuYnl0ZQkweDQJLyogRFdfQVRfYnl0 ZV9zaXplICovCisJLmJ5dGUJMHg1CS8qIERXX0FUX2VuY29kaW5nICovCisJ LmFzY2lpICJpbnRcMCIJLyogRFdfQVRfbmFtZSAqLworCS51bGViMTI4IDB4 NgkvKiAoRElFICgweDJjKSBEV19UQUdfc3VicHJvZ3JhbSkgKi8KKwkJCS8q IERXX0FUX2V4dGVybmFsICovCisJLmxvbmcJLkxBU0YzCS8qIERXX0FUX25h bWU6ICJtYWluIiAqLworCS5ieXRlCTB4MQkvKiBEV19BVF9kZWNsX2ZpbGUg KHByMTM5NjEuY2MpICovCisJLmJ5dGUJMHhhCS8qIERXX0FUX2RlY2xfbGlu ZSAqLworCS5sb25nCTB4MjUJLyogRFdfQVRfdHlwZSAqLworCS5sb25nCS5M RkIwCS8qIERXX0FUX2xvd19wYyAqLworCS5sb25nCS5MRkUwCS8qIERXX0FU X2hpZ2hfcGMgKi8KKwkudWxlYjEyOCAweDEJLyogRFdfQVRfZnJhbWVfYmFz ZSAqLworCS5ieXRlCTB4OWMJLyogRFdfT1BfY2FsbF9mcmFtZV9jZmEgKi8K KwkJCS8qIERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcyAqLworCS51bGViMTI4 IDB4NwkvKiAoRElFICgweDQxKSBEV19UQUdfdmFyaWFibGUpICovCisJLmFz Y2lpICJiYXpcMCIJLyogRFdfQVRfbmFtZSAqLworCS5ieXRlCTB4MQkvKiBE V19BVF9kZWNsX2ZpbGUgKHByMTM5NjEuY2MpICovCisJLmJ5dGUJMHg3CS8q IERXX0FUX2RlY2xfbGluZSAqLworCS5ieXRlCTB4MTkJLyogRFdfQVRfdHlw ZSAqLworCS5ieXRlCTB4OGIKKwkuYnl0ZQkweDdlCisJLmJ5dGUJMHhhYwor CS5ieXRlCTB4Y2UKKwkuYnl0ZQkweGYxCisJLmJ5dGUJMHgyMgorCS5ieXRl CTB4OTAKKwkJCS8qIERXX0FUX2V4dGVybmFsICovCisJLnVsZWIxMjggMHg1 CS8qIERXX0FUX2xvY2F0aW9uICovCisJLmJ5dGUJMHgzCS8qIERXX09QX2Fk ZHIgKi8KKwkubG9uZwliYXoKKworCS8qIE1hbnVhbGx5IGluc2VydGVkIHRv IGhhdmUgYSBEV19BVF9zcGVjaWZpY2F0aW9uIHJlZmVyaW5nIHRvCisJICAg c29tZXRoaW5nIGFuZCBhcHBlYXJpbmcgYWhlYWQgb2YgaXQuICAqLworCS51 bGViMTI4IDB4OAkvKiBEV19UQUdfY2xhc3NfdHlwZSAqLworCS40Ynl0ZSAu TGN1X2NsYXNzX3R5cGUgLSAuTGRlYnVnX2luZm8wIC8qIERXX0FUX3NwZWNp ZmljYXRpb24gKi8KKworLkxjdV9pbnRfdHlwZToKKwkudWxlYjEyOCAweDQJ LyogKERJRSAoMHgzZikgRFdfVEFHX2Jhc2VfdHlwZSkgKi8KKwkuYnl0ZQkw eDQJLyogRFdfQVRfYnl0ZV9zaXplICovCisJLmJ5dGUJMHg1CS8qIERXX0FU X2VuY29kaW5nICovCisJLmFzY2lpICJpbnRcMCIJLyogRFdfQVRfbmFtZSAq LworLkxjdV9jbGFzc190eXBlOgorCS51bGViMTI4IDB4MgkvKiAoRElFICgw eDI1KSBEV19UQUdfY2xhc3NfdHlwZSkgKi8KKwkuYXNjaWkgImZvbzJcMCIJ LyogRFdfQVRfbmFtZSAqLworCS5ieXRlCTB4NAkvKiBEV19BVF9ieXRlX3Np emUgKi8KKwkuYnl0ZQkweDEJLyogRFdfQVRfZGVjbF9maWxlIChwcjEzOTYx LmNjKSAqLworCS5ieXRlCTB4MQkvKiBEV19BVF9kZWNsX2xpbmUgKi8KKwku bG9uZwkweDNmCS8qIERXX0FUX3NpYmxpbmcgKi8KKwkudWxlYjEyOCAweDMJ LyogKERJRSAoMHgzMSkgRFdfVEFHX21lbWJlcikgKi8KKwkuYXNjaWkgImJh clwwIgkvKiBEV19BVF9uYW1lICovCisJLmJ5dGUJMHgxCS8qIERXX0FUX2Rl Y2xfZmlsZSAocHIxMzk2MS5jYykgKi8KKwkuYnl0ZQkweDQJLyogRFdfQVRf ZGVjbF9saW5lICovCisJLmxvbmcJLkxjdV9pbnRfdHlwZSAtIC5MZGVidWdf aW5mbzAgLyogRFdfQVRfdHlwZSAqLworCS5ieXRlCTAJLyogRFdfQVRfZGF0 YV9tZW1iZXJfbG9jYXRpb24gKi8KKwkuYnl0ZQkweDEJLyogRFdfQVRfYWNj ZXNzaWJpbGl0eSAqLworCS5ieXRlCTAJLyogZW5kIG9mIGNoaWxkcmVuIG9m IERJRSAweDI1ICovCisJLnVsZWIxMjggMHg0CS8qIChESUUgKDB4M2YpIERX X1RBR19iYXNlX3R5cGUpICovCisJLmJ5dGUJMHg0CS8qIERXX0FUX2J5dGVf c2l6ZSAqLworCS5ieXRlCTB4NQkvKiBEV19BVF9lbmNvZGluZyAqLworCS5h c2NpaSAiaW50XDAiCS8qIERXX0FUX25hbWUgKi8KKwkuYnl0ZQkwCS8qIGVu ZCBvZiBjaGlsZHJlbiBvZiBESUUgMHgxNyAqLworCS8qIEVuZCBvZiBtYW51 YWwgaW5zZXJ0aW9uICovCisKKwkuYnl0ZQkwCS8qIGVuZCBvZiBjaGlsZHJl biBvZiBESUUgMHhiICovCisKKy5MY3VfZW5kOgorCisJLnNlY3Rpb24JLmRl YnVnX2FiYnJldiwiIixAcHJvZ2JpdHMKKy5MZGVidWdfYWJicmV2MDoKKwku dWxlYjEyOCAweDEJLyogKGFiYnJldiBjb2RlKSAqLworCS51bGViMTI4IDB4 NDEJLyogKFRBRzogRFdfVEFHX3R5cGVfdW5pdCkgKi8KKwkuYnl0ZQkweDEJ LyogRFdfY2hpbGRyZW5feWVzICovCisJLnVsZWIxMjggMHgxMwkvKiAoRFdf QVRfbGFuZ3VhZ2UpICovCisJLnVsZWIxMjggMHhiCS8qIChEV19GT1JNX2Rh dGExKSAqLworCS51bGViMTI4IDB4MjEwZgkvKiAoRFdfQVRfR05VX29kcl9z aWduYXR1cmUpICovCisJLnVsZWIxMjggMHg3CS8qIChEV19GT1JNX2RhdGE4 KSAqLworCS51bGViMTI4IDB4MTAJLyogKERXX0FUX3N0bXRfbGlzdCkgKi8K KwkudWxlYjEyOCAweDE3CS8qIChEV19GT1JNX3NlY19vZmZzZXQpICovCisJ LmJ5dGUJMAorCS5ieXRlCTAKKwkudWxlYjEyOCAweDIJLyogKGFiYnJldiBj b2RlKSAqLworCS51bGViMTI4IDB4MgkvKiAoVEFHOiBEV19UQUdfY2xhc3Nf dHlwZSkgKi8KKwkuYnl0ZQkweDEJLyogRFdfY2hpbGRyZW5feWVzICovCisJ LnVsZWIxMjggMHgzCS8qIChEV19BVF9uYW1lKSAqLworCS51bGViMTI4IDB4 OAkvKiAoRFdfRk9STV9zdHJpbmcpICovCisJLnVsZWIxMjggMHhiCS8qIChE V19BVF9ieXRlX3NpemUpICovCisJLnVsZWIxMjggMHhiCS8qIChEV19GT1JN X2RhdGExKSAqLworCS51bGViMTI4IDB4M2EJLyogKERXX0FUX2RlY2xfZmls ZSkgKi8KKwkudWxlYjEyOCAweGIJLyogKERXX0ZPUk1fZGF0YTEpICovCisJ LnVsZWIxMjggMHgzYgkvKiAoRFdfQVRfZGVjbF9saW5lKSAqLworCS51bGVi MTI4IDB4YgkvKiAoRFdfRk9STV9kYXRhMSkgKi8KKwkudWxlYjEyOCAweDEJ LyogKERXX0FUX3NpYmxpbmcpICovCisJLnVsZWIxMjggMHgxMwkvKiAoRFdf Rk9STV9yZWY0KSAqLworCS5ieXRlCTAKKwkuYnl0ZQkwCisJLnVsZWIxMjgg MHgzCS8qIChhYmJyZXYgY29kZSkgKi8KKwkudWxlYjEyOCAweGQJLyogKFRB RzogRFdfVEFHX21lbWJlcikgKi8KKwkuYnl0ZQkwCS8qIERXX2NoaWxkcmVu X25vICovCisJLnVsZWIxMjggMHgzCS8qIChEV19BVF9uYW1lKSAqLworCS51 bGViMTI4IDB4OAkvKiAoRFdfRk9STV9zdHJpbmcpICovCisJLnVsZWIxMjgg MHgzYQkvKiAoRFdfQVRfZGVjbF9maWxlKSAqLworCS51bGViMTI4IDB4Ygkv KiAoRFdfRk9STV9kYXRhMSkgKi8KKwkudWxlYjEyOCAweDNiCS8qIChEV19B VF9kZWNsX2xpbmUpICovCisJLnVsZWIxMjggMHhiCS8qIChEV19GT1JNX2Rh dGExKSAqLworCS51bGViMTI4IDB4NDkJLyogKERXX0FUX3R5cGUpICovCisJ LnVsZWIxMjggMHgxMwkvKiAoRFdfRk9STV9yZWY0KSAqLworCS51bGViMTI4 IDB4MzgJLyogKERXX0FUX2RhdGFfbWVtYmVyX2xvY2F0aW9uKSAqLworCS51 bGViMTI4IDB4YgkvKiAoRFdfRk9STV9kYXRhMSkgKi8KKwkudWxlYjEyOCAw eDMyCS8qIChEV19BVF9hY2Nlc3NpYmlsaXR5KSAqLworCS51bGViMTI4IDB4 YgkvKiAoRFdfRk9STV9kYXRhMSkgKi8KKwkuYnl0ZQkwCisJLmJ5dGUJMAor CS51bGViMTI4IDB4NAkvKiAoYWJicmV2IGNvZGUpICovCisJLnVsZWIxMjgg MHgyNAkvKiAoVEFHOiBEV19UQUdfYmFzZV90eXBlKSAqLworCS5ieXRlCTAJ LyogRFdfY2hpbGRyZW5fbm8gKi8KKwkudWxlYjEyOCAweGIJLyogKERXX0FU X2J5dGVfc2l6ZSkgKi8KKwkudWxlYjEyOCAweGIJLyogKERXX0ZPUk1fZGF0 YTEpICovCisJLnVsZWIxMjggMHgzZQkvKiAoRFdfQVRfZW5jb2RpbmcpICov CisJLnVsZWIxMjggMHhiCS8qIChEV19GT1JNX2RhdGExKSAqLworCS51bGVi MTI4IDB4MwkvKiAoRFdfQVRfbmFtZSkgKi8KKwkudWxlYjEyOCAweDgJLyog KERXX0ZPUk1fc3RyaW5nKSAqLworCS5ieXRlCTAKKwkuYnl0ZQkwCisJLnVs ZWIxMjggMHg1CS8qIChhYmJyZXYgY29kZSkgKi8KKwkudWxlYjEyOCAweDEx CS8qIChUQUc6IERXX1RBR19jb21waWxlX3VuaXQpICovCisJLmJ5dGUJMHgx CS8qIERXX2NoaWxkcmVuX3llcyAqLworCS51bGViMTI4IDB4MjUJLyogKERX X0FUX3Byb2R1Y2VyKSAqLworCS51bGViMTI4IDB4ZQkvKiAoRFdfRk9STV9z dHJwKSAqLworCS51bGViMTI4IDB4MTMJLyogKERXX0FUX2xhbmd1YWdlKSAq LworCS51bGViMTI4IDB4YgkvKiAoRFdfRk9STV9kYXRhMSkgKi8KKwkudWxl YjEyOCAweDMJLyogKERXX0FUX25hbWUpICovCisJLnVsZWIxMjggMHhlCS8q IChEV19GT1JNX3N0cnApICovCisJLnVsZWIxMjggMHgxYgkvKiAoRFdfQVRf Y29tcF9kaXIpICovCisJLnVsZWIxMjggMHhlCS8qIChEV19GT1JNX3N0cnAp ICovCisJLnVsZWIxMjggMHgxMQkvKiAoRFdfQVRfbG93X3BjKSAqLworCS51 bGViMTI4IDB4MQkvKiAoRFdfRk9STV9hZGRyKSAqLworCS51bGViMTI4IDB4 MTIJLyogKERXX0FUX2hpZ2hfcGMpICovCisJLnVsZWIxMjggMHgxCS8qIChE V19GT1JNX2FkZHIpICovCisJLnVsZWIxMjggMHgxMAkvKiAoRFdfQVRfc3Rt dF9saXN0KSAqLworCS51bGViMTI4IDB4MTcJLyogKERXX0ZPUk1fc2VjX29m ZnNldCkgKi8KKwkuYnl0ZQkwCisJLmJ5dGUJMAorCS51bGViMTI4IDB4Ngkv KiAoYWJicmV2IGNvZGUpICovCisJLnVsZWIxMjggMHgyZQkvKiAoVEFHOiBE V19UQUdfc3VicHJvZ3JhbSkgKi8KKwkuYnl0ZQkwCS8qIERXX2NoaWxkcmVu X25vICovCisJLnVsZWIxMjggMHgzZgkvKiAoRFdfQVRfZXh0ZXJuYWwpICov CisJLnVsZWIxMjggMHgxOQkvKiAoRFdfRk9STV9mbGFnX3ByZXNlbnQpICov CisJLnVsZWIxMjggMHgzCS8qIChEV19BVF9uYW1lKSAqLworCS51bGViMTI4 IDB4ZQkvKiAoRFdfRk9STV9zdHJwKSAqLworCS51bGViMTI4IDB4M2EJLyog KERXX0FUX2RlY2xfZmlsZSkgKi8KKwkudWxlYjEyOCAweGIJLyogKERXX0ZP Uk1fZGF0YTEpICovCisJLnVsZWIxMjggMHgzYgkvKiAoRFdfQVRfZGVjbF9s aW5lKSAqLworCS51bGViMTI4IDB4YgkvKiAoRFdfRk9STV9kYXRhMSkgKi8K KwkudWxlYjEyOCAweDQ5CS8qIChEV19BVF90eXBlKSAqLworCS51bGViMTI4 IDB4MTMJLyogKERXX0ZPUk1fcmVmNCkgKi8KKwkudWxlYjEyOCAweDExCS8q IChEV19BVF9sb3dfcGMpICovCisJLnVsZWIxMjggMHgxCS8qIChEV19GT1JN X2FkZHIpICovCisJLnVsZWIxMjggMHgxMgkvKiAoRFdfQVRfaGlnaF9wYykg Ki8KKwkudWxlYjEyOCAweDEJLyogKERXX0ZPUk1fYWRkcikgKi8KKwkudWxl YjEyOCAweDQwCS8qIChEV19BVF9mcmFtZV9iYXNlKSAqLworCS51bGViMTI4 IDB4MTgJLyogKERXX0ZPUk1fZXhwcmxvYykgKi8KKwkudWxlYjEyOCAweDIx MTcJLyogKERXX0FUX0dOVV9hbGxfY2FsbF9zaXRlcykgKi8KKwkudWxlYjEy OCAweDE5CS8qIChEV19GT1JNX2ZsYWdfcHJlc2VudCkgKi8KKwkuYnl0ZQkw CisJLmJ5dGUJMAorCS51bGViMTI4IDB4NwkvKiAoYWJicmV2IGNvZGUpICov CisJLnVsZWIxMjggMHgzNAkvKiAoVEFHOiBEV19UQUdfdmFyaWFibGUpICov CisJLmJ5dGUJMAkvKiBEV19jaGlsZHJlbl9ubyAqLworCS51bGViMTI4IDB4 MwkvKiAoRFdfQVRfbmFtZSkgKi8KKwkudWxlYjEyOCAweDgJLyogKERXX0ZP Uk1fc3RyaW5nKSAqLworCS51bGViMTI4IDB4M2EJLyogKERXX0FUX2RlY2xf ZmlsZSkgKi8KKwkudWxlYjEyOCAweGIJLyogKERXX0ZPUk1fZGF0YTEpICov CisJLnVsZWIxMjggMHgzYgkvKiAoRFdfQVRfZGVjbF9saW5lKSAqLworCS51 bGViMTI4IDB4YgkvKiAoRFdfRk9STV9kYXRhMSkgKi8KKwkudWxlYjEyOCAw eDQ5CS8qIChEV19BVF90eXBlKSAqLworCS51bGViMTI4IDB4MjAJLyogKERX X0ZPUk1fcmVmX3NpZzgpICovCisJLnVsZWIxMjggMHgzZgkvKiAoRFdfQVRf ZXh0ZXJuYWwpICovCisJLnVsZWIxMjggMHgxOQkvKiAoRFdfRk9STV9mbGFn X3ByZXNlbnQpICovCisJLnVsZWIxMjggMHgyCS8qIChEV19BVF9sb2NhdGlv bikgKi8KKwkudWxlYjEyOCAweDE4CS8qIChEV19GT1JNX2V4cHJsb2MpICov CisJLmJ5dGUJMAorCS5ieXRlCTAKKworCS8qIE1hbnVhbGx5IGluc2VydGVk LiAgKi8KKwkudWxlYjEyOCAweDgJCS8qIGFiYnJldiBjb2RlICovCisJLnVs ZWIxMjggMHgyCQkvKiBEV19UQUdfY2xhc3NfdHlwZSAqLworCS5ieXRlCTB4 MAkJLyogRFdfaGFzX2NoaWxkcmVuX25vICovCisJLnVsZWIxMjggMHg0NwkJ LyogRFdfQVRfc3BlY2lmaWNhdGlvbiAqLworCS51bGViMTI4IDB4MTMJCS8q IERXX0ZPUk1fcmVmNCAqLworCS5ieXRlCTB4MAkJLyogVGVybWluYXRvciAq LworCS5ieXRlCTB4MAkJLyogVGVybWluYXRvciAqLworCS8qIEVuZCBvZiBt YW51YWwgaW5zZXJ0aW9uLiAgKi8KKworCS5ieXRlCTAKKworCS5zZWN0aW9u CS5kZWJ1Z19hcmFuZ2VzLCIiLEBwcm9nYml0cworCS5sb25nCTB4MWMJLyog TGVuZ3RoIG9mIEFkZHJlc3MgUmFuZ2VzIEluZm8gKi8KKwkudmFsdWUJMHgy CS8qIERXQVJGIFZlcnNpb24gKi8KKwkubG9uZwkuTGRlYnVnX2luZm8wCS8q IE9mZnNldCBvZiBDb21waWxhdGlvbiBVbml0IEluZm8gKi8KKwkuYnl0ZQkw eDQJLyogU2l6ZSBvZiBBZGRyZXNzICovCisJLmJ5dGUJMAkvKiBTaXplIG9m IFNlZ21lbnQgRGVzY3JpcHRvciAqLworCS52YWx1ZQkwCS8qIFBhZCB0byA4 IGJ5dGUgYm91bmRhcnkgKi8KKwkudmFsdWUJMAorCS5sb25nCS5MdGV4dDAJ LyogQWRkcmVzcyAqLworCS5sb25nCS5MZXRleHQwLS5MdGV4dDAJLyogTGVu Z3RoICovCisJLmxvbmcJMAorCS5sb25nCTAKKworCS5zZWN0aW9uCS5kZWJ1 Z19saW5lLCIiLEBwcm9nYml0cworLkxkZWJ1Z19saW5lMDoKKworCS5zZWN0 aW9uCS5kZWJ1Z19zdHIsIk1TIixAcHJvZ2JpdHMsMQorLkxBU0YwOgorCS5z dHJpbmcJIkdOVSBDKysgNC42LjMgMjAxMjAzMDYiCisuTEFTRjI6CisJLnN0 cmluZwkiLiIKKy5MQVNGMToKKwkuc3RyaW5nCSJwcjEzOTYxLmNjIgorLkxB U0YzOgorCS5zdHJpbmcJIm1haW4iCisKSW5kZXg6IHRlc3RzdWl0ZS9nZGIu ZHdhcmYyL3ByMTM5NjEuZXhwCj09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNT IGZpbGU6IHRlc3RzdWl0ZS9nZGIuZHdhcmYyL3ByMTM5NjEuZXhwCmRpZmYg LU4gdGVzdHN1aXRlL2dkYi5kd2FyZjIvcHIxMzk2MS5leHAKLS0tIC9kZXYv bnVsbAkxIEphbiAxOTcwIDAwOjAwOjAwIC0wMDAwCisrKyB0ZXN0c3VpdGUv Z2RiLmR3YXJmMi9wcjEzOTYxLmV4cAkzMCBBcHIgMjAxMiAxNjo0OToyNyAt MDAwMApAQCAtMCwwICsxLDM2IEBACisjIENvcHlyaWdodCAyMDEyIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisjIFRoaXMgcHJvZ3JhbSBp cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv b3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVy IHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQgV0lU SE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1Ig QSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBz aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAg SWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lgor CisjIEEgdGVzdGNhc2UgdG8gdHJpZ2dlciB0aGUgY29kZSBwYXRoIGluIGJ1 ZyAxMzk2MS4KKworbG9hZF9saWIgZHdhcmYuZXhwCisKKyMgVGhpcyB0ZXN0 IGNhbiBvbmx5IGJlIHJ1biBvbiB0YXJnZXRzIHdoaWNoIHN1cHBvcnQgRFdB UkYtMiBhbmQgdXNlIGdhcy4KK2lmIHshW2R3YXJmMl9zdXBwb3J0XX0gewor ICAgIHJldHVybiAwCit9CisKK3NldCB0ZXN0ZmlsZSAicHIxMzk2MSIKK3Nl dCBzcmNmaWxlICR7dGVzdGZpbGV9LlMKK3NldCBiaW5maWxlICR7dGVzdGZp bGV9LngKKworaWYgeyBbcHJlcGFyZV9mb3JfdGVzdGluZyAke3Rlc3RmaWxl fS5leHAgJHtiaW5maWxlfSAke3NyY2ZpbGV9XSA9PSAtMSB9IHsKKyAgICBy ZXR1cm4gLTEKK30KKworZ2RiX3Rlc3QgImJyZWFrIG1haW4iICJCcmVha3Bv aW50LiphdC4qIgorCisjIElmIHdlIGdldCB0aGlzIGZhciBnZGIgZGlkbid0 IGNyYXNoLgorcGFzcyAkdGVzdGZpbGUK --14dae9d24d56ff566004bee8506e--