From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 82926 invoked by alias); 24 May 2016 17:03:14 -0000 Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org Received: (qmail 82917 invoked by uid 89); 24 May 2016 17:03:14 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=franklin, Franklin, newabi, amodragmailcom X-HELO: mail-qk0-f193.google.com Received: from mail-qk0-f193.google.com (HELO mail-qk0-f193.google.com) (209.85.220.193) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Tue, 24 May 2016 17:03:03 +0000 Received: by mail-qk0-f193.google.com with SMTP id z80so2454929qkb.2 for ; Tue, 24 May 2016 10:03:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=GHR51Z1/zJj4o7mqhYtAtVfHFtZ8MCXXHQVskjx1T+A=; b=mUGt8p1/H13lHkGLCVCGqK9P7rEOSnCW8LExIpQTVH6uP++ECXSp8pH1Z8Wued3+s6 wKUuYEcZki2rb4lJ7OFicSeN8ntU/K7kYcFCYSkA3dOXuh1vYTw6b4j4LAYP2IZK3uDf ldn+X+wzfdMGj3wAioR7l2ommZhGKbLwJ9HOsACuPusprqKF90fl4dU93gKaFdKwUdHm VtWheWAPu7i9uhfi9Be+BNSQp0mdGrTg5b17jt/5WBFoQe+ZvX3TUyf6GNSrDEixBlsN Lx2uvGdUHAGy/yajugkaHqpRaUj8JQuNu/p1txoKTyKIaRkU0B8+n2F4fgkpfvtn5wCf G9aw== X-Gm-Message-State: ALyK8tLPY121a02qvS6lwy87LxtGk3hLac5p5E0Bt0fYsr5c51gKDAe+JPXy3T9BC49HwUXWytMuvTOpEBSrmw== MIME-Version: 1.0 X-Received: by 10.55.207.149 with SMTP id v21mr4463720qkl.195.1464109381638; Tue, 24 May 2016 10:03:01 -0700 (PDT) Received: by 10.55.221.134 with HTTP; Tue, 24 May 2016 10:03:01 -0700 (PDT) In-Reply-To: <20160523094203.GC3300@bubble.grove.modra.org> References: <20160520121002.GA28605@intel.com> <20160523094203.GC3300@bubble.grove.modra.org> Date: Tue, 24 May 2016 17:03:00 -0000 Message-ID: Subject: Re: [PATCH] PR binutils/14625: Enable 64-bit archives in ar and ranlib From: "H.J. Lu" To: Alan Modra Cc: Binutils Content-Type: multipart/mixed; boundary=001a114592ac9b1afb0533998743 X-IsSubscribed: yes X-SW-Source: 2016-05/txt/msg00367.txt.bz2 --001a114592ac9b1afb0533998743 Content-Type: text/plain; charset=UTF-8 Content-length: 2180 On Mon, May 23, 2016 at 2:42 AM, Alan Modra wrote: > On Fri, May 20, 2016 at 05:10:02AM -0700, H.J. Lu wrote: >> Since existing ld and gold support the 64-bit (MIPS) ELF archives, we >> can use the 64-bit (MIPS) ELF archives as 64-bit archives. Since the >> plugin target is used to create archive in plugin-enabled ar, we need >> a way to enable 64-bit archives in the plugin target. This patch adds >> --enable-64-bit-archive to bfd to enable 64-bit archives in ar and >> ranlib. Since both 64-bit MIPS and s390 ELF targets currently use >> 64-bit archives, all Linux linkers with 64-bit BFD support both 32-bit >> and 64-bit archives, 64-bit archives are enabled by default for them. > > Hmm, isn't it true that archive64.c is compiled in for any 64-bit > target? I also don't see anything ELF specific in archive64.c. That is correct. >> + # Since all Linux linkers support both 32-bit and 64-bit archives, >> + # it is safe to enable 64-bit archives for Linux targets with 64-bit >> + # bfd_vma. >> + case "${target}${want64}" in >> + *linux*true) >> + want_64_bit_archive=true >> + ;; >> + esac >> +fi > > So the above could just set want_64_bit_archive based on want64, > ignoring target, except that doing so might result in archives that > aren't recognized by native tools. How about instead of this > configure option, changing _bfd_compute_and_write_armap to choose the > archive64.c write_armap whenever the archive size is larger than 2G? The limit is 4GB, not 2GB. The limit is the offset of an archive member, not the size of archive. We can have an archive > 4GB with archive member offsets < 4GB. > I think that might just work automatically. > > The rest of the patch looks reasonable except that you missed changing > elf64-ia64-vms.c, and I think the libbfd-in.h defines would be better Since elf64-ia64-vms.c uses _bfd_vms_lib_write_armap which is defined as NULL, i prefer to leave it unchanged. > with the coff defines substituted. eg. _bfd_slurp_extended_name_table > rather than _bfd_archive_coff_slurp_extended_name_table. > Good point. Here is the updated patch. OK for master? Thanks. -- H.J. --001a114592ac9b1afb0533998743 Content-Type: text/x-patch; charset=US-ASCII; name="0001-Enable-64-bit-archives-in-ar-and-ranlib.patch" Content-Disposition: attachment; filename="0001-Enable-64-bit-archives-in-ar-and-ranlib.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iolow1lz0 Content-length: 25173 RnJvbSBiN2ZhMDMwMjNlZDc4MThhNzc1YTQyNTBhZTMzM2E3ODQ1ZWM3OTE4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhq bC50b29sc0BnbWFpbC5jb20+CkRhdGU6IFRodSwgMTkgTWF5IDIwMTYgMTM6 MzQ6MTEgLTA3MDAKU3ViamVjdDogW1BBVENIXSBFbmFibGUgNjQtYml0IGFy Y2hpdmVzIGluIGFyIGFuZCByYW5saWIKClNpbmNlIGV4aXN0aW5nIGxkIGFu ZCBnb2xkIHN1cHBvcnQgdGhlIDY0LWJpdCAoTUlQUykgRUxGIGFyY2hpdmVz LCB3ZQpjYW4gdXNlIHRoZSA2NC1iaXQgKE1JUFMpIEVMRiBhcmNoaXZlcyBh cyA2NC1iaXQgYXJjaGl2ZXMuICBTaW5jZSB0aGUKcGx1Z2luIHRhcmdldCBp cyB1c2VkIHRvIGNyZWF0ZSBhcmNoaXZlIGluIHBsdWdpbi1lbmFibGVkIGFy LCB3ZSBuZWVkCmEgd2F5IHRvIGVuYWJsZSA2NC1iaXQgYXJjaGl2ZXMgaW4g dGhlIHBsdWdpbiB0YXJnZXQuICBUaGlzIHBhdGNoIGFkZHMKLS1lbmFibGUt NjQtYml0LWFyY2hpdmUgdG8gYmZkIHRvIGVuYWJsZSA2NC1iaXQgYXJjaGl2 ZXMgaW4gYXIgYW5kCnJhbmxpYi4gIFNpbmNlIGJvdGggNjQtYml0IE1JUFMg YW5kIHMzOTAgRUxGIHRhcmdldHMgY3VycmVudGx5IHVzZQo2NC1iaXQgYXJj aGl2ZXMsIGFsbCBMaW51eCBsaW5rZXJzIHdpdGggNjQtYml0IEJGRCBzdXBw b3J0IGJvdGggMzItYml0CmFuZCA2NC1iaXQgYXJjaGl2ZXMsIDY0LWJpdCBh cmNoaXZlcyBhcmUgZW5hYmxlZCBieSBkZWZhdWx0IGZvciB0aGVtLgoKVGVz dGVkIG9uIExpbnV4L3g4NiBhbmQgTGludXgveDg2LTY0IHdpdGggZXhpc3Rp bmcgbGQgYW5kIGdvbGQuCgpiZmQvCgoJUFIgYmludXRpbHMvMTQ2MjUKCSog YXJjaGl2ZS5jIChiZmRfc2x1cnBfYXJtYXApOiBSZXBsYWNlCgliZmRfZWxm NjRfYXJjaGl2ZV9zbHVycF9hcm1hcCB3aXRoCglfYmZkX2FyY2hpdmVfNjRf Yml0X3NsdXJwX2FybWFwLgoJKiBhcmNoaXZlNjQuYyAoYmZkX2VsZjY0X2Fy Y2hpdmVfc2x1cnBfYXJtYXApOiBSZW5hbWVkIHRvIC4uLgoJKF9iZmRfYXJj aGl2ZV82NF9iaXRfc2x1cnBfYXJtYXApOiBUaGlzLgoJKGJmZF9lbGY2NF9h cmNoaXZlX3dyaXRlX2FybWFwKTogUmVuYW1lZCB0byAuLi4KCShfYmZkX2Fy Y2hpdmVfNjRfYml0X3dyaXRlX2FybWFwKTogVGhpcy4KCSogY29uZmlndXJl LmFjOiBBZGQgLS1lbmFibGUtNjQtYml0LWFyY2hpdmUuCgkod2FudF82NF9i aXRfYXJjaGl2ZSk6IE5ldy4gIFNldCB0byB0cnVlIGJ5IGRlZmF1bHQgZm9y IDY0LWJpdAoJTUlQUyBhbmQgczM5MCBFTEYgdGFyZ2V0cyBhcyB3ZWxsIGFz IExpbnV4IHRhcmdldHMgd2l0aCA2NC1iaXQKCWJmZF92bWEuCgkoVVNFXzY0 X0JJVF9BUkNISVZFKTogTmV3IEFDX0RFRklORS4KCSogY29uZmlnLmluOiBS ZWdlbmVyYXRlZC4KCSogY29uZmlndXJlOiBMaWtld2lzZS4KCSogZWxmNjQt bWlwcy5jIChiZmRfZWxmNjRfYXJjaGl2ZV9mdW5jdGlvbnMpOiBSZW1vdmVk LgoJKGJmZF9lbGY2NF9hcmNoaXZlX3NsdXJwX2FybWFwKTogTGlrZXdpc2Uu CgkoYmZkX2VsZjY0X2FyY2hpdmVfd3JpdGVfYXJtYXApOiBMaWtld2lzZS4K CShiZmRfZWxmNjRfYXJjaGl2ZV9zbHVycF9leHRlbmRlZF9uYW1lX3RhYmxl KTogTGlrZXdpc2UuCgkoYmZkX2VsZjY0X2FyY2hpdmVfY29uc3RydWN0X2V4 dGVuZGVkX25hbWVfdGFibGUpOiBMaWtld2lzZS4KCShiZmRfZWxmNjRfYXJj aGl2ZV90cnVuY2F0ZV9hcm5hbWUpOiBMaWtld2lzZS4KCShiZmRfZWxmNjRf YXJjaGl2ZV9yZWFkX2FyX2hkcik6IExpa2V3aXNlLgoJKGJmZF9lbGY2NF9h cmNoaXZlX3dyaXRlX2FyX2hkcik6IExpa2V3aXNlLgoJKGJmZF9lbGY2NF9h cmNoaXZlX29wZW5yX25leHRfYXJjaGl2ZWRfZmlsZSk6IExpa2V3aXNlLgoJ KGJmZF9lbGY2NF9hcmNoaXZlX2dldF9lbHRfYXRfaW5kZXgpOiBMaWtld2lz ZS4KCShiZmRfZWxmNjRfYXJjaGl2ZV9nZW5lcmljX3N0YXRfYXJjaF9lbHQp OiBMaWtld2lzZS4KCShiZmRfZWxmNjRfYXJjaGl2ZV91cGRhdGVfYXJtYXBf dGltZXN0YW1wKTogTGlrZXdpc2UuCgkqIGVsZjY0LXMzOTAuYyAoYmZkX2Vs ZjY0X2FyY2hpdmVfZnVuY3Rpb25zKTogUmVtb3ZlZC4KCShiZmRfZWxmNjRf YXJjaGl2ZV9zbHVycF9hcm1hcCk6IExpa2V3aXNlLgoJKGJmZF9lbGY2NF9h cmNoaXZlX3dyaXRlX2FybWFwKTogTGlrZXdpc2UuCgkoYmZkX2VsZjY0X2Fy Y2hpdmVfc2x1cnBfZXh0ZW5kZWRfbmFtZV90YWJsZSk6IExpa2V3aXNlLgoJ KGJmZF9lbGY2NF9hcmNoaXZlX2NvbnN0cnVjdF9leHRlbmRlZF9uYW1lX3Rh YmxlKTogTGlrZXdpc2UuCgkoYmZkX2VsZjY0X2FyY2hpdmVfdHJ1bmNhdGVf YXJuYW1lKTogTGlrZXdpc2UuCgkoYmZkX2VsZjY0X2FyY2hpdmVfcmVhZF9h cl9oZHIpOiBMaWtld2lzZS4KCShiZmRfZWxmNjRfYXJjaGl2ZV93cml0ZV9h cl9oZHIpOiBMaWtld2lzZS4KCShiZmRfZWxmNjRfYXJjaGl2ZV9vcGVucl9u ZXh0X2FyY2hpdmVkX2ZpbGUpOiBMaWtld2lzZS4KCShiZmRfZWxmNjRfYXJj aGl2ZV9nZXRfZWx0X2F0X2luZGV4KTogTGlrZXdpc2UuCgkoYmZkX2VsZjY0 X2FyY2hpdmVfZ2VuZXJpY19zdGF0X2FyY2hfZWx0KTogTGlrZXdpc2UuCgko YmZkX2VsZjY0X2FyY2hpdmVfdXBkYXRlX2FybWFwX3RpbWVzdGFtcCk6IExp a2V3aXNlLgoJKiBlbGZ4eC10YXJnZXQuaCAoVEFSR0VUX0JJR19TWU0pOiBV c2UgX2JmZF9hcmNoaXZlXzY0X2JpdCBvbgoJQkZEX0pVTVBfVEFCTEVfQVJD SElWRSBpZiBVU0VfNjRfQklUX0FSQ0hJVkUgaXMgZGVmaW5lZCBhbmQKCWJm ZF9lbGZOTl9hcmNoaXZlX2Z1bmN0aW9ucyBpc24ndCBkZWZpbmVkLgoJKFRB UkdFVF9MSVRUTEVfU1lNKTogTGlrZXdpc2UuCgkqIGxpYmJmZC1pbi5oIChf YmZkX2FyY2hpdmVfNjRfYml0X3NsdXJwX2FybWFwKTogTmV3IHByb3RvdHlw ZS4KCShfYmZkX2FyY2hpdmVfNjRfYml0X3dyaXRlX2FybWFwKTogTGlrZXdp c2UuCgkoX2JmZF9hcmNoaXZlXzY0X2JpdF9zbHVycF9leHRlbmRlZF9uYW1l X3RhYmxlKTogTmV3IG1hY3JvLgoJKF9iZmRfYXJjaGl2ZV82NF9iaXRfY29u c3RydWN0X2V4dGVuZGVkX25hbWVfdGFibGUpOiBMaWtld2lzZS4KCShfYmZk X2FyY2hpdmVfNjRfYml0X3RydW5jYXRlX2FybmFtZSk6IExpa2V3aXNlLgoJ KF9iZmRfYXJjaGl2ZV82NF9iaXRfcmVhZF9hcl9oZHIpOiBMaWtld2lzZS4K CShfYmZkX2FyY2hpdmVfNjRfYml0X3dyaXRlX2FyX2hkcik6IExpa2V3aXNl LgoJKF9iZmRfYXJjaGl2ZV82NF9iaXRfb3BlbnJfbmV4dF9hcmNoaXZlZF9m aWxlKTogTGlrZXdpc2UuCgkoX2JmZF9hcmNoaXZlXzY0X2JpdF9nZXRfZWx0 X2F0X2luZGV4KTogTGlrZXdpc2UuCgkoX2JmZF9hcmNoaXZlXzY0X2JpdF9n ZW5lcmljX3N0YXRfYXJjaF9lbHQpOiBMaWtld2lzZS4KCShfYmZkX2FyY2hp dmVfNjRfYml0X3VwZGF0ZV9hcm1hcF90aW1lc3RhbXApOiBMaWtld2lzZS4K CSogbGliYmZkLmg6IFJlZ2VuZXJhdGVkLgoJKiBwbHVnaW4uYyAocGx1Z2lu X3ZlYyk6IFVzZSBfYmZkX2FyY2hpdmVfNjRfYml0IG9uCglCRkRfSlVNUF9U QUJMRV9BUkNISVZFIGlmIFVTRV82NF9CSVRfQVJDSElWRSBpcyBkZWZpbmVk LgoKYmludXRpbHMvCgoJUFIgYmludXRpbHMvMTQ2MjUKCSogTkVXUzogTWVu dGlvbiAtLWVuYWJsZS02NC1iaXQtYXJjaGl2ZS4KLS0tCiBiZmQvYXJjaGl2 ZS5jICAgICAgfCAgNSArKy0tLQogYmZkL2FyY2hpdmU2NC5jICAgIHwgMjEg KysrKysrKysrLS0tLS0tLS0tLS0tCiBiZmQvY29uZmlnLmluICAgICAgfCAg MyArKysKIGJmZC9jb25maWd1cmUgICAgICB8IDQ1ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQogYmZkL2NvbmZpZ3Vy ZS5hYyAgIHwgMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCiBiZmQvZWxmNjQtbWlwcy5jICAgfCAyMyAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQogYmZkL2VsZjY0LXMzOTAuYyAgIHwgMTUgLS0tLS0tLS0tLS0t LS0tCiBiZmQvZWxmeHgtdGFyZ2V0LmggfCAgNCArKysrCiBiZmQvbGliYmZk LWluLmggICAgfCAyMyArKysrKysrKysrKysrKysrKysrKysrKwogYmZkL2xp YmJmZC5oICAgICAgIHwgMjMgKysrKysrKysrKysrKysrKysrKysrKysKIGJm ZC9wbHVnaW4uYyAgICAgICB8ICA0ICsrKysKIGJpbnV0aWxzL05FV1MgICAg ICB8ICAzICsrKwogMTIgZmlsZXMgY2hhbmdlZCwgMTUwIGluc2VydGlvbnMo KyksIDU1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2JmZC9hcmNoaXZl LmMgYi9iZmQvYXJjaGl2ZS5jCmluZGV4IDUzZTI5NWUuLjA4NmY3YzMgMTAw NjQ0Ci0tLSBhL2JmZC9hcmNoaXZlLmMKKysrIGIvYmZkL2FyY2hpdmUuYwpA QCAtMTE0NCwxMCArMTE0NCw5IEBAIGJmZF9zbHVycF9hcm1hcCAoYmZkICph YmZkKQogICAgIHJldHVybiBkb19zbHVycF9jb2ZmX2FybWFwIChhYmZkKTsK ICAgZWxzZSBpZiAoQ09OU1RfU1RSTkVRIChuZXh0bmFtZSwgIi9TWU02NC8g ICAgICAgICAiKSkKICAgICB7Ci0gICAgICAvKiA2NGJpdCBFTEYgKElyaXgg NikgYXJjaGl2ZS4gICovCisgICAgICAvKiA2NGJpdCAoSXJpeCA2KSBhcmNo aXZlLiAgKi8KICNpZmRlZiBCRkQ2NAotICAgICAgZXh0ZXJuIGJmZF9ib29s ZWFuIGJmZF9lbGY2NF9hcmNoaXZlX3NsdXJwX2FybWFwIChiZmQgKik7Ci0g ICAgICByZXR1cm4gYmZkX2VsZjY0X2FyY2hpdmVfc2x1cnBfYXJtYXAgKGFi ZmQpOworICAgICAgcmV0dXJuIF9iZmRfYXJjaGl2ZV82NF9iaXRfc2x1cnBf YXJtYXAgKGFiZmQpOwogI2Vsc2UKICAgICAgIGJmZF9zZXRfZXJyb3IgKGJm ZF9lcnJvcl93cm9uZ19mb3JtYXQpOwogICAgICAgcmV0dXJuIEZBTFNFOwpk aWZmIC0tZ2l0IGEvYmZkL2FyY2hpdmU2NC5jIGIvYmZkL2FyY2hpdmU2NC5j CmluZGV4IDMxOTJmNDAuLmJlMWFjN2MgMTAwNjQ0Ci0tLSBhL2JmZC9hcmNo aXZlNjQuYworKysgYi9iZmQvYXJjaGl2ZTY0LmMKQEAgLTEsNCArMSw0IEBA Ci0vKiBTdXBwb3J0IGZvciA2NC1iaXQgRUxGIGFyY2hpdmVzLgorLyogU3Vw cG9ydCBmb3IgNjQtYml0IGFyY2hpdmVzLgogICAgQ29weXJpZ2h0IChDKSAx OTk2LTIwMTYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiAgICBJ YW4gTGFuY2UgVGF5bG9yLCBDeWdudXMgU3VwcG9ydAogICAgTGlua2VyIHN1 cHBvcnQgYWRkZWQgYnkgTWFyayBNaXRjaGVsbCwgQ29kZVNvdXJjZXJ5LCBM TEMuCkBAIC0yMSw3ICsyMSw4IEBACiAgICBGb3VuZGF0aW9uLCBJbmMuLCA1 MSBGcmFua2xpbiBTdHJlZXQgLSBGaWZ0aCBGbG9vciwgQm9zdG9uLAogICAg TUEgMDIxMTAtMTMwMSwgVVNBLiAgKi8KIAotLyogVGhpcyBmaWxlIHN1cHBv cnRzIHRoZSA2NC1iaXQgKE1JUFMpIEVMRiBhcmNoaXZlcy4gICovCisvKiBU aGlzIGZpbGUgc3VwcG9ydHMgdGhlIDY0LWJpdCBhcmNoaXZlcy4gIFdlIHVz ZSB0aGUgc2FtZSBmb3JtYXQgYXMKKyAgIHRoZSA2NC1iaXQgKE1JUFMpIEVM RiBhcmNoaXZlcy4gICovCiAKICNpbmNsdWRlICJzeXNkZXAuaCIKICNpbmNs dWRlICJiZmQuaCIKQEAgLTMxLDE0ICszMiwxMCBAQAogLyogSXJpeCA2IGRl ZmluZXMgYSA2NGJpdCBhcmNoaXZlIG1hcCBmb3JtYXQsIHNvIHRoYXQgdGhl eSBjYW4KICAgIGhhdmUgYXJjaGl2ZXMgbW9yZSB0aGFuIDQgR0IgaW4gc2l6 ZS4gICovCiAKLWJmZF9ib29sZWFuIGJmZF9lbGY2NF9hcmNoaXZlX3NsdXJw X2FybWFwIChiZmQgKik7Ci1iZmRfYm9vbGVhbiBiZmRfZWxmNjRfYXJjaGl2 ZV93cml0ZV9hcm1hcAotICAoYmZkICosIHVuc2lnbmVkIGludCwgc3RydWN0 IG9ybCAqLCB1bnNpZ25lZCBpbnQsIGludCk7Ci0KIC8qIFJlYWQgYW4gSXJp eCA2IGFybWFwLiAgKi8KIAogYmZkX2Jvb2xlYW4KLWJmZF9lbGY2NF9hcmNo aXZlX3NsdXJwX2FybWFwIChiZmQgKmFiZmQpCitfYmZkX2FyY2hpdmVfNjRf Yml0X3NsdXJwX2FybWFwIChiZmQgKmFiZmQpCiB7CiAgIHN0cnVjdCBhcnRk YXRhICphcmRhdGEgPSBiZmRfYXJkYXRhIChhYmZkKTsKICAgY2hhciBuZXh0 bmFtZVsxN107CkBAIC0xNTAsMTEgKzE0NywxMSBAQCByZWxlYXNlX3N5bWRl ZnM6CiAgICBsaW5rZXIgY3Jhc2hlcy4gICovCiAKIGJmZF9ib29sZWFuCi1i ZmRfZWxmNjRfYXJjaGl2ZV93cml0ZV9hcm1hcCAoYmZkICphcmNoLAotCQkJ ICAgICAgIHVuc2lnbmVkIGludCBlbGVuZ3RoLAotCQkJICAgICAgIHN0cnVj dCBvcmwgKm1hcCwKLQkJCSAgICAgICB1bnNpZ25lZCBpbnQgc3ltYm9sX2Nv dW50LAotCQkJICAgICAgIGludCBzdHJpZHgpCitfYmZkX2FyY2hpdmVfNjRf Yml0X3dyaXRlX2FybWFwIChiZmQgKmFyY2gsCisJCQkJIHVuc2lnbmVkIGlu dCBlbGVuZ3RoLAorCQkJCSBzdHJ1Y3Qgb3JsICptYXAsCisJCQkJIHVuc2ln bmVkIGludCBzeW1ib2xfY291bnQsCisJCQkJIGludCBzdHJpZHgpCiB7CiAg IHVuc2lnbmVkIGludCByYW5saWJzaXplID0gKHN5bWJvbF9jb3VudCAqIDgp ICsgODsKICAgdW5zaWduZWQgaW50IHN0cmluZ3NpemUgPSBzdHJpZHg7CmRp ZmYgLS1naXQgYS9iZmQvY29uZmlnLmluIGIvYmZkL2NvbmZpZy5pbgppbmRl eCBjZmZhZGJiLi4zNDFhZmFlIDEwMDY0NAotLS0gYS9iZmQvY29uZmlnLmlu CisrKyBiL2JmZC9jb25maWcuaW4KQEAgLTMzNyw2ICszMzcsOSBAQAogLyog TmFtZSBvZiBob3N0IHNwZWNpZmljIGhlYWRlciBmaWxlIHRvIGluY2x1ZGUg aW4gdHJhZC1jb3JlLmMuICovCiAjdW5kZWYgVFJBRF9IRUFERVIKIAorLyog RGVmaW5lIGlmIHdlIHNob3VsZCB1c2UgNjQtYml0IGFyY2hpdmVzLiAqLwor I3VuZGVmIFVTRV82NF9CSVRfQVJDSElWRQorCiAvKiBVc2UgYiBtb2RpZmll ciB3aGVuIG9wZW5pbmcgYmluYXJ5IGZpbGVzPyAqLwogI3VuZGVmIFVTRV9C SU5BUllfRk9QRU4KIApkaWZmIC0tZ2l0IGEvYmZkL2NvbmZpZ3VyZSBiL2Jm ZC9jb25maWd1cmUKaW5kZXggZjg2MTdiOS4uNjFhZjEwNSAxMDA3NTUKLS0t IGEvYmZkL2NvbmZpZ3VyZQorKysgYi9iZmQvY29uZmlndXJlCkBAIC03ODks NiArNzg5LDcgQEAgZW5hYmxlX3BsdWdpbnMKIGVuYWJsZV9sYXJnZWZpbGUK IGVuYWJsZV82NF9iaXRfYmZkCiBlbmFibGVfdGFyZ2V0cworZW5hYmxlXzY0 X2JpdF9hcmNoaXZlCiB3aXRoX21tYXAKIGVuYWJsZV9zZWN1cmVwbHQKIGVu YWJsZV9sZWFkaW5nX21pbmd3NjRfdW5kZXJzY29yZXMKQEAgLTE0NDIsNiAr MTQ0Myw3IEBAIE9wdGlvbmFsIEZlYXR1cmVzOgogICAtLWRpc2FibGUtbGFy Z2VmaWxlICAgICBvbWl0IHN1cHBvcnQgZm9yIGxhcmdlIGZpbGVzCiAgIC0t ZW5hYmxlLTY0LWJpdC1iZmQgICAgIDY0LWJpdCBzdXBwb3J0IChvbiBob3N0 cyB3aXRoIG5hcnJvd2VyIHdvcmQgc2l6ZXMpCiAgIC0tZW5hYmxlLXRhcmdl dHMgICAgICAgIGFsdGVybmF0aXZlIHRhcmdldCBjb25maWd1cmF0aW9ucwor ICAtLWVuYWJsZS02NC1iaXQtYXJjaGl2ZSB1c2UgNjQtYml0IGFyY2hpdmVz CiAgIC0tZW5hYmxlLXNlY3VyZXBsdCAgICAgIERlZmF1bHQgdG8gY3JlYXRp bmcgcmVhZC1vbmx5IHBsdCBlbnRyaWVzCiAgIC0tZW5hYmxlLWxlYWRpbmct bWluZ3c2NC11bmRlcnNjb3JlcwogICAgICAgICAgICAgICAgICAgICAgICAg ICBFbmFibGUgbGVhZGluZyB1bmRlcnNjb3JlcyBvbiA2NCBiaXQgbWluZ3cg dGFyZ2V0cwpAQCAtMTE0MjUsNyArMTE0MjcsNyBAQCBlbHNlCiAgIGx0X2Rs dW5rbm93bj0wOyBsdF9kbG5vX3VzY29yZT0xOyBsdF9kbG5lZWRfdXNjb3Jl PTIKICAgbHRfc3RhdHVzPSRsdF9kbHVua25vd24KICAgY2F0ID4gY29uZnRl c3QuJGFjX2V4dCA8PF9MVF9FT0YKLSNsaW5lIDExNDI4ICJjb25maWd1cmUi CisjbGluZSAxMTQzMCAiY29uZmlndXJlIgogI2luY2x1ZGUgImNvbmZkZWZz LmgiCiAKICNpZiBIQVZFX0RMRkNOX0gKQEAgLTExNTMxLDcgKzExNTMzLDcg QEAgZWxzZQogICBsdF9kbHVua25vd249MDsgbHRfZGxub191c2NvcmU9MTsg bHRfZGxuZWVkX3VzY29yZT0yCiAgIGx0X3N0YXR1cz0kbHRfZGx1bmtub3du CiAgIGNhdCA+IGNvbmZ0ZXN0LiRhY19leHQgPDxfTFRfRU9GCi0jbGluZSAx MTUzNCAiY29uZmlndXJlIgorI2xpbmUgMTE1MzYgImNvbmZpZ3VyZSIKICNp bmNsdWRlICJjb25mZGVmcy5oIgogCiAjaWYgSEFWRV9ETEZDTl9ICkBAIC0x MjEyOSw2ICsxMjEzMSwxOSBAQCBpZiB0ZXN0ICIke2VuYWJsZV90YXJnZXRz K3NldH0iID0gc2V0OyB0aGVuIDoKIGVzYWMKIGZpCiAKKyMgU2luY2UgdGhl IHBsdWdpbiB0YXJnZXQgaXMgdXNlZCB0byBjcmVhdGUgYXJjaGl2ZSBpbiBw bHVnaW4tZW5hYmxlZAorIyBhciwgd2UgbmVlZCBhIHdheSB0byBlbmFibGUg NjQtYml0IGFyY2hpdmVzIGluIHRoZSBwbHVnaW4gdGFyZ2V0LgorIyBDaGVj ayB3aGV0aGVyIC0tZW5hYmxlLTY0X2JpdF9hcmNoaXZlIHdhcyBnaXZlbi4K K2lmIHRlc3QgIiR7ZW5hYmxlXzY0X2JpdF9hcmNoaXZlK3NldH0iID0gc2V0 OyB0aGVuIDoKKyAgZW5hYmxldmFsPSRlbmFibGVfNjRfYml0X2FyY2hpdmU7 IGNhc2UgIiR7ZW5hYmxldmFsfSIgaW4KKyAgeWVzKSAgd2FudF82NF9iaXRf YXJjaGl2ZT10cnVlICA7OworICBubykgICB3YW50XzY0X2JpdF9hcmNoaXZl PWZhbHNlIDs7CisgICopICAgIGFzX2ZuX2Vycm9yICJiYWQgdmFsdWUgJHtl bmFibGV2YWx9IGZvciA2NC1iaXQtYXJjaGl2ZSBvcHRpb24iICIkTElORU5P IiA1IDs7Citlc2FjCitlbHNlCisgIHdhbnRfNjRfYml0X2FyY2hpdmU9dW5z ZXQKK2ZpCisKIAogIyBDaGVjayB3aGV0aGVyIC0td2l0aC1tbWFwIHdhcyBn aXZlbi4KIGlmIHRlc3QgIiR7d2l0aF9tbWFwK3NldH0iID0gc2V0OyB0aGVu IDoKQEAgLTE0NTk2LDYgKzE0NjExLDMyIEBAIGVsc2UJIyBhbGxfdGFyZ2V0 cyBpcyB0cnVlCiAgICAgc2VsYXJjaHM9YGVjaG8gJHNlbGFyY2hzIHwgc2Vk IC1lICdzL14vXCYvJyAtZSAncy8gXCguXCkvLFwmXDEvZydgCiBmaQkjIGFs bF90YXJnZXRzIGlzIHRydWUKIAoraWYgdGVzdCAieCR3YW50XzY0X2JpdF9h cmNoaXZlIiA9IHh1bnNldDsgdGhlbgorICAjIDY0LWJpdCBNSVBTIGFuZCBz MzkwIEVMRiB0YXJnZXRzIHVzZSA2NC1iaXQgYXJjaGl2ZXMuCisgIGNhc2Ug IiR7YmZkX2JhY2tlbmRzfSIgaW4KKyAgICAqZWxmNjQtbWlwcyogfCAqZWxm NjQtczM5MCopCisgICAgICB3YW50XzY0X2JpdF9hcmNoaXZlPXRydWUKKyAg ICAgIDs7CisgIGVzYWMKKworICAjIFNpbmNlIGFsbCBMaW51eCBsaW5rZXJz IHN1cHBvcnQgYm90aCAzMi1iaXQgYW5kIDY0LWJpdCBhcmNoaXZlcywKKyAg IyBpdCBpcyBzYWZlIHRvIGVuYWJsZSA2NC1iaXQgYXJjaGl2ZXMgZm9yIExp bnV4IHRhcmdldHMgd2l0aCA2NC1iaXQKKyAgIyBiZmRfdm1hLgorICBjYXNl ICIke3RhcmdldH0ke3dhbnQ2NH0iIGluCisgICAgKmxpbnV4KnRydWUpCisg ICAgICB3YW50XzY0X2JpdF9hcmNoaXZlPXRydWUKKyAgICAgIDs7CisgIGVz YWMKK2ZpCisKKyMgNjQtYml0IGFyY2hpdmVzIG5lZWQgYSA2NC1iaXQgYmZk X3ZtYS4KK2lmIHRlc3QgIngkd2FudF82NF9iaXRfYXJjaGl2ZSIgPSB4dHJ1 ZTsgdGhlbgorICB3YW50NjQ9dHJ1ZQorCiskYXNfZWNobyAiI2RlZmluZSBV U0VfNjRfQklUX0FSQ0hJVkUgMSIgPj5jb25mZGVmcy5oCisKK2ZpCisKIGNh c2UgJHtob3N0NjR9LSR7dGFyZ2V0NjR9LSR7d2FudDY0fSBpbgogICAqdHJ1 ZSopCiAgICAgd29yZHNpemU9NjQKZGlmZiAtLWdpdCBhL2JmZC9jb25maWd1 cmUuYWMgYi9iZmQvY29uZmlndXJlLmFjCmluZGV4IGY1N2Q0ZDcuLmQwYTA4 ODggMTAwNjQ0Ci0tLSBhL2JmZC9jb25maWd1cmUuYWMKKysrIGIvYmZkL2Nv bmZpZ3VyZS5hYwpAQCAtNjgsNiArNjgsMTcgQEAgQUNfQVJHX0VOQUJMRSh0 YXJnZXRzLAogICAqKSAgICAgICAgZW5hYmxlX3RhcmdldHM9JGVuYWJsZXZh bCA7OwogZXNhY10pZG5sCiAKKyMgU2luY2UgdGhlIHBsdWdpbiB0YXJnZXQg aXMgdXNlZCB0byBjcmVhdGUgYXJjaGl2ZSBpbiBwbHVnaW4tZW5hYmxlZAor IyBhciwgd2UgbmVlZCBhIHdheSB0byBlbmFibGUgNjQtYml0IGFyY2hpdmVz IGluIHRoZSBwbHVnaW4gdGFyZ2V0LgorQUNfQVJHX0VOQUJMRSg2NF9iaXRf YXJjaGl2ZSwKKwkgICAgICBBU19IRUxQX1NUUklORyhbLS1lbmFibGUtNjQt Yml0LWFyY2hpdmVdLAorCSAgICAgIFt1c2UgNjQtYml0IGFyY2hpdmVzXSks CitbY2FzZSAiJHtlbmFibGV2YWx9IiBpbgorICB5ZXMpICB3YW50XzY0X2Jp dF9hcmNoaXZlPXRydWUgIDs7CisgIG5vKSAgIHdhbnRfNjRfYml0X2FyY2hp dmU9ZmFsc2UgOzsKKyAgKikgICAgQUNfTVNHX0VSUk9SKGJhZCB2YWx1ZSAk e2VuYWJsZXZhbH0gZm9yIDY0LWJpdC1hcmNoaXZlIG9wdGlvbikgOzsKK2Vz YWNdLFt3YW50XzY0X2JpdF9hcmNoaXZlPXVuc2V0XSlkbmwKKwogQUNfQVJH X1dJVEgobW1hcCwKIFsgIC0td2l0aC1tbWFwICAgICAgICAgICAgIHRyeSB1 c2luZyBtbWFwIGZvciBCRkQgaW5wdXQgZmlsZXMgaWYgYXZhaWxhYmxlXSwK IFtjYXNlICIke3dpdGh2YWx9IiBpbgpAQCAtNzc1LDYgKzc4NiwzMSBAQCBl bHNlCSMgYWxsX3RhcmdldHMgaXMgdHJ1ZQogICAgIHNlbGFyY2hzPWBlY2hv ICRzZWxhcmNocyB8IHNlZCAtZSAncy9eL1wmLycgLWUgJ3MvIFwoLlwpLyxc JlwxL2cnYAogZmkJIyBhbGxfdGFyZ2V0cyBpcyB0cnVlCiAKK2lmIHRlc3Qg Ingkd2FudF82NF9iaXRfYXJjaGl2ZSIgPSB4dW5zZXQ7IHRoZW4KKyAgIyA2 NC1iaXQgTUlQUyBhbmQgczM5MCBFTEYgdGFyZ2V0cyB1c2UgNjQtYml0IGFy Y2hpdmVzLgorICBjYXNlICIke2JmZF9iYWNrZW5kc30iIGluCisgICAgKmVs ZjY0LW1pcHMqIHwgKmVsZjY0LXMzOTAqKQorICAgICAgd2FudF82NF9iaXRf YXJjaGl2ZT10cnVlCisgICAgICA7OworICBlc2FjCisKKyAgIyBTaW5jZSBh bGwgTGludXggbGlua2VycyBzdXBwb3J0IGJvdGggMzItYml0IGFuZCA2NC1i aXQgYXJjaGl2ZXMsCisgICMgaXQgaXMgc2FmZSB0byBlbmFibGUgNjQtYml0 IGFyY2hpdmVzIGZvciBMaW51eCB0YXJnZXRzIHdpdGggNjQtYml0CisgICMg YmZkX3ZtYS4KKyAgY2FzZSAiJHt0YXJnZXR9JHt3YW50NjR9IiBpbgorICAg ICpsaW51eCp0cnVlKQorICAgICAgd2FudF82NF9iaXRfYXJjaGl2ZT10cnVl CisgICAgICA7OworICBlc2FjCitmaQorCisjIDY0LWJpdCBhcmNoaXZlcyBu ZWVkIGEgNjQtYml0IGJmZF92bWEuCitpZiB0ZXN0ICJ4JHdhbnRfNjRfYml0 X2FyY2hpdmUiID0geHRydWU7IHRoZW4KKyAgd2FudDY0PXRydWUKKyAgQUNf REVGSU5FKFVTRV82NF9CSVRfQVJDSElWRSwgMSwKKyAgICBbRGVmaW5lIGlm IHdlIHNob3VsZCB1c2UgNjQtYml0IGFyY2hpdmVzLl0pCitmaQorCiBjYXNl ICR7aG9zdDY0fS0ke3RhcmdldDY0fS0ke3dhbnQ2NH0gaW4KICAgKnRydWUq KQogICAgIHdvcmRzaXplPTY0CmRpZmYgLS1naXQgYS9iZmQvZWxmNjQtbWlw cy5jIGIvYmZkL2VsZjY0LW1pcHMuYwppbmRleCA2YmVkZWJjLi4zNDE0NGYw IDEwMDY0NAotLS0gYS9iZmQvZWxmNjQtbWlwcy5jCisrKyBiL2JmZC9lbGY2 NC1taXBzLmMKQEAgLTQ0NzgsMjkgKzQ0NzgsNiBAQCBjb25zdCBzdHJ1Y3Qg ZWxmX3NpemVfaW5mbyBtaXBzX2VsZjY0X3NpemVfaW5mbyA9CiAjZGVmaW5l IGJmZF9lbGY2NF9iZmRfcmVsYXhfc2VjdGlvbiAgICAgX2JmZF9taXBzX3Jl bGF4X3NlY3Rpb24KICNkZWZpbmUgYmZkX2VsZjY0X21rb2JqZWN0CQlfYmZk X21pcHNfZWxmX21rb2JqZWN0CiAKLS8qIE1JUFMgRUxGNjQgYXJjaGl2ZSBm dW5jdGlvbnMuICAqLwotI2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2ZV9mdW5j dGlvbnMKLWV4dGVybiBiZmRfYm9vbGVhbiBiZmRfZWxmNjRfYXJjaGl2ZV9z bHVycF9hcm1hcAotICAoYmZkICopOwotZXh0ZXJuIGJmZF9ib29sZWFuIGJm ZF9lbGY2NF9hcmNoaXZlX3dyaXRlX2FybWFwCi0gIChiZmQgKiwgdW5zaWdu ZWQgaW50LCBzdHJ1Y3Qgb3JsICosIHVuc2lnbmVkIGludCwgaW50KTsKLSNk ZWZpbmUgYmZkX2VsZjY0X2FyY2hpdmVfc2x1cnBfZXh0ZW5kZWRfbmFtZV90 YWJsZSBcCi0JCQlfYmZkX2FyY2hpdmVfY29mZl9zbHVycF9leHRlbmRlZF9u YW1lX3RhYmxlCi0jZGVmaW5lIGJmZF9lbGY2NF9hcmNoaXZlX2NvbnN0cnVj dF9leHRlbmRlZF9uYW1lX3RhYmxlIFwKLQkJCV9iZmRfYXJjaGl2ZV9jb2Zm X2NvbnN0cnVjdF9leHRlbmRlZF9uYW1lX3RhYmxlCi0jZGVmaW5lIGJmZF9l bGY2NF9hcmNoaXZlX3RydW5jYXRlX2FybmFtZSBcCi0JCQlfYmZkX2FyY2hp dmVfY29mZl90cnVuY2F0ZV9hcm5hbWUKLSNkZWZpbmUgYmZkX2VsZjY0X2Fy Y2hpdmVfcmVhZF9hcl9oZHIJX2JmZF9hcmNoaXZlX2NvZmZfcmVhZF9hcl9o ZHIKLSNkZWZpbmUgYmZkX2VsZjY0X2FyY2hpdmVfd3JpdGVfYXJfaGRyCV9i ZmRfYXJjaGl2ZV9jb2ZmX3dyaXRlX2FyX2hkcgotI2RlZmluZSBiZmRfZWxm NjRfYXJjaGl2ZV9vcGVucl9uZXh0X2FyY2hpdmVkX2ZpbGUgXAotCQkJX2Jm ZF9hcmNoaXZlX2NvZmZfb3BlbnJfbmV4dF9hcmNoaXZlZF9maWxlCi0jZGVm aW5lIGJmZF9lbGY2NF9hcmNoaXZlX2dldF9lbHRfYXRfaW5kZXggXAotCQkJ X2JmZF9hcmNoaXZlX2NvZmZfZ2V0X2VsdF9hdF9pbmRleAotI2RlZmluZSBi ZmRfZWxmNjRfYXJjaGl2ZV9nZW5lcmljX3N0YXRfYXJjaF9lbHQgXAotCQkJ X2JmZF9hcmNoaXZlX2NvZmZfZ2VuZXJpY19zdGF0X2FyY2hfZWx0Ci0jZGVm aW5lIGJmZF9lbGY2NF9hcmNoaXZlX3VwZGF0ZV9hcm1hcF90aW1lc3RhbXAg XAotCQkJX2JmZF9hcmNoaXZlX2NvZmZfdXBkYXRlX2FybWFwX3RpbWVzdGFt cAotCiAvKiBUaGUgU0dJIHN0eWxlIChuKTY0IE5ld0FCSS4gICovCiAjZGVm aW5lIFRBUkdFVF9MSVRUTEVfU1lNCQltaXBzX2VsZjY0X2xlX3ZlYwogI2Rl ZmluZSBUQVJHRVRfTElUVExFX05BTUUJCSJlbGY2NC1saXR0bGVtaXBzIgpk aWZmIC0tZ2l0IGEvYmZkL2VsZjY0LXMzOTAuYyBiL2JmZC9lbGY2NC1zMzkw LmMKaW5kZXggYjA4NTE2OS4uMzk1MDkzOSAxMDA2NDQKLS0tIGEvYmZkL2Vs ZjY0LXMzOTAuYworKysgYi9iZmQvZWxmNjQtczM5MC5jCkBAIC0zOTU1LDE5 ICszOTU1LDQgQEAgY29uc3Qgc3RydWN0IGVsZl9zaXplX2luZm8gczM5MF9l bGY2NF9zaXplX2luZm8gPQogI2RlZmluZSBiZmRfZWxmNjRfbWtvYmplY3QJ CWVsZl9zMzkwX21rb2JqZWN0CiAjZGVmaW5lIGVsZl9iYWNrZW5kX29iamVj dF9wCQllbGZfczM5MF9vYmplY3RfcAogCi0vKiBFbmFibGUgRUxGNjQgYXJj aGl2ZSBmdW5jdGlvbnMuICAqLwotI2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2 ZV9mdW5jdGlvbnMKLWV4dGVybiBiZmRfYm9vbGVhbiBiZmRfZWxmNjRfYXJj aGl2ZV9zbHVycF9hcm1hcCAoYmZkICopOwotZXh0ZXJuIGJmZF9ib29sZWFu IGJmZF9lbGY2NF9hcmNoaXZlX3dyaXRlX2FybWFwIChiZmQgKiwgdW5zaWdu ZWQgaW50LCBzdHJ1Y3Qgb3JsICosIHVuc2lnbmVkIGludCwgaW50KTsKLQot I2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2ZV9zbHVycF9leHRlbmRlZF9uYW1l X3RhYmxlIAlfYmZkX2FyY2hpdmVfY29mZl9zbHVycF9leHRlbmRlZF9uYW1l X3RhYmxlCi0jZGVmaW5lIGJmZF9lbGY2NF9hcmNoaXZlX2NvbnN0cnVjdF9l eHRlbmRlZF9uYW1lX3RhYmxlIF9iZmRfYXJjaGl2ZV9jb2ZmX2NvbnN0cnVj dF9leHRlbmRlZF9uYW1lX3RhYmxlCi0jZGVmaW5lIGJmZF9lbGY2NF9hcmNo aXZlX3RydW5jYXRlX2FybmFtZSAJCV9iZmRfYXJjaGl2ZV9jb2ZmX3RydW5j YXRlX2FybmFtZQotI2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2ZV9yZWFkX2Fy X2hkcgkJCV9iZmRfYXJjaGl2ZV9jb2ZmX3JlYWRfYXJfaGRyCi0jZGVmaW5l IGJmZF9lbGY2NF9hcmNoaXZlX3dyaXRlX2FyX2hkcgkJCV9iZmRfYXJjaGl2 ZV9jb2ZmX3dyaXRlX2FyX2hkcgotI2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2 ZV9vcGVucl9uZXh0X2FyY2hpdmVkX2ZpbGUgCV9iZmRfYXJjaGl2ZV9jb2Zm X29wZW5yX25leHRfYXJjaGl2ZWRfZmlsZQotI2RlZmluZSBiZmRfZWxmNjRf YXJjaGl2ZV9nZXRfZWx0X2F0X2luZGV4IAkJX2JmZF9hcmNoaXZlX2NvZmZf Z2V0X2VsdF9hdF9pbmRleAotI2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2ZV9n ZW5lcmljX3N0YXRfYXJjaF9lbHQgCV9iZmRfYXJjaGl2ZV9jb2ZmX2dlbmVy aWNfc3RhdF9hcmNoX2VsdAotI2RlZmluZSBiZmRfZWxmNjRfYXJjaGl2ZV91 cGRhdGVfYXJtYXBfdGltZXN0YW1wIAlfYmZkX2FyY2hpdmVfY29mZl91cGRh dGVfYXJtYXBfdGltZXN0YW1wCi0KICNpbmNsdWRlICJlbGY2NC10YXJnZXQu aCIKZGlmZiAtLWdpdCBhL2JmZC9lbGZ4eC10YXJnZXQuaCBiL2JmZC9lbGZ4 eC10YXJnZXQuaAppbmRleCAwZGM0Zjc1Li45N2FhNWU2IDEwMDY0NAotLS0g YS9iZmQvZWxmeHgtdGFyZ2V0LmgKKysrIGIvYmZkL2VsZnh4LXRhcmdldC5o CkBAIC05MjYsNiArOTI2LDggQEAgY29uc3QgYmZkX3RhcmdldCBUQVJHRVRf QklHX1NZTSA9CiAgIEJGRF9KVU1QX1RBQkxFX0NPUkUgKGJmZF9lbGZOTiks CiAjaWZkZWYgYmZkX2VsZk5OX2FyY2hpdmVfZnVuY3Rpb25zCiAgIEJGRF9K VU1QX1RBQkxFX0FSQ0hJVkUgKGJmZF9lbGZOTl9hcmNoaXZlKSwKKyNlbGlm IGRlZmluZWQgVVNFXzY0X0JJVF9BUkNISVZFCisgIEJGRF9KVU1QX1RBQkxF X0FSQ0hJVkUgKF9iZmRfYXJjaGl2ZV82NF9iaXQpLAogI2Vsc2UKICAgQkZE X0pVTVBfVEFCTEVfQVJDSElWRSAoX2JmZF9hcmNoaXZlX2NvZmYpLAogI2Vu ZGlmCkBAIC0xMDI1LDYgKzEwMjcsOCBAQCBjb25zdCBiZmRfdGFyZ2V0IFRB UkdFVF9MSVRUTEVfU1lNID0KICAgQkZEX0pVTVBfVEFCTEVfQ09SRSAoYmZk X2VsZk5OKSwKICNpZmRlZiBiZmRfZWxmTk5fYXJjaGl2ZV9mdW5jdGlvbnMK ICAgQkZEX0pVTVBfVEFCTEVfQVJDSElWRSAoYmZkX2VsZk5OX2FyY2hpdmUp LAorI2VsaWYgZGVmaW5lZCBVU0VfNjRfQklUX0FSQ0hJVkUKKyAgQkZEX0pV TVBfVEFCTEVfQVJDSElWRSAoX2JmZF9hcmNoaXZlXzY0X2JpdCksCiAjZWxz ZQogICBCRkRfSlVNUF9UQUJMRV9BUkNISVZFIChfYmZkX2FyY2hpdmVfY29m ZiksCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2JmZC9saWJiZmQtaW4uaCBiL2Jm ZC9saWJiZmQtaW4uaAppbmRleCA1ZjI4ODYzLi44NjQ0ZDhkIDEwMDY0NAot LS0gYS9iZmQvbGliYmZkLWluLmgKKysrIGIvYmZkL2xpYmJmZC1pbi5oCkBA IC0xNDksNiArMTQ5LDI5IEBAIGJmZF9ib29sZWFuIGJmZF9zbHVycF9ic2Rf YXJtYXBfZjIKICAgKGJmZCAqYWJmZCk7CiAjZGVmaW5lIGJmZF9zbHVycF9i c2RfYXJtYXAgYmZkX3NsdXJwX2FybWFwCiAjZGVmaW5lIGJmZF9zbHVycF9j b2ZmX2FybWFwIGJmZF9zbHVycF9hcm1hcAorYmZkX2Jvb2xlYW4gX2JmZF9h cmNoaXZlXzY0X2JpdF9zbHVycF9hcm1hcAorICAoYmZkICopOworYmZkX2Jv b2xlYW4gX2JmZF9hcmNoaXZlXzY0X2JpdF93cml0ZV9hcm1hcAorICAoYmZk ICosIHVuc2lnbmVkIGludCwgc3RydWN0IG9ybCAqLCB1bnNpZ25lZCBpbnQs IGludCk7CisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82NF9iaXRfc2x1cnBfZXh0 ZW5kZWRfbmFtZV90YWJsZSBcCisgIF9iZmRfc2x1cnBfZXh0ZW5kZWRfbmFt ZV90YWJsZQorI2RlZmluZSBfYmZkX2FyY2hpdmVfNjRfYml0X2NvbnN0cnVj dF9leHRlbmRlZF9uYW1lX3RhYmxlIFwKKyAgX2JmZF9hcmNoaXZlX2NvZmZf Y29uc3RydWN0X2V4dGVuZGVkX25hbWVfdGFibGUKKyNkZWZpbmUgX2JmZF9h cmNoaXZlXzY0X2JpdF90cnVuY2F0ZV9hcm5hbWUgXAorICBiZmRfZG9udF90 cnVuY2F0ZV9hcm5hbWUKKyNkZWZpbmUgX2JmZF9hcmNoaXZlXzY0X2JpdF9y ZWFkX2FyX2hkciBcCisgIF9iZmRfZ2VuZXJpY19yZWFkX2FyX2hkcgorI2Rl ZmluZSBfYmZkX2FyY2hpdmVfNjRfYml0X3dyaXRlX2FyX2hkciBcCisgIF9i ZmRfZ2VuZXJpY193cml0ZV9hcl9oZHIKKyNkZWZpbmUgX2JmZF9hcmNoaXZl XzY0X2JpdF9vcGVucl9uZXh0X2FyY2hpdmVkX2ZpbGUgXAorICBiZmRfZ2Vu ZXJpY19vcGVucl9uZXh0X2FyY2hpdmVkX2ZpbGUKKyNkZWZpbmUgX2JmZF9h cmNoaXZlXzY0X2JpdF9nZXRfZWx0X2F0X2luZGV4IFwKKyAgX2JmZF9nZW5l cmljX2dldF9lbHRfYXRfaW5kZXgKKyNkZWZpbmUgX2JmZF9hcmNoaXZlXzY0 X2JpdF9nZW5lcmljX3N0YXRfYXJjaF9lbHQgXAorICBiZmRfZ2VuZXJpY19z dGF0X2FyY2hfZWx0CisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82NF9iaXRfdXBk YXRlX2FybWFwX3RpbWVzdGFtcCBcCisgIGJmZF90cnVlCisKIGJmZF9ib29s ZWFuIF9iZmRfc2x1cnBfZXh0ZW5kZWRfbmFtZV90YWJsZQogICAoYmZkICph YmZkKTsKIGV4dGVybiBiZmRfYm9vbGVhbiBfYmZkX2NvbnN0cnVjdF9leHRl bmRlZF9uYW1lX3RhYmxlCmRpZmYgLS1naXQgYS9iZmQvbGliYmZkLmggYi9i ZmQvbGliYmZkLmgKaW5kZXggMzM0OTBjMC4uYmYxN2Y0MyAxMDA2NDQKLS0t IGEvYmZkL2xpYmJmZC5oCisrKyBiL2JmZC9saWJiZmQuaApAQCAtMTU0LDYg KzE1NCwyOSBAQCBiZmRfYm9vbGVhbiBiZmRfc2x1cnBfYnNkX2FybWFwX2Yy CiAgIChiZmQgKmFiZmQpOwogI2RlZmluZSBiZmRfc2x1cnBfYnNkX2FybWFw IGJmZF9zbHVycF9hcm1hcAogI2RlZmluZSBiZmRfc2x1cnBfY29mZl9hcm1h cCBiZmRfc2x1cnBfYXJtYXAKK2JmZF9ib29sZWFuIF9iZmRfYXJjaGl2ZV82 NF9iaXRfc2x1cnBfYXJtYXAKKyAgKGJmZCAqKTsKK2JmZF9ib29sZWFuIF9i ZmRfYXJjaGl2ZV82NF9iaXRfd3JpdGVfYXJtYXAKKyAgKGJmZCAqLCB1bnNp Z25lZCBpbnQsIHN0cnVjdCBvcmwgKiwgdW5zaWduZWQgaW50LCBpbnQpOwor I2RlZmluZSBfYmZkX2FyY2hpdmVfNjRfYml0X3NsdXJwX2V4dGVuZGVkX25h bWVfdGFibGUgXAorICBfYmZkX3NsdXJwX2V4dGVuZGVkX25hbWVfdGFibGUK KyNkZWZpbmUgX2JmZF9hcmNoaXZlXzY0X2JpdF9jb25zdHJ1Y3RfZXh0ZW5k ZWRfbmFtZV90YWJsZSBcCisgIF9iZmRfYXJjaGl2ZV9jb2ZmX2NvbnN0cnVj dF9leHRlbmRlZF9uYW1lX3RhYmxlCisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82 NF9iaXRfdHJ1bmNhdGVfYXJuYW1lIFwKKyAgYmZkX2RvbnRfdHJ1bmNhdGVf YXJuYW1lCisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82NF9iaXRfcmVhZF9hcl9o ZHIgXAorICBfYmZkX2dlbmVyaWNfcmVhZF9hcl9oZHIKKyNkZWZpbmUgX2Jm ZF9hcmNoaXZlXzY0X2JpdF93cml0ZV9hcl9oZHIgXAorICBfYmZkX2dlbmVy aWNfd3JpdGVfYXJfaGRyCisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82NF9iaXRf b3BlbnJfbmV4dF9hcmNoaXZlZF9maWxlIFwKKyAgYmZkX2dlbmVyaWNfb3Bl bnJfbmV4dF9hcmNoaXZlZF9maWxlCisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82 NF9iaXRfZ2V0X2VsdF9hdF9pbmRleCBcCisgIF9iZmRfZ2VuZXJpY19nZXRf ZWx0X2F0X2luZGV4CisjZGVmaW5lIF9iZmRfYXJjaGl2ZV82NF9iaXRfZ2Vu ZXJpY19zdGF0X2FyY2hfZWx0IFwKKyAgYmZkX2dlbmVyaWNfc3RhdF9hcmNo X2VsdAorI2RlZmluZSBfYmZkX2FyY2hpdmVfNjRfYml0X3VwZGF0ZV9hcm1h cF90aW1lc3RhbXAgXAorICBiZmRfdHJ1ZQorCiBiZmRfYm9vbGVhbiBfYmZk X3NsdXJwX2V4dGVuZGVkX25hbWVfdGFibGUKICAgKGJmZCAqYWJmZCk7CiBl eHRlcm4gYmZkX2Jvb2xlYW4gX2JmZF9jb25zdHJ1Y3RfZXh0ZW5kZWRfbmFt ZV90YWJsZQpkaWZmIC0tZ2l0IGEvYmZkL3BsdWdpbi5jIGIvYmZkL3BsdWdp bi5jCmluZGV4IGZkN2JhYzAuLmM4MWEyNjcgMTAwNjQ0Ci0tLSBhL2JmZC9w bHVnaW4uYworKysgYi9iZmQvcGx1Z2luLmMKQEAgLTU5Nyw3ICs1OTcsMTEg QEAgY29uc3QgYmZkX3RhcmdldCBwbHVnaW5fdmVjID0KICAgQkZEX0pVTVBf VEFCTEVfR0VORVJJQyAoYmZkX3BsdWdpbiksCiAgIEJGRF9KVU1QX1RBQkxF X0NPUFkgKGJmZF9wbHVnaW4pLAogICBCRkRfSlVNUF9UQUJMRV9DT1JFIChi ZmRfcGx1Z2luKSwKKyNpZmRlZiBVU0VfNjRfQklUX0FSQ0hJVkUKKyAgQkZE X0pVTVBfVEFCTEVfQVJDSElWRSAoX2JmZF9hcmNoaXZlXzY0X2JpdCksCisj ZWxzZQogICBCRkRfSlVNUF9UQUJMRV9BUkNISVZFIChfYmZkX2FyY2hpdmVf Y29mZiksCisjZW5kaWYKICAgQkZEX0pVTVBfVEFCTEVfU1lNQk9MUyAoYmZk X3BsdWdpbiksCiAgIEJGRF9KVU1QX1RBQkxFX1JFTE9DUyAoX2JmZF9ub3Jl bG9jcyksCiAgIEJGRF9KVU1QX1RBQkxFX1dSSVRFIChiZmRfcGx1Z2luKSwK ZGlmZiAtLWdpdCBhL2JpbnV0aWxzL05FV1MgYi9iaW51dGlscy9ORVdTCmlu ZGV4IDcxMjYwNGIuLmQxMTljMWUgMTAwNjQ0Ci0tLSBhL2JpbnV0aWxzL05F V1MKKysrIGIvYmludXRpbHMvTkVXUwpAQCAtMSw1ICsxLDggQEAKIC0qLSB0 ZXh0IC0qLQogCisqIEFkZCBhIGNvbmZpZ3VyZSBvcHRpb24sIC0tZW5hYmxl LTY0LWJpdC1hcmNoaXZlLCB0byBlbmFibGUgNjQtYml0CisgIGFyY2hpdmVz IGluIGFyIGFuZCByYW5saWIuCisKICogQWRkIC0tZWxmLXN0dC1jb21tb249 IG9wdGlvbiB0byBvYmpjb3B5IGZvciBFTEYgdGFyZ2V0cyB0byBjb250cm9s CiAgIHdoZXRoZXIgdG8gY29udmVydCBjb21tb24gc3ltYm9scyB0byB0aGUg U1RUX0NPTU1PTiB0eXBlLgogCi0tIAoyLjUuNQoK --001a114592ac9b1afb0533998743--