From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) by sourceware.org (Postfix) with ESMTPS id 7A1D03836C30; Thu, 21 Jan 2021 15:02:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 7A1D03836C30 Received: by mail-lf1-x12c.google.com with SMTP id u25so2951912lfc.2; Thu, 21 Jan 2021 07:02:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=WMDRYm9Ngg04h0iMDZXZh8lIfnHmfLcqUDYASN2L3EE=; b=Nxrs3DQclQNkfVjQTlnjexrBOzI3oFAfymCKCNLkF++nQ8HGp7AOJFtrzilQ1thYzm QGLmMLe0fVo3+edQdkI6DNW98IJNPu9e67js9XBXA+YmcFDz+0SdVXf8skBnPGvCBTxt 0d4CTc2pdnngpVayfP+Lg70WPyFUDktRFh5u22+gbUh44mEPNcpkgCtB5xbl4MTxE+SL NAqYzRTX1dNfLgh+uAXynIR4sxoV3cuXyeBoIr8E2C0BaDlBGm9e6gOOW0JcKEOtz5bG w8PlJFCPowl364IQtjrxsaae2hAvp40CxmXh6mjXEIBN8v6CQ3jDPODxaStzR9RJZi0y HZ1Q== X-Gm-Message-State: AOAM533M327tHPuCSMme5vDiU8l8uJBveY8Mfr+Vivdm3wYcVhag1HXz VRGknIK1fkRlG+f98RDKoUjik5sNjk/Y4oD/1Gq6TqTh X-Google-Smtp-Source: ABdhPJw2PdXx9zNKqOuEcSKs2dF+dXLbj0lfCJ16rBBsdgHjcyCHO6kQP96EtXMh/2QRcW/FuolfSpIk+Uu3xnPzMgg= X-Received: by 2002:a05:6512:64:: with SMTP id i4mr6412185lfo.95.1611241359583; Thu, 21 Jan 2021 07:02:39 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: "H.J. Lu" Date: Thu, 21 Jan 2021 07:02:03 -0800 Message-ID: Subject: Re: RFC: Add GNU_PROPERTY_UINT32_AND_XXX/GNU_PROPERTY_UINT32_OR_XXX To: GNU gABI gnu-gabi , GCC Development , Binutils , GNU C Library , llvm-dev@lists.llvm.org Content-Type: multipart/mixed; boundary="000000000000e2c12505b96a5c96" X-Spam-Status: No, score=-1021.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gnu-gabi@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gnu-gabi mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Jan 2021 15:02:44 -0000 --000000000000e2c12505b96a5c96 Content-Type: text/plain; charset="UTF-8" On Wed, Jan 13, 2021 at 9:06 AM H.J. Lu wrote: > > 1. GNU_PROPERTY_UINT32_AND_LO..GNU_PROPERTY_UINT32_AND_HI > > #define GNU_PROPERTY_UINT32_AND_LO 0xb0000000 > #define GNU_PROPERTY_UINT32_AND_HI 0xb0007fff > > A bit in the output pr_data field is set only if it is set in all > relocatable input pr_data fields. If all bits in the the output > pr_data field are zero, this property should be removed from output. > > If the bit is 1, all input relocatables have the feature. If the > bit is 0 or the property is missing, the info is unknown. > > 2. GNU_PROPERTY_UINT32_OR_LO..GNU_PROPERTY_UINT32_OR_HI > > #define GNU_PROPERTY_UINT32_OR_LO 0xb0008000 > #define GNU_PROPERTY_UINT32_OR_HI 0xb000ffff > > A bit in the output pr_data field is set if it is set in any > relocatable input pr_data fields. If all bits in the the output > pr_data field are zero, this property should be removed from output. > > If the bit is 1, some input relocatables have the feature. If the > bit is 0 or the property is missing, the info is unknown. > > The PDF is at > > https://gitlab.com/x86-psABIs/Linux-ABI/-/wikis/uploads/0690db0a3b7e5d8a44e0271a4be54aa7/linux-gABI-and-or-2021-01-13.pdf > > -- > H.J. Here is the binutils patch to implement it. -- H.J. --000000000000e2c12505b96a5c96 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-elf-Add-GNU_PROPERTY_UINT32_AND_XXX-GNU_PROPERTY_UIN.patch" Content-Disposition: attachment; filename="0001-elf-Add-GNU_PROPERTY_UINT32_AND_XXX-GNU_PROPERTY_UIN.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kk6zgrmm0 RnJvbSAzNDdiN2M0N2FjNmMyMTQ5YjdlNmJmYjMxOGJkODVhMDMwY2UyMDk2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhqbC50b29sc0BnbWFpbC5jb20+CkRhdGU6 IFNhdCwgMTYgSmFuIDIwMjEgMDU6MzU6NDYgLTA4MDAKU3ViamVjdDogW1BBVENIXSBlbGY6IEFk ZAogR05VX1BST1BFUlRZX1VJTlQzMl9BTkRfWFhYL0dOVV9QUk9QRVJUWV9VSU5UMzJfT1JfWFhY CgpJbXBsZW1lbnQgR05VX1BST1BFUlRZX1VJTlQzMl9BTkRfWFhYL0dOVV9QUk9QRVJUWV9VSU5U MzJfT1JfWFhYOgoKaHR0cHM6Ly9zb3VyY2V3YXJlLm9yZy9waXBlcm1haWwvZ251LWdhYmkvMjAy MXExLzAwMDQ2Ny5odG1sCgoxLiBHTlVfUFJPUEVSVFlfVUlOVDMyX0FORF9MTy4uR05VX1BST1BF UlRZX1VJTlQzMl9BTkRfSEkKCiAjZGVmaW5lIEdOVV9QUk9QRVJUWV9VSU5UMzJfQU5EX0xPIDB4 YjAwMDAwMDAKICNkZWZpbmUgR05VX1BST1BFUlRZX1VJTlQzMl9BTkRfSEkgMHhiMDAwN2ZmZgoK QSBiaXQgaW4gdGhlIG91dHB1dCBwcl9kYXRhIGZpZWxkIGlzIHNldCBvbmx5IGlmIGl0IGlzIHNl dCBpbiBhbGwKcmVsb2NhdGFibGUgaW5wdXQgcHJfZGF0YSBmaWVsZHMuICBJZiBhbGwgYml0cyBp biB0aGUgdGhlIG91dHB1dApwcl9kYXRhIGZpZWxkIGFyZSB6ZXJvLCB0aGlzIHByb3BlcnR5IHNo b3VsZCBiZSByZW1vdmVkIGZyb20gb3V0cHV0LgoKSWYgdGhlIGJpdCBpcyAxLCBhbGwgaW5wdXQg cmVsb2NhdGFibGVzIGhhdmUgdGhlIGZlYXR1cmUuICBJZiB0aGUKYml0IGlzIDAgb3IgdGhlIHBy b3BlcnR5IGlzIG1pc3NpbmcsIHRoZSBpbmZvIGlzIHVua25vd24uCgoyLiBHTlVfUFJPUEVSVFlf VUlOVDMyX09SX0xPLi5HTlVfUFJPUEVSVFlfVUlOVDMyX09SX0hJCgogI2RlZmluZSBHTlVfUFJP UEVSVFlfVUlOVDMyX09SX0xPIDB4YjAwMDgwMDAKICNkZWZpbmUgR05VX1BST1BFUlRZX1VJTlQz Ml9PUl9ISSAweGIwMDBmZmZmCgpBIGJpdCBpbiB0aGUgb3V0cHV0IHByX2RhdGEgZmllbGQgaXMg c2V0IGlmIGl0IGlzIHNldCBpbiBhbnkKcmVsb2NhdGFibGUgaW5wdXQgcHJfZGF0YSBmaWVsZHMu IElmIGFsbCBiaXRzIGluIHRoZSB0aGUgb3V0cHV0CnByX2RhdGEgZmllbGQgYXJlIHplcm8sIHRo aXMgcHJvcGVydHkgc2hvdWxkIGJlIHJlbW92ZWQgZnJvbSBvdXRwdXQuCgpJZiB0aGUgYml0IGlz IDEsIHNvbWUgaW5wdXQgcmVsb2NhdGFibGVzIGhhdmUgdGhlIGZlYXR1cmUuICBJZiB0aGUKYml0 IGlzIDAgb3IgdGhlIHByb3BlcnR5IGlzIG1pc3NpbmcsIHRoZSBpbmZvIGlzIHVua25vd24uCgpi ZmQvCgoJKiBlbGYtcHJvcGVydGllcy5jIChfYmZkX2VsZl9wYXJzZV9nbnVfcHJvcGVydGllcyk6 IEhhbmRsZQoJR05VX1BST1BFUlRZX1VJTlQzMl9BTkRfTE8sIEdOVV9QUk9QRVJUWV9VSU5UMzJf QU5EX0hJLAoJR05VX1BST1BFUlRZX1VJTlQzMl9PUl9MTyBhbmQgR05VX1BST1BFUlRZX1VJTlQz Ml9PUl9ISS4KCShlbGZfbWVyZ2VfZ251X3Byb3BlcnRpZXMpOiBMaWtld2lzZS4KCmJpbnV0aWxz LwoKCSogcmVhZGVsZi5jIChwcmludF9nbnVfcHJvcGVydHlfbm90ZSk6IEhhbmRsZQoJR05VX1BS T1BFUlRZX1VJTlQzMl9BTkRfTE8sIEdOVV9QUk9QRVJUWV9VSU5UMzJfQU5EX0hJLAoJR05VX1BS T1BFUlRZX1VJTlQzMl9PUl9MTyBhbmQgR05VX1BST1BFUlRZX1VJTlQzMl9PUl9ISS4KCmluY2x1 ZGUvCgoJKiBlbGYvY29tbW9uLmggKEdOVV9QUk9QRVJUWV9VSU5UMzJfQU5EX0xPKTogTmV3LgoJ KEdOVV9QUk9QRVJUWV9VSU5UMzJfQU5EX0hJKTogTGlrZXdpc2UuCgkoR05VX1BST1BFUlRZX1VJ TlQzMl9PUl9MTyk6IExpa2V3aXNlLgoJKEdOVV9QUk9QRVJUWV9VSU5UMzJfT1JfSEkpOiBMaWtl d2lzZS4KCmxkLwoKCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMS5kOiBOZXcgZmls ZS4KCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMS5zOiBMaWtld2lzZS4KCSogdGVz dHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMi5kOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xk LWVsZi9wcm9wZXJ0eS1hbmQtMi5zOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9w ZXJ0eS1hbmQtMy5kOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQt My5zOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtNC5kOiBMaWtl d2lzZS4KCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtZW1wdHkuczogTGlrZXdpc2Uu CgkqIHRlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMS5kOiBMaWtld2lzZS4KCSogdGVzdHN1 aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0xLnM6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvbGQtZWxm L3Byb3BlcnR5LW9yLTIuZDogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHkt b3ItMi5zOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0zLmQ6IExp a2V3aXNlLgoJKiB0ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTMuczogTGlrZXdpc2UuCgkq IHRlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItNC5kOiBMaWtld2lzZS4KCSogdGVzdHN1aXRl L2xkLWVsZi9wcm9wZXJ0eS1vci1lbXB0eS5zOiBMaWtld2lzZS4KLS0tCiBiZmQvZWxmLXByb3Bl cnRpZXMuYyAgICAgICAgICAgICAgICAgICAgIHwgOTAgKysrKysrKysrKysrKysrKysrKysrKysr CiBiaW51dGlscy9yZWFkZWxmLmMgICAgICAgICAgICAgICAgICAgICAgIHwgMTUgKysrKwogaW5j bHVkZS9lbGYvY29tbW9uLmggICAgICAgICAgICAgICAgICAgICB8IDEwICsrKwogbGQvdGVzdHN1 aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMS5kICAgICB8ICA3ICsrCiBsZC90ZXN0c3VpdGUvbGQt ZWxmL3Byb3BlcnR5LWFuZC0xLnMgICAgIHwgMTUgKysrKwogbGQvdGVzdHN1aXRlL2xkLWVsZi9w cm9wZXJ0eS1hbmQtMi5kICAgICB8ICA4ICsrKwogbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0 eS1hbmQtMi5zICAgICB8IDE1ICsrKysKIGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5k LTMuZCAgICAgfCAgOCArKysKIGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTMucyAg ICAgfCAxNSArKysrCiBsZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LWFuZC00LmQgICAgIHwg MTIgKysrKwogbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtZW1wdHkucyB8IDE1ICsr KysKIGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMS5kICAgICAgfCAxMSArKysKIGxk L3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMS5zICAgICAgfCAxNSArKysrCiBsZC90ZXN0 c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTIuZCAgICAgIHwgMTIgKysrKwogbGQvdGVzdHN1aXRl L2xkLWVsZi9wcm9wZXJ0eS1vci0yLnMgICAgICB8IDE1ICsrKysKIGxkL3Rlc3RzdWl0ZS9sZC1l bGYvcHJvcGVydHktb3ItMy5kICAgICAgfCAxMiArKysrCiBsZC90ZXN0c3VpdGUvbGQtZWxmL3By b3BlcnR5LW9yLTMucyAgICAgIHwgMTUgKysrKwogbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0 eS1vci00LmQgICAgICB8IDEyICsrKysKIGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3It ZW1wdHkucyAgfCAxNSArKysrCiAxOSBmaWxlcyBjaGFuZ2VkLCAzMTcgaW5zZXJ0aW9ucygrKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTEuZAog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTEucwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTIuZAog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTIucwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTMuZAog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTMucwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTQuZAog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLWVtcHR5 LnMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTEu ZAogY3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMS5z CiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0yLmQK IGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTIucwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMy5kCiBj cmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0zLnMKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTQuZAogY3Jl YXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItZW1wdHkucwoK ZGlmZiAtLWdpdCBhL2JmZC9lbGYtcHJvcGVydGllcy5jIGIvYmZkL2VsZi1wcm9wZXJ0aWVzLmMK aW5kZXggNDkxZmExYWE4YzYuLjZkYjYxOGM5MWEwIDEwMDY0NAotLS0gYS9iZmQvZWxmLXByb3Bl cnRpZXMuYworKysgYi9iZmQvZWxmLXByb3BlcnRpZXMuYwpAQCAtMTc4LDYgKzE3OCwyNSBAQCBf YmZkX2VsZl9wYXJzZV9nbnVfcHJvcGVydGllcyAoYmZkICphYmZkLCBFbGZfSW50ZXJuYWxfTm90 ZSAqbm90ZSkKIAkgICAgICBnb3RvIG5leHQ7CiAKIAkgICAgZGVmYXVsdDoKKwkgICAgICBpZiAo KHR5cGUgPj0gR05VX1BST1BFUlRZX1VJTlQzMl9BTkRfTE8KKwkJICAgJiYgdHlwZSA8PSBHTlVf UFJPUEVSVFlfVUlOVDMyX0FORF9ISSkKKwkJICB8fCAodHlwZSA+PSBHTlVfUFJPUEVSVFlfVUlO VDMyX09SX0xPCisJCSAgICAgICYmIHR5cGUgPD0gR05VX1BST1BFUlRZX1VJTlQzMl9PUl9ISSkp CisJCXsKKwkJICBpZiAoZGF0YXN6ICE9IDQpCisJCSAgICB7CisJCSAgICAgIF9iZmRfZXJyb3Jf aGFuZGxlcgorCQkJKF8oImVycm9yOiAlcEI6IDxjb3JydXB0IHByb3BlcnR5ICgweCV4KSBzaXpl OiAweCV4PiIpLAorCQkJIGFiZmQsIHR5cGUsIGRhdGFzeik7CisJCSAgICAgIC8qIENsZWFyIGFs bCBwcm9wZXJ0aWVzLiAgKi8KKwkJICAgICAgZWxmX3Byb3BlcnRpZXMgKGFiZmQpID0gTlVMTDsK KwkJICAgICAgcmV0dXJuIEZBTFNFOworCQkgICAgfQorCQkgIHByb3AgPSBfYmZkX2VsZl9nZXRf cHJvcGVydHkgKGFiZmQsIHR5cGUsIGRhdGFzeik7CisJCSAgcHJvcC0+dS5udW1iZXIgfD0gYmZk X2hfZ2V0XzMyIChhYmZkLCBwdHIpOworCQkgIHByb3AtPnByX2tpbmQgPSBwcm9wZXJ0eV9udW1i ZXI7CisJCSAgZ290byBuZXh0OworCQl9CiAJICAgICAgYnJlYWs7CiAJICAgIH0KIAl9CkBAIC0y MDMsNiArMjIyLDggQEAgZWxmX21lcmdlX2dudV9wcm9wZXJ0aWVzIChzdHJ1Y3QgYmZkX2xpbmtf aW5mbyAqaW5mbywgYmZkICphYmZkLCBiZmQgKmJiZmQsCiB7CiAgIGNvbnN0IHN0cnVjdCBlbGZf YmFja2VuZF9kYXRhICpiZWQgPSBnZXRfZWxmX2JhY2tlbmRfZGF0YSAoYWJmZCk7CiAgIHVuc2ln bmVkIGludCBwcl90eXBlID0gYXByb3AgIT0gTlVMTCA/IGFwcm9wLT5wcl90eXBlIDogYnByb3At PnByX3R5cGU7CisgIHVuc2lnbmVkIGludCBudW1iZXI7CisgIGJmZF9ib29sZWFuIHVwZGF0ZWQ7 CiAKICAgaWYgKGJlZC0+bWVyZ2VfZ251X3Byb3BlcnRpZXMgIT0gTlVMTAogICAgICAgJiYgcHJf dHlwZSA+PSBHTlVfUFJPUEVSVFlfTE9QUk9DCkBAIC0yMjksNiArMjUwLDc1IEBAIGVsZl9tZXJn ZV9nbnVfcHJvcGVydGllcyAoc3RydWN0IGJmZF9saW5rX2luZm8gKmluZm8sIGJmZCAqYWJmZCwg YmZkICpiYmZkLAogICAgICAgcmV0dXJuIGFwcm9wID09IE5VTEw7CiAKICAgICBkZWZhdWx0Ogor ICAgICAgdXBkYXRlZCA9IEZBTFNFOworICAgICAgaWYgKHByX3R5cGUgPj0gR05VX1BST1BFUlRZ X1VJTlQzMl9PUl9MTworCSAgJiYgcHJfdHlwZSA8PSBHTlVfUFJPUEVSVFlfVUlOVDMyX09SX0hJ KQorCXsKKwkgIGlmIChhcHJvcCAhPSBOVUxMICYmIGJwcm9wICE9IE5VTEwpCisJICAgIHsKKwkg ICAgICBudW1iZXIgPSBhcHJvcC0+dS5udW1iZXI7CisJICAgICAgYXByb3AtPnUubnVtYmVyID0g bnVtYmVyIHwgYnByb3AtPnUubnVtYmVyOworCSAgICAgIC8qIFJlbW92ZSB0aGUgcHJvcGVydHkg aWYgYWxsIGJpdHMgYXJlIGVtcHR5LiAgKi8KKwkgICAgICBpZiAoYXByb3AtPnUubnVtYmVyID09 IDApCisJCXsKKwkJICBhcHJvcC0+cHJfa2luZCA9IHByb3BlcnR5X3JlbW92ZTsKKwkJICB1cGRh dGVkID0gVFJVRTsKKwkJfQorCSAgICAgIGVsc2UKKwkJdXBkYXRlZCA9IG51bWJlciAhPSAodW5z aWduZWQgaW50KSBhcHJvcC0+dS5udW1iZXI7CisJICAgIH0KKwkgIGVsc2UKKwkgICAgeworCSAg ICAgIC8qIE9ubHkgb25lIG9mIEFQUk9QIGFuZCBCUFJPUCBjYW4gYmUgTlVMTC4gICovCisJICAg ICAgaWYgKGFwcm9wICE9IE5VTEwpCisJCXsKKwkJICBpZiAoYXByb3AtPnUubnVtYmVyID09IDAp CisJCSAgICB7CisJCSAgICAgIC8qIFJlbW92ZSBBUFJPUCBpZiBhbGwgYml0cyBhcmUgZW1wdHku ICAqLworCQkgICAgICBhcHJvcC0+cHJfa2luZCA9IHByb3BlcnR5X3JlbW92ZTsKKwkJICAgICAg dXBkYXRlZCA9IFRSVUU7CisJCSAgICB9CisJCX0KKwkgICAgICBlbHNlCisJCXsKKwkJICAvKiBS ZXR1cm4gVFJVRSBpZiBBUFJPUCBpcyBOVUxMIGFuZCBhbGwgYml0cyBvZiBCUFJPUAorCQkgICAg IGFyZW4ndCBlbXB0eSB0byBpbmRpY2F0ZSB0aGF0IEJQUk9QIHNob3VsZCBiZSBhZGRlZAorCQkg ICAgIHRvIEFCRkQuICAqLworCQkgIHVwZGF0ZWQgPSBicHJvcC0+dS5udW1iZXIgIT0gMDsKKwkJ fQorCSAgICB9CisJICByZXR1cm4gdXBkYXRlZDsKKwl9CisgICAgICBlbHNlIGlmIChwcl90eXBl ID49IEdOVV9QUk9QRVJUWV9VSU5UMzJfQU5EX0xPCisJICAgICAgICYmIHByX3R5cGUgPD0gR05V X1BST1BFUlRZX1VJTlQzMl9BTkRfSEkpCisJeworCSAgLyogT25seSBvbmUgb2YgQVBST1AgYW5k IEJQUk9QIGNhbiBiZSBOVUxMOgorCSAgICAgMS4gQVBST1AgJiBCUFJPUCB3aGVuIGJvdGggQVBS T1AgYW5kIEJQUk9QIGFyZW4ndCBOVUxMLgorCSAgICAgMi4gSWYgQVBST1AgaXMgTlVMTCwgcmVt b3ZlIHg4NiBmZWF0dXJlLgorCSAgICAgMy4gT3RoZXJ3aXNlLCBkbyBub3RoaW5nLgorCSAgICAg Ki8KKwkgIGlmIChhcHJvcCAhPSBOVUxMICYmIGJwcm9wICE9IE5VTEwpCisJICAgIHsKKwkgICAg ICBudW1iZXIgPSBhcHJvcC0+dS5udW1iZXI7CisJICAgICAgYXByb3AtPnUubnVtYmVyID0gbnVt YmVyICYgYnByb3AtPnUubnVtYmVyOworCSAgICAgIHVwZGF0ZWQgPSBudW1iZXIgIT0gKHVuc2ln bmVkIGludCkgYXByb3AtPnUubnVtYmVyOworCSAgICAgIC8qIFJlbW92ZSB0aGUgcHJvcGVydHkg aWYgYWxsIGZlYXR1cmUgYml0cyBhcmUgY2xlYXJlZC4gICovCisJICAgICAgaWYgKGFwcm9wLT51 Lm51bWJlciA9PSAwKQorCQlhcHJvcC0+cHJfa2luZCA9IHByb3BlcnR5X3JlbW92ZTsKKwkgICAg fQorCSAgZWxzZQorCSAgICB7CisJICAgICAgLyogVGhlcmUgc2hvdWxkIGJlIG5vIEFORCBwcm9w ZXJ0aWVzIHNpbmNlIHNvbWUgaW5wdXQKKwkgICAgICAgICBkb2Vzbid0IGhhdmUgdGhlbS4gICAq LworCSAgICAgIGlmIChhcHJvcCAhPSBOVUxMKQorCQl7CisJCSAgYXByb3AtPnByX2tpbmQgPSBw cm9wZXJ0eV9yZW1vdmU7CisJCSAgdXBkYXRlZCA9IFRSVUU7CisJCX0KKwkgICAgfQorCSAgcmV0 dXJuIHVwZGF0ZWQ7CisJfQorCiAgICAgICAvKiBOZXZlciBzaG91bGQgaGFwcGVuLiAgKi8KICAg ICAgIGFib3J0ICgpOwogICAgIH0KZGlmZiAtLWdpdCBhL2JpbnV0aWxzL3JlYWRlbGYuYyBiL2Jp bnV0aWxzL3JlYWRlbGYuYwppbmRleCA1ZGY1MTA4NjIyNi4uYmU4Nzc2NzA3MmEgMTAwNjQ0Ci0t LSBhL2JpbnV0aWxzL3JlYWRlbGYuYworKysgYi9iaW51dGlscy9yZWFkZWxmLmMKQEAgLTE5MDQ4 LDYgKzE5MDQ4LDIxIEBAIHByaW50X2dudV9wcm9wZXJ0eV9ub3RlIChGaWxlZGF0YSAqIGZpbGVk YXRhLCBFbGZfSW50ZXJuYWxfTm90ZSAqIHBub3RlKQogCSAgICAgIGdvdG8gbmV4dDsKIAogCSAg ICBkZWZhdWx0OgorCSAgICAgIGlmICgodHlwZSA+PSBHTlVfUFJPUEVSVFlfVUlOVDMyX0FORF9M TworCQkgICAmJiB0eXBlIDw9IEdOVV9QUk9QRVJUWV9VSU5UMzJfQU5EX0hJKQorCQkgIHx8ICh0 eXBlID49IEdOVV9QUk9QRVJUWV9VSU5UMzJfT1JfTE8KKwkJICAgICAgJiYgdHlwZSA8PSBHTlVf UFJPUEVSVFlfVUlOVDMyX09SX0hJKSkKKwkJeworCQkgIGlmICh0eXBlIDw9IEdOVV9QUk9QRVJU WV9VSU5UMzJfQU5EX0hJKQorCQkgICAgcHJpbnRmIChfKCJVSU5UMzJfQU5EICglI3gpOiAiKSwg dHlwZSk7CisJCSAgZWxzZQorCQkgICAgcHJpbnRmIChfKCJVSU5UMzJfT1IgKCUjeCk6ICIpLCB0 eXBlKTsKKwkJICBpZiAoZGF0YXN6ICE9IDQpCisJCSAgICBwcmludGYgKF8oIjxjb3JydXB0IGxl bmd0aDogJSN4PiAiKSwgZGF0YXN6KTsKKwkJICBlbHNlCisJCSAgICBwcmludGYgKCIlI3giLCAo dW5zaWduZWQgaW50KSBieXRlX2dldCAocHRyLCA0KSk7CisJCSAgZ290byBuZXh0OworCQl9CiAJ ICAgICAgYnJlYWs7CiAJICAgIH0KIAl9CmRpZmYgLS1naXQgYS9pbmNsdWRlL2VsZi9jb21tb24u aCBiL2luY2x1ZGUvZWxmL2NvbW1vbi5oCmluZGV4IGU3ZDU1YWUwNzgyLi5hM2I3ZGI4YmM0MyAx MDA2NDQKLS0tIGEvaW5jbHVkZS9lbGYvY29tbW9uLmgKKysrIGIvaW5jbHVkZS9lbGYvY29tbW9u LmgKQEAgLTc2Niw2ICs3NjYsMTYgQEAKICNkZWZpbmUgR05VX1BST1BFUlRZX1NUQUNLX1NJWkUJ CQkxCiAjZGVmaW5lIEdOVV9QUk9QRVJUWV9OT19DT1BZX09OX1BST1RFQ1RFRAkyCiAKKy8qIEEg NC1ieXRlIHVuc2lnbmVkIGludGVnZXIgcHJvcGVydHk6IEEgYml0IGlzIHNldCBpZiBpdCBpcyBz ZXQgaW4gYWxsCisgICByZWxvY2F0YWJsZSBpbnB1dHMuICAqLworI2RlZmluZSBHTlVfUFJPUEVS VFlfVUlOVDMyX0FORF9MTwkweGIwMDAwMDAwCisjZGVmaW5lIEdOVV9QUk9QRVJUWV9VSU5UMzJf QU5EX0hJCTB4YjAwMDdmZmYKKworLyogQSA0LWJ5dGUgdW5zaWduZWQgaW50ZWdlciBwcm9wZXJ0 eTogQSBiaXQgaXMgc2V0IGlmIGl0IGlzIHNldCBpbiBhbnkKKyAgIHJlbG9jYXRhYmxlIGlucHV0 cy4gICovCisjZGVmaW5lIEdOVV9QUk9QRVJUWV9VSU5UMzJfT1JfTE8JMHhiMDAwODAwMAorI2Rl ZmluZSBHTlVfUFJPUEVSVFlfVUlOVDMyX09SX0hJCTB4YjAwMGZmZmYKKwogLyogUHJvY2Vzc29y LXNwZWNpZmljIHNlbWFudGljcywgbG8gKi8KICNkZWZpbmUgR05VX1BST1BFUlRZX0xPUFJPQyAg MHhjMDAwMDAwMAogLyogUHJvY2Vzc29yLXNwZWNpZmljIHNlbWFudGljcywgaGkgKi8KZGlmZiAt LWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTEuZCBiL2xkL3Rlc3RzdWl0 ZS9sZC1lbGYvcHJvcGVydHktYW5kLTEuZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uNGNhZjE4YzIwMDAKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQt ZWxmL3Byb3BlcnR5LWFuZC0xLmQKQEAgLTAsMCArMSw3IEBACisjc291cmNlOiBlbXB0eS5zCisj c291cmNlOiBwcm9wZXJ0eS1hbmQtMS5zCisjYXM6CisjbGQ6IC1zaGFyZWQKKyNyZWFkZWxmOiAt bgorI3hmYWlsOiAhW2NoZWNrX3NoYXJlZF9saWJfc3VwcG9ydF0KKwpkaWZmIC0tZ2l0IGEvbGQv dGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMS5zIGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9w cm9wZXJ0eS1hbmQtMS5zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4z Y2ZmMzNkYTJkOQotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVy dHktYW5kLTEucwpAQCAtMCwwICsxLDE1IEBACisJLnNlY3Rpb24gIi5ub3RlLmdudS5wcm9wZXJ0 eSIsICJhIgorCS5wMmFsaWduIEFMSUdOCisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBsZW5ndGgg Ki8KKwkubG9uZyA1ZiAtIDJmCQkvKiBkYXRhIGxlbmd0aCAqLworCS5sb25nIDUJCQkvKiBub3Rl IHR5cGUgKi8KKzA6CS5hc2NpeiAiR05VIgkJLyogdmVuZG9yIG5hbWUgKi8KKzE6CisJLnAyYWxp Z24gQUxJR04KKzI6CS5sb25nIDB4YjAwMDdmZmYJLyogcHJfdHlwZS4gICovCisJLmxvbmcgNGYg LSAzZgkJLyogcHJfZGF0YXN6LiAgKi8KKzM6CisJLmxvbmcgMHgzCis0OgorCS5wMmFsaWduIEFM SUdOCis1OgpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMi5k IGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMi5kCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yMjI5MjQzZTI3NQotLS0gL2Rldi9udWxsCisrKyBiL2xk L3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTIuZApAQCAtMCwwICsxLDggQEAKKyNzb3Vy Y2U6IHByb3BlcnR5LWFuZC0xLnMKKyNzb3VyY2U6IGVtcHR5LnMKKyNzb3VyY2U6IHByb3BlcnR5 LWFuZC0yLnMKKyNhczoKKyNsZDogLXNoYXJlZAorI3JlYWRlbGY6IC1uCisjeGZhaWw6ICFbY2hl Y2tfc2hhcmVkX2xpYl9zdXBwb3J0XQorCmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtZWxm L3Byb3BlcnR5LWFuZC0yLnMgYi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LWFuZC0yLnMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjcxNDljYjJkNTJiCi0tLSAv ZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1hbmQtMi5zCkBAIC0w LDAgKzEsMTUgQEAKKwkuc2VjdGlvbiAiLm5vdGUuZ251LnByb3BlcnR5IiwgImEiCisJLnAyYWxp Z24gQUxJR04KKwkubG9uZyAxZiAtIDBmCQkvKiBuYW1lIGxlbmd0aCAqLworCS5sb25nIDVmIC0g MmYJCS8qIGRhdGEgbGVuZ3RoICovCisJLmxvbmcgNQkJCS8qIG5vdGUgdHlwZSAqLworMDoJLmFz Y2l6ICJHTlUiCQkvKiB2ZW5kb3IgbmFtZSAqLworMToKKwkucDJhbGlnbiBBTElHTgorMjoJLmxv bmcgMHhiMDAwN2ZmZgkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA0ZiAtIDNmCQkvKiBwcl9kYXRh c3ouICAqLworMzoKKwkubG9uZyAweDEwMQorNDoKKwkucDJhbGlnbiBBTElHTgorNToKZGlmZiAt LWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTMuZCBiL2xkL3Rlc3RzdWl0 ZS9sZC1lbGYvcHJvcGVydHktYW5kLTMuZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uZmM5MTM0NDQxYzMKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQt ZWxmL3Byb3BlcnR5LWFuZC0zLmQKQEAgLTAsMCArMSw4IEBACisjc291cmNlOiBwcm9wZXJ0eS1h bmQtMS5zCisjc291cmNlOiBwcm9wZXJ0eS1hbmQtZW1wdHkucworI3NvdXJjZTogcHJvcGVydHkt YW5kLTIucworI2FzOgorI2xkOiAtc2hhcmVkCisjcmVhZGVsZjogLW4KKyN4ZmFpbDogIVtjaGVj a19zaGFyZWRfbGliX3N1cHBvcnRdCisKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1lbGYv cHJvcGVydHktYW5kLTMucyBiL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTMucwpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMjgzOGM5YWVmMzAKLS0tIC9k ZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LWFuZC0zLnMKQEAgLTAs MCArMSwxNSBAQAorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVydHkiLCAiYSIKKwkucDJhbGln biBBTElHTgorCS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3RoICovCisJLmxvbmcgNWYgLSAy ZgkJLyogZGF0YSBsZW5ndGggKi8KKwkubG9uZyA1CQkJLyogbm90ZSB0eXBlICovCiswOgkuYXNj aXogIkdOVSIJCS8qIHZlbmRvciBuYW1lICovCisxOgorCS5wMmFsaWduIEFMSUdOCisyOgkubG9u ZyAweGIwMDA3ZmZmCS8qIHByX3R5cGUuICAqLworCS5sb25nIDRmIC0gM2YJCS8qIHByX2RhdGFz ei4gICovCiszOgorCS5sb25nIDB4MTAwMQorNDoKKwkucDJhbGlnbiBBTElHTgorNToKZGlmZiAt LWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLTQuZCBiL2xkL3Rlc3RzdWl0 ZS9sZC1lbGYvcHJvcGVydHktYW5kLTQuZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uODRiZjQwNDM4M2YKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQt ZWxmL3Byb3BlcnR5LWFuZC00LmQKQEAgLTAsMCArMSwxMiBAQAorI3NvdXJjZTogcHJvcGVydHkt YW5kLTEucworI3NvdXJjZTogcHJvcGVydHktYW5kLTIucworI3NvdXJjZTogcHJvcGVydHktYW5k LTMucworI2FzOgorI2xkOiAtc2hhcmVkCisjcmVhZGVsZjogLW4KKyN4ZmFpbDogIVtjaGVja19z aGFyZWRfbGliX3N1cHBvcnRdCisKK0Rpc3BsYXlpbmcgbm90ZXMgZm91bmQgaW46IC5ub3RlLmdu dS5wcm9wZXJ0eQorWyAJXStPd25lclsgCV0rRGF0YSBzaXplWyAJXStEZXNjcmlwdGlvbgorICBH TlUgICAgICAgICAgICAgICAgICAweFswLTlhLWZdKwlOVF9HTlVfUFJPUEVSVFlfVFlQRV8wCisg ICAgICBQcm9wZXJ0aWVzOiBVSU5UMzJfQU5EIFwoMHhiMDAwN2ZmZlwpOiAweDEKZGlmZiAtLWdp dCBhL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktYW5kLWVtcHR5LnMgYi9sZC90ZXN0c3Vp dGUvbGQtZWxmL3Byb3BlcnR5LWFuZC1lbXB0eS5zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwLi4wMjY2OWFkZjFmOAotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3RzdWl0 ZS9sZC1lbGYvcHJvcGVydHktYW5kLWVtcHR5LnMKQEAgLTAsMCArMSwxNSBAQAorCS5zZWN0aW9u ICIubm90ZS5nbnUucHJvcGVydHkiLCAiYSIKKwkucDJhbGlnbiBBTElHTgorCS5sb25nIDFmIC0g MGYJCS8qIG5hbWUgbGVuZ3RoICovCisJLmxvbmcgNWYgLSAyZgkJLyogZGF0YSBsZW5ndGggKi8K KwkubG9uZyA1CQkJLyogbm90ZSB0eXBlICovCiswOgkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBu YW1lICovCisxOgorCS5wMmFsaWduIEFMSUdOCisyOgkubG9uZyAweGIwMDA3ZmZmCS8qIHByX3R5 cGUuICAqLworCS5sb25nIDRmIC0gM2YJCS8qIHByX2RhdGFzei4gICovCiszOgorCS5sb25nIDB4 MAorNDoKKwkucDJhbGlnbiBBTElHTgorNToKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1l bGYvcHJvcGVydHktb3ItMS5kIGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0xLmQK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmY1MzkyYzQyY2Y5Ci0tLSAv ZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0xLmQKQEAgLTAs MCArMSwxMSBAQAorI3NvdXJjZTogZW1wdHkucworI3NvdXJjZTogcHJvcGVydHktb3ItMS5zCisj YXM6CisjbGQ6IC1zaGFyZWQKKyNyZWFkZWxmOiAtbgorI3hmYWlsOiAhW2NoZWNrX3NoYXJlZF9s aWJfc3VwcG9ydF0KKworRGlzcGxheWluZyBub3RlcyBmb3VuZCBpbjogLm5vdGUuZ251LnByb3Bl cnR5CitbIAldK093bmVyWyAJXStEYXRhIHNpemVbIAldK0Rlc2NyaXB0aW9uCisgIEdOVSAgICAg ICAgICAgICAgICAgIDB4WzAtOWEtZl0rCU5UX0dOVV9QUk9QRVJUWV9UWVBFXzAKKyAgICAgIFBy b3BlcnRpZXM6IFVJTlQzMl9PUiBcKDB4YjAwMGZmZmZcKTogMHgzCmRpZmYgLS1naXQgYS9sZC90 ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTEucyBiL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJv cGVydHktb3ItMS5zCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5hNDcx NDE4MGMxNwotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHkt b3ItMS5zCkBAIC0wLDAgKzEsMTUgQEAKKwkuc2VjdGlvbiAiLm5vdGUuZ251LnByb3BlcnR5Iiwg ImEiCisJLnAyYWxpZ24gQUxJR04KKwkubG9uZyAxZiAtIDBmCQkvKiBuYW1lIGxlbmd0aCAqLwor CS5sb25nIDVmIC0gMmYJCS8qIGRhdGEgbGVuZ3RoICovCisJLmxvbmcgNQkJCS8qIG5vdGUgdHlw ZSAqLworMDoJLmFzY2l6ICJHTlUiCQkvKiB2ZW5kb3IgbmFtZSAqLworMToKKwkucDJhbGlnbiBB TElHTgorMjoJLmxvbmcgMHhiMDAwZmZmZgkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA0ZiAtIDNm CQkvKiBwcl9kYXRhc3ouICAqLworMzoKKwkubG9uZyAweDMKKzQ6CisJLnAyYWxpZ24gQUxJR04K KzU6CmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTIuZCBiL2xk L3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMi5kCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi44NWI3NTQ4MzNjYgotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3Rz dWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMi5kCkBAIC0wLDAgKzEsMTIgQEAKKyNzb3VyY2U6IHBy b3BlcnR5LW9yLTEucworI3NvdXJjZTogZW1wdHkucworI3NvdXJjZTogcHJvcGVydHktb3ItMi5z CisjYXM6CisjbGQ6IC1zaGFyZWQKKyNyZWFkZWxmOiAtbgorI3hmYWlsOiAhW2NoZWNrX3NoYXJl ZF9saWJfc3VwcG9ydF0KKworRGlzcGxheWluZyBub3RlcyBmb3VuZCBpbjogLm5vdGUuZ251LnBy b3BlcnR5CitbIAldK093bmVyWyAJXStEYXRhIHNpemVbIAldK0Rlc2NyaXB0aW9uCisgIEdOVSAg ICAgICAgICAgICAgICAgIDB4WzAtOWEtZl0rCU5UX0dOVV9QUk9QRVJUWV9UWVBFXzAKKyAgICAg IFByb3BlcnRpZXM6IFVJTlQzMl9PUiBcKDB4YjAwMGZmZmZcKTogMHgxMDMKZGlmZiAtLWdpdCBh L2xkL3Rlc3RzdWl0ZS9sZC1lbGYvcHJvcGVydHktb3ItMi5zIGIvbGQvdGVzdHN1aXRlL2xkLWVs Zi9wcm9wZXJ0eS1vci0yLnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmEyNjA0N2RhYjMyCi0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9w ZXJ0eS1vci0yLnMKQEAgLTAsMCArMSwxNSBAQAorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVy dHkiLCAiYSIKKwkucDJhbGlnbiBBTElHTgorCS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3Ro ICovCisJLmxvbmcgNWYgLSAyZgkJLyogZGF0YSBsZW5ndGggKi8KKwkubG9uZyA1CQkJLyogbm90 ZSB0eXBlICovCiswOgkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBuYW1lICovCisxOgorCS5wMmFs aWduIEFMSUdOCisyOgkubG9uZyAweGIwMDBmZmZmCS8qIHByX3R5cGUuICAqLworCS5sb25nIDRm IC0gM2YJCS8qIHByX2RhdGFzei4gICovCiszOgorCS5sb25nIDB4MTAxCis0OgorCS5wMmFsaWdu IEFMSUdOCis1OgpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0z LmQgYi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTMuZApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMmQ2ODdkYjRhNjEKLS0tIC9kZXYvbnVsbAorKysgYi9s ZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTMuZApAQCAtMCwwICsxLDEyIEBACisjc291 cmNlOiBwcm9wZXJ0eS1vci0xLnMKKyNzb3VyY2U6IHByb3BlcnR5LWFuZC1lbXB0eS5zCisjc291 cmNlOiBwcm9wZXJ0eS1vci0yLnMKKyNhczoKKyNsZDogLXNoYXJlZAorI3JlYWRlbGY6IC1uCisj eGZhaWw6ICFbY2hlY2tfc2hhcmVkX2xpYl9zdXBwb3J0XQorCitEaXNwbGF5aW5nIG5vdGVzIGZv dW5kIGluOiAubm90ZS5nbnUucHJvcGVydHkKK1sgCV0rT3duZXJbIAldK0RhdGEgc2l6ZVsgCV0r RGVzY3JpcHRpb24KKyAgR05VICAgICAgICAgICAgICAgICAgMHhbMC05YS1mXSsJTlRfR05VX1BS T1BFUlRZX1RZUEVfMAorICAgICAgUHJvcGVydGllczogVUlOVDMyX09SIFwoMHhiMDAwZmZmZlwp OiAweDEwMwpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci0zLnMg Yi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTMucwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMC4uZDNlNzM2N2VhNDkKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90 ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTMucwpAQCAtMCwwICsxLDE1IEBACisJLnNlY3Rp b24gIi5ub3RlLmdudS5wcm9wZXJ0eSIsICJhIgorCS5wMmFsaWduIEFMSUdOCisJLmxvbmcgMWYg LSAwZgkJLyogbmFtZSBsZW5ndGggKi8KKwkubG9uZyA1ZiAtIDJmCQkvKiBkYXRhIGxlbmd0aCAq LworCS5sb25nIDUJCQkvKiBub3RlIHR5cGUgKi8KKzA6CS5hc2NpeiAiR05VIgkJLyogdmVuZG9y IG5hbWUgKi8KKzE6CisJLnAyYWxpZ24gQUxJR04KKzI6CS5sb25nIDB4YjAwMGZmZmYJLyogcHJf dHlwZS4gICovCisJLmxvbmcgNGYgLSAzZgkJLyogcHJfZGF0YXN6LiAgKi8KKzM6CisJLmxvbmcg MHgxMDAxCis0OgorCS5wMmFsaWduIEFMSUdOCis1OgpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRl L2xkLWVsZi9wcm9wZXJ0eS1vci00LmQgYi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9y LTQuZApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZmVlMjJiMTU1YzYK LS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLTQuZApA QCAtMCwwICsxLDEyIEBACisjc291cmNlOiBwcm9wZXJ0eS1vci0xLnMKKyNzb3VyY2U6IHByb3Bl cnR5LW9yLTIucworI3NvdXJjZTogcHJvcGVydHktb3ItMy5zCisjYXM6CisjbGQ6IC1zaGFyZWQK KyNyZWFkZWxmOiAtbgorI3hmYWlsOiAhW2NoZWNrX3NoYXJlZF9saWJfc3VwcG9ydF0KKworRGlz cGxheWluZyBub3RlcyBmb3VuZCBpbjogLm5vdGUuZ251LnByb3BlcnR5CitbIAldK093bmVyWyAJ XStEYXRhIHNpemVbIAldK0Rlc2NyaXB0aW9uCisgIEdOVSAgICAgICAgICAgICAgICAgIDB4WzAt OWEtZl0rCU5UX0dOVV9QUk9QRVJUWV9UWVBFXzAKKyAgICAgIFByb3BlcnRpZXM6IFVJTlQzMl9P UiBcKDB4YjAwMGZmZmZcKTogMHgxMTAzCmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtZWxm L3Byb3BlcnR5LW9yLWVtcHR5LnMgYi9sZC90ZXN0c3VpdGUvbGQtZWxmL3Byb3BlcnR5LW9yLWVt cHR5LnMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmYzN2UxZGM3ZDY5 Ci0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWVsZi9wcm9wZXJ0eS1vci1lbXB0 eS5zCkBAIC0wLDAgKzEsMTUgQEAKKwkuc2VjdGlvbiAiLm5vdGUuZ251LnByb3BlcnR5IiwgImEi CisJLnAyYWxpZ24gQUxJR04KKwkubG9uZyAxZiAtIDBmCQkvKiBuYW1lIGxlbmd0aCAqLworCS5s b25nIDVmIC0gMmYJCS8qIGRhdGEgbGVuZ3RoICovCisJLmxvbmcgNQkJCS8qIG5vdGUgdHlwZSAq LworMDoJLmFzY2l6ICJHTlUiCQkvKiB2ZW5kb3IgbmFtZSAqLworMToKKwkucDJhbGlnbiBBTElH TgorMjoJLmxvbmcgMHhiMDAwZmZmZgkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA0ZiAtIDNmCQkv KiBwcl9kYXRhc3ouICAqLworMzoKKwkubG9uZyAweDAKKzQ6CisJLnAyYWxpZ24gQUxJR04KKzU6 Ci0tIAoyLjI5LjIKCg== --000000000000e2c12505b96a5c96--