From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io1-xd43.google.com (mail-io1-xd43.google.com [IPv6:2607:f8b0:4864:20::d43]) by sourceware.org (Postfix) with ESMTPS id E1CAB3898538 for ; Thu, 30 Apr 2020 15:28:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org E1CAB3898538 Received: by mail-io1-xd43.google.com with SMTP id b12so1880689ion.8 for ; Thu, 30 Apr 2020 08:28:35 -0700 (PDT) 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:cc; bh=XMawdHZszDBH55nCx1PxDtdmYHCkCN0yJNqx58ee8Tk=; b=OCPhnmkYtYk2CQfw5TF40juRF+wS/rpzBRgks/YEnr9jX8WoJ27F0ayLA9mZb5VoWg 0dgBNKLcT4hJDakq+e1f+eDrp8oPcvgsb1I5DtIQ9tehAA2MwVx2uvFxTNCaWn7TUiYO A7c8TIXdAEaUxv6QynguVqJ6N79O+9My7C2Wr0wMyNcs/KQVo8QEwgvAWwgVXzrrVY53 d6S+ffyAQOtUX48DYtsNlHjfkvT66BasypU4/n6xeSTzTYOulOx1dYMHMbBfan7U3n5b x5LIOupcw+OFpVW+4TUWJ3lz9bQHj6lB5dQJ1D3OM/bO2n0fp5KTx562upN79sTW10j5 rUTw== X-Gm-Message-State: AGi0PuYJHQhiyIprjdhVlraUW6nGJ5bmsvgGCG2kJxBLXOYGyhvyrmOu 4J4jX70zD3DUGP1hE2Lg4wABC0N/VSq8mFCFHC5NThB+ X-Google-Smtp-Source: APiQypLGAEX3fCzeXJ5UZs0FzaDgvW4i367Kvh6E+fgzXisacmh3LI0BzcXnUsKHR3wt3nW++4/ktW/I4w+hMhMfFTk= X-Received: by 2002:a6b:d219:: with SMTP id q25mr2416580iob.202.1588260515322; Thu, 30 Apr 2020 08:28:35 -0700 (PDT) MIME-Version: 1.0 References: <20200429205217.2435607-1-hjl.tools@gmail.com> <87wo5xa0yt.fsf@mid.deneb.enyo.de> <20200430130333.GA254612@gmail.com> <87h7x1gkfg.fsf@igel.home> <87mu6t84yg.fsf@mid.deneb.enyo.de> <87d07pgjz0.fsf@igel.home> <878sidgjcp.fsf@igel.home> In-Reply-To: <878sidgjcp.fsf@igel.home> From: "H.J. Lu" Date: Thu, 30 Apr 2020 08:27:59 -0700 Message-ID: Subject: V3 [PATCH] Add a C wrapper for prctl [BZ #25896] To: Andreas Schwab Cc: Florian Weimer , "H.J. Lu via Libc-alpha" Content-Type: multipart/mixed; boundary="000000000000d4124105a483b7a8" X-Spam-Status: No, score=-20.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Apr 2020 15:28:38 -0000 --000000000000d4124105a483b7a8 Content-Type: text/plain; charset="UTF-8" On Thu, Apr 30, 2020 at 7:04 AM Andreas Schwab wrote: > > On Apr 30 2020, H.J. Lu wrote: > > > On Thu, Apr 30, 2020 at 6:51 AM Andreas Schwab wrote: > >> > >> On Apr 30 2020, Florian Weimer wrote: > >> > >> > * Andreas Schwab: > >> > > >> >> On Apr 30 2020, H.J. Lu via Libc-alpha wrote: > >> >> > >> >>> diff --git a/include/sys/prctl.h b/include/sys/prctl.h > >> >>> index 0920ed642b..1a74d83879 100644 > >> >>> --- a/include/sys/prctl.h > >> >>> +++ b/include/sys/prctl.h > >> >>> @@ -4,6 +4,8 @@ > >> >>> # ifndef _ISOMAC > >> >>> > >> >>> extern int __prctl (int __option, ...); > >> >>> +libc_hidden_proto (__prctl) > >> >>> +libc_hidden_proto (prctl) > >> >> > >> >> Why do you need the hidden alias for prctl? All references inside > >> >> libc.so should use __prctl. > >> > > >> > Right. I want to clean this up in a separate patch. > >> > >> ??? Why adding it in the first place? > >> > >> Andreas. > >> > > > > It was there before my patch: > > That doesn't matter, the syscall template adds it blindly to all names. > > Andreas. > Here is the updated patch without libc_hidden_proto (prctl) OK for master? Thanks. -- H.J. --000000000000d4124105a483b7a8 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-a-C-wrapper-for-prctl-BZ-25896.patch" Content-Disposition: attachment; filename="0001-Add-a-C-wrapper-for-prctl-BZ-25896.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k9mx8orx0 RnJvbSBlZTg2NzJhZjNlZjVmM2RiNDM4YzBhYmIzOWIyNjczOTQ0MTgxMjkyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhqbC50b29sc0BnbWFpbC5jb20+CkRhdGU6 IFdlZCwgMjkgQXByIDIwMjAgMDc6Mzg6NDkgLTA3MDAKU3ViamVjdDogW1BBVENIXSBBZGQgYSBD IHdyYXBwZXIgZm9yIHByY3RsIFtCWiAjMjU4OTZdCgpBZGQgYSBDIHdyYXBwZXIgdG8gcGFzcyBh cmd1bWVudHMgaW4KCi8qIENvbnRyb2wgcHJvY2VzcyBleGVjdXRpb24uICAqLwpleHRlcm4gaW50 IHByY3RsIChpbnQgX19vcHRpb24sIC4uLikgX19USFJPVzsKCnRvIHByY3RsIHN5c2NhbGw6Cgpl eHRlcm4gaW50IHByY3RsIChpbnQsIHVuc2lnbmVkIGxvbmcgaW50LCB1bnNpZ25lZCBsb25nIGlu dCwKCQkgIHVuc2lnbmVkIGxvbmcgaW50LCB1bnNpZ25lZCBsb25nIGludCk7CgpPbiBMaW51eC94 ODYsIHNpbmNlIHRoZSBwcmN0bCBzeXNjYWxsIGludGVyZmFjZToKCmV4dGVybiBpbnQgcHJjdGwg KGludCwgdW5zaWduZWQgbG9uZyBpbnQsIHVuc2lnbmVkIGxvbmcgaW50LAoJCSAgdW5zaWduZWQg bG9uZyBpbnQsIHVuc2lnbmVkIGxvbmcgaW50KTsKCmFuZCB0aGUgZ2xpYmMgcHJjdGwgaW50ZXJm YWNlOgoKZXh0ZXJuIGludCBwcmN0bCAoaW50IG9wdGlvbiwgLi4uKTsKCnBhc3MgdGhlIGFyZ3Vt ZW50cyBpZGVudGljYWxseSwgdGhlIGFzc2VtYmx5IHZlcmlvbjoKClBTRVVETyAoX19wcmN0bCwg cHJjdGwsIDUpCglyZXQKUFNFVURPX0VORCAoX19wcmN0bCkKCmlzIHVzZWQuCi0tLQogaW5jbHVk ZS9zeXMvcHJjdGwuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgKwogc3lzZGVwcy91bml4 L3N5c3YvbGludXgvTWFrZWZpbGUgICAgICAgICAgIHwgIDIgKy0KIHN5c2RlcHMvdW5peC9zeXN2 L2xpbnV4L3ByY3RsLmMgICAgICAgICAgICB8IDQyICsrKysrKysrKysrKysrKysrKysrKysKIHN5 c2RlcHMvdW5peC9zeXN2L2xpbnV4L3N5c2NhbGxzLmxpc3QgICAgICB8ICAxIC0KIHN5c2RlcHMv dW5peC9zeXN2L2xpbnV4L3g4Ni9wcmN0bC5TICAgICAgICB8IDM3ICsrKysrKysrKysrKysrKysr KysKIHN5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Nl82NC94MzIvcHJjdGwuUyB8IDI4ICsrKysr KysrKysrKysrKwogNiBmaWxlcyBjaGFuZ2VkLCAxMDkgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzeXNkZXBzL3VuaXgvc3lzdi9saW51eC9wcmN0bC5j CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2L3ByY3RsLlMK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQveDMyL3By Y3RsLlMKCmRpZmYgLS1naXQgYS9pbmNsdWRlL3N5cy9wcmN0bC5oIGIvaW5jbHVkZS9zeXMvcHJj dGwuaAppbmRleCAwOTIwZWQ2NDJiLi5kMzNmM2EyOTBlIDEwMDY0NAotLS0gYS9pbmNsdWRlL3N5 cy9wcmN0bC5oCisrKyBiL2luY2x1ZGUvc3lzL3ByY3RsLmgKQEAgLTQsNiArNCw3IEBACiAjIGlm bmRlZiBfSVNPTUFDCiAKIGV4dGVybiBpbnQgX19wcmN0bCAoaW50IF9fb3B0aW9uLCAuLi4pOwor bGliY19oaWRkZW5fcHJvdG8gKF9fcHJjdGwpCiAKICMgZW5kaWYgLyogIV9JU09NQUMgKi8KICNl bmRpZgpkaWZmIC0tZ2l0IGEvc3lzZGVwcy91bml4L3N5c3YvbGludXgvTWFrZWZpbGUgYi9zeXNk ZXBzL3VuaXgvc3lzdi9saW51eC9NYWtlZmlsZQppbmRleCBkYjc4ZWVhZGQxLi4wMzI2ZjkyYzQw IDEwMDY0NAotLS0gYS9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC9NYWtlZmlsZQorKysgYi9zeXNk ZXBzL3VuaXgvc3lzdi9saW51eC9NYWtlZmlsZQpAQCAtNTksNyArNTksNyBAQCBzeXNkZXBfcm91 dGluZXMgKz0gYWRqdGltZXggY2xvbmUgdW1vdW50IHVtb3VudDIgcmVhZGFoZWFkIHN5c2N0bCBc CiAJCSAgIGV2ZW50ZmQgZXZlbnRmZF9yZWFkIGV2ZW50ZmRfd3JpdGUgcHJsaW1pdCBcCiAJCSAg IHBlcnNvbmFsaXR5IGVwb2xsX3dhaXQgdGVlIHZtc3BsaWNlIHNwbGljZSBcCiAJCSAgIG9wZW5f YnlfaGFuZGxlX2F0IG1sb2NrMiBwa2V5X21wcm90ZWN0IHBrZXlfc2V0IHBrZXlfZ2V0IFwKLQkJ ICAgdGltZXJmZF9nZXR0aW1lIHRpbWVyZmRfc2V0dGltZSBcCisJCSAgIHRpbWVyZmRfZ2V0dGlt ZSB0aW1lcmZkX3NldHRpbWUgcHJjdGwgXAogCQkgICBwcm9jZXNzX3ZtX3JlYWR2IHByb2Nlc3Nf dm1fd3JpdGV2CiAKIENGTEFHUy1nZXRob3N0aWQuYyA9IC1mZXhjZXB0aW9ucwpkaWZmIC0tZ2l0 IGEvc3lzZGVwcy91bml4L3N5c3YvbGludXgvcHJjdGwuYyBiL3N5c2RlcHMvdW5peC9zeXN2L2xp bnV4L3ByY3RsLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uZDU3MjVm MTRjZgotLS0gL2Rldi9udWxsCisrKyBiL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3ByY3RsLmMK QEAgLTAsMCArMSw0MiBAQAorLyogcHJjdGwgLSBMaW51eCBzcGVjaWZpYyBzeXNjYWxsLgorICAg Q29weXJpZ2h0IChDKSAyMDIwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorICAgVGhp cyBmaWxlIGlzIHBhcnQgb2YgdGhlIEdOVSBDIExpYnJhcnkuCisKKyAgIFRoZSBHTlUgQyBMaWJy YXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAg bW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1Ymxp YworICAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv bjsgZWl0aGVyCisgICB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0 aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworICAgVGhlIEdOVSBDIExpYnJhcnkgaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBN RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg dGhlIEdOVQorICAgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls cy4KKworICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3Nl ciBHZW5lcmFsIFB1YmxpYworICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoZSBHTlUgQyBMaWJyYXJ5 OyBpZiBub3QsIHNlZQorICAgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCisK KyNpbmNsdWRlIDxzeXNkZXAuaD4KKyNpbmNsdWRlIDxzdGRhcmcuaD4KKyNpbmNsdWRlIDxzeXMv cHJjdGwuaD4KKworLyogVW5jb25kaXRpb25hbGx5IHJlYWQgYWxsIHBvdGVudGlhbCBhcmd1bWVu dHMuICBUaGlzIG1heSBwYXNzCisgICBnYXJiYWdlIHZhbHVlcyB0byB0aGUga2VybmVsLCBidXQg YXZvaWRzIHRoZSBuZWVkIGZvciB0ZWFjaGluZworICAgZ2xpYmMgdGhlIGFyZ3VtZW50IGNvdW50 cyBvZiBpbmRpdmlkdWFsIG9wdGlvbnMgKGluY2x1ZGluZyBvbmVzCisgICB0aGF0IGFyZSBhZGRl ZCB0byB0aGUga2VybmVsIGluIHRoZSBmdXR1cmUpLiAgKi8KKworaW50CitfX3ByY3RsIChpbnQg b3B0aW9uLCAuLi4pCit7CisgIHZhX2xpc3QgYXJnOworICB2YV9zdGFydCAoYXJnLCBvcHRpb24p OworICB1bnNpZ25lZCBsb25nIGludCBhcmcyID0gdmFfYXJnIChhcmcsIHVuc2lnbmVkIGxvbmcg aW50KTsKKyAgdW5zaWduZWQgbG9uZyBpbnQgYXJnMyA9IHZhX2FyZyAoYXJnLCB1bnNpZ25lZCBs b25nIGludCk7CisgIHVuc2lnbmVkIGxvbmcgaW50IGFyZzQgPSB2YV9hcmcgKGFyZywgdW5zaWdu ZWQgbG9uZyBpbnQpOworICB1bnNpZ25lZCBsb25nIGludCBhcmc1ID0gdmFfYXJnIChhcmcsIHVu c2lnbmVkIGxvbmcgaW50KTsKKyAgdmFfZW5kIChhcmcpOworICByZXR1cm4gSU5MSU5FX1NZU0NB TExfQ0FMTCAocHJjdGwsIG9wdGlvbiwgYXJnMiwgYXJnMywgYXJnNCwgYXJnNSk7Cit9CisKK2xp YmNfaGlkZGVuX2RlZiAoX19wcmN0bCkKK3dlYWtfYWxpYXMgKF9fcHJjdGwsIHByY3RsKQpkaWZm IC0tZ2l0IGEvc3lzZGVwcy91bml4L3N5c3YvbGludXgvc3lzY2FsbHMubGlzdCBiL3N5c2RlcHMv dW5peC9zeXN2L2xpbnV4L3N5c2NhbGxzLmxpc3QKaW5kZXggY2VkNzdkNDlmYS4uMWQ4ODkzZDFi OCAxMDA2NDQKLS0tIGEvc3lzZGVwcy91bml4L3N5c3YvbGludXgvc3lzY2FsbHMubGlzdAorKysg Yi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC9zeXNjYWxscy5saXN0CkBAIC00Myw3ICs0Myw2IEBA IG5mc3NlcnZjdGwJRVhUUkEJbmZzc2VydmN0bAlpOmlwcAlfX2NvbXBhdF9uZnNzZXJ2Y3RsCW5m c3NlcnZjdGxAR0xJQkNfMi4wOkdMSUJDCiBwaXBlCQktCXBpcGUJCWk6ZglfX3BpcGUJCXBpcGUK IHBpcGUyCQktCXBpcGUyCQlpOmZpCV9fcGlwZTIJCXBpcGUyCiBwaXZvdF9yb290CUVYVFJBCXBp dm90X3Jvb3QJaTpzcwlwaXZvdF9yb290Ci1wcmN0bAkJRVhUUkEJcHJjdGwJCWk6aWlpaWkJX19w cmN0bAkJcHJjdGwKIHF1ZXJ5X21vZHVsZQlFWFRSQQlxdWVyeV9tb2R1bGUJaTpzaXBpcAlfX2Nv bXBhdF9xdWVyeV9tb2R1bGUJcXVlcnlfbW9kdWxlQEdMSUJDXzIuMDpHTElCQ18yLjIzCiBxdW90 YWN0bAlFWFRSQQlxdW90YWN0bAlpOmlzaXAJcXVvdGFjdGwKIHJlbWFwX2ZpbGVfcGFnZXMgLQly ZW1hcF9maWxlX3BhZ2VzIGk6cFVpVWkJX19yZW1hcF9maWxlX3BhZ2VzIHJlbWFwX2ZpbGVfcGFn ZXMKZGlmZiAtLWdpdCBhL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3g4Ni9wcmN0bC5TIGIvc3lz ZGVwcy91bml4L3N5c3YvbGludXgveDg2L3ByY3RsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMC4uY2U5OTAzYWIxNQotLS0gL2Rldi9udWxsCisrKyBiL3N5c2RlcHMvdW5p eC9zeXN2L2xpbnV4L3g4Ni9wcmN0bC5TCkBAIC0wLDAgKzEsMzcgQEAKKy8qIHByY3RsIC0gTGlu dXggc3BlY2lmaWMgc3lzY2FsbC4gIExpbnV4L3g4NiB2ZXJzaW9uLgorICAgQ29weXJpZ2h0IChD KSAyMDIwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorICAgVGhpcyBmaWxlIGlzIHBh cnQgb2YgdGhlIEdOVSBDIExpYnJhcnkuCisKKyAgIFRoZSBHTlUgQyBMaWJyYXJ5IGlzIGZyZWUg c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgbW9kaWZ5IGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworICAgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisg ICB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KKworICAgVGhlIEdOVSBDIExpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhl IGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJDSEFOVEFCSUxJ VFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorICAg TGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgWW91 IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1 YmxpYworICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoZSBHTlUgQyBMaWJyYXJ5OyBpZiBub3QsIHNl ZQorICAgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCisKKyNpbmNsdWRlIDxz eXNkZXAuaD4KKworLyogT24gTGludXgveDg2LCB0aGUgcHJjdGwgc3lzY2FsbCBpbnRlcmZhY2U6 CisKKyAgIGV4dGVybiBpbnQgcHJjdGwgKGludCwgdW5zaWduZWQgbG9uZyBpbnQsIHVuc2lnbmVk IGxvbmcgaW50LAorCQkgICAgIHVuc2lnbmVkIGxvbmcgaW50LCB1bnNpZ25lZCBsb25nIGludCk7 CisKKyAgIGFuZCB0aGUgZ2xpYmMgcHJjdGwgaW50ZXJmYWNlOgorCisgICBleHRlcm4gaW50IHBy Y3RsIChpbnQgb3B0aW9uLCAuLi4pOworCisgICBwYXNzIHRoZSBhcmd1bWVudHMgaWRlbnRpY2Fs bHkuICAqLworCitQU0VVRE8gKF9fcHJjdGwsIHByY3RsLCA1KQorCXJldAorUFNFVURPX0VORCAo X19wcmN0bCkKKworaGlkZGVuX2RlZiAoX19wcmN0bCkKK3dlYWtfYWxpYXMgKF9fcHJjdGwsIHBy Y3RsKQpkaWZmIC0tZ2l0IGEvc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L3gzMi9wcmN0 bC5TIGIvc3lzZGVwcy91bml4L3N5c3YvbGludXgveDg2XzY0L3gzMi9wcmN0bC5TCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjVhY2Y1NDA2YTgKLS0tIC9kZXYvbnVsbAor KysgYi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQveDMyL3ByY3RsLlMKQEAgLTAsMCAr MSwyOCBAQAorLyogcHJjdGwgLSBMaW51eCBzcGVjaWZpYyBzeXNjYWxsLiAgTGludXgveDMyIHZl cnNpb24uCisgICBDb3B5cmlnaHQgKEMpIDIwMjAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgR05VIEMgTGlicmFyeS4KKworICAgVGhl IEdOVSBDIExpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yCisgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdl bmVyYWwgUHVibGljCisgICBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAo YXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICBUaGUgR05VIEMgTGlicmFy eSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAg YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu dHkgb2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS UE9TRS4gIFNlZSB0aGUgR05VCisgICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig bW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgICBMaWNlbnNlIGFsb25nIHdpdGggdGhlIEdO VSBDIExpYnJhcnk7IGlmIG5vdCwgc2VlCisgICA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNl cy8+LiAgKi8KKworI2luY2x1ZGUgPHN5c2RlcC5oPgorCisvKiBPbiBMaW51eC94MzIsIHdlIG5l ZWQgdG8gemVyby1leHRlbmQgZnJvbSAzMiBiaXRzIHRvIDY0IGJpdHMgZm9yIHRoZQorICAgbGFz dCA0IGFyZ3VtZW50cy4gICovCisKKyN1bmRlZiBET0FSR1NfNQorI2RlZmluZSBET0FSR1NfNSBc CisgIG1vdmwgJWVzaSwgJWVzaTsgbW92bCAlZWR4LCAlZWR4OyBtb3ZsICVlY3gsICVyMTBkOyBt b3ZsICVyOGQsICVyOGQ7CisKKyNpbmNsdWRlIDxzeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODYv cHJjdGwuUz4KLS0gCjIuMjYuMgoK --000000000000d4124105a483b7a8--