From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-il1-x133.google.com (mail-il1-x133.google.com [IPv6:2607:f8b0:4864:20::133]) by sourceware.org (Postfix) with ESMTPS id 35C993951883 for ; Tue, 29 Sep 2020 11:45:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 35C993951883 Received: by mail-il1-x133.google.com with SMTP id y2so4542774ila.0 for ; Tue, 29 Sep 2020 04:45:27 -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=37YdEZ/hVMFRQH9lpDPAi4QVr7LCeVLaRE+tfPTAgBs=; b=rOzSDFeHu3wCTaJAurlD6czxOWmIXhQOSc8AOBcdAT5ZwJFHbpyIM3Bi8g96s/sA6f +NKeMGCL9VRHYH7AGctshI+R/QEP49qsmuMF3FufvuWObrnBaETQxO8w3uuXRSGazLVn w0HpF0K+vlQDjlXRam4tA+njU7mmdDBqxYa1Ixl3oivmyzoyzuz5PDx6triZaOmZUfZU 6O1GHdGJPQl9vRbOxIvudEat2oiXf97IbKr8LhCz+4JFvp55Skn8RZfomi9+bymon6B7 +Y4o3GenNMai1/0s3GZYho8bEycoC5mTivYK6Yc0mwBKHU8K8GOOYQ1MxBcpA0EBbZkw NYjw== X-Gm-Message-State: AOAM532s0iboQfhmf9YxK5EWlNFEHIbeYvWOto+ZXq7nE9FEvIEbRkiu 7FPeYSk1I8+6fGzXm1xShcA3WmY14V8lr78BWOU= X-Google-Smtp-Source: ABdhPJx5TcUwh+IkCCcicq/4v6v+wpve4ltoLAnI7KcJeq+cIQn5qKLUlOrbBuK/bZssrs8jj7nJ/kjtofV1rsnS7YQ= X-Received: by 2002:a92:1589:: with SMTP id 9mr2687449ilv.292.1601379926323; Tue, 29 Sep 2020 04:45:26 -0700 (PDT) MIME-Version: 1.0 References: <20200918160709.949608-1-hjl.tools@gmail.com> <20200918160709.949608-2-hjl.tools@gmail.com> <87imby6obw.fsf@oldenburg2.str.redhat.com> <87y2ku574k.fsf@oldenburg2.str.redhat.com> <87lfgu56c8.fsf@oldenburg2.str.redhat.com> <87pn663qm5.fsf@oldenburg2.str.redhat.com> <87ft71yq64.fsf@oldenburg2.str.redhat.com> In-Reply-To: <87ft71yq64.fsf@oldenburg2.str.redhat.com> From: "H.J. Lu" Date: Tue, 29 Sep 2020 04:44:50 -0700 Message-ID: Subject: Re: V3 [PATCH] x86: Initialize CPU info via IFUNC relocation [BZ 26203] To: Florian Weimer Cc: "H.J. Lu via Libc-alpha" Content-Type: multipart/mixed; boundary="000000000000a96b9005b07251c7" X-Spam-Status: No, score=-3037.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, URIBL_BLACK 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: Tue, 29 Sep 2020 11:45:29 -0000 --000000000000a96b9005b07251c7 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Sep 29, 2020 at 12:53 AM Florian Weimer wrote: > > * H. J. Lu via Libc-alpha: > > > Here is the updated patch. Does it address your concerns? > > =E2=80=9Cgit am=E2=80=9D fails to apply it for me: > > Applying: x86: Initialize CPU info via IFUNC relocation [BZ 26203] > error: corrupt patch at line 41 > Patch failed at 0001 x86: Initialize CPU info via IFUNC relocation [BZ 26= 203] > > The patch program does not like it, either: > > patching file sysdeps/i386/dl-machine.h > patching file sysdeps/x86/cacheinfo.c > patch: **** malformed patch at line 73: @@ -770,6 +769,8 @@ init_cacheinf= o (void) > > I don't think it's the Red Hat mail system that's at fault this time. 8-/ > Here is the updated patch with the correct commit log. Thanks. --=20 H.J. --000000000000a96b9005b07251c7 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-x86-Initialize-CPU-info-via-IFUNC-relocation-BZ-2620.patch" Content-Disposition: attachment; filename="0001-x86-Initialize-CPU-info-via-IFUNC-relocation-BZ-2620.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kfnw7wp80 RnJvbSA4ZWU4ODRjZTZjMWE1MmMzYjg4MTU5ZWNkZWYzZjg0MDE3NDNhZDNjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhqbC50b29sc0BnbWFpbC5jb20+CkRhdGU6 IFNhdCwgNCBKdWwgMjAyMCAwNjozNTo0OSAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIHg4NjogSW5p dGlhbGl6ZSBDUFUgaW5mbyB2aWEgSUZVTkMgcmVsb2NhdGlvbiBbQlogMjYyMDNdCgpYODYgQ1BV IGZlYXR1cmVzIGluIGxkLnNvIGFyZSBpbml0aWFsaXplZCBieSBpbml0X2NwdV9mZWF0dXJlcywg d2hpY2ggaXMKaW52b2tlZCBieSBETF9QTEFURk9STV9JTklUIGZyb20gX2RsX3N5c2RlcF9zdGFy dC4gIEJ1dCB3aGVuIGxkLnNvIGlzCmxvYWRlZCBieSBzdGF0aWMgZXhlY3V0YWJsZSwgRExfUExB VEZPUk1fSU5JVCBpcyBuZXZlciBjYWxsZWQuICBBbHNvCng4NiBjYWNoZSBpbmZvIGluIGxpYmMu byBhbmQgbGliYy5hIGlzIGluaXRpYWxpemVkIGJ5IGEgY29uc3RydWN0b3IKd2hpY2ggbWF5IGJl IGNhbGxlZCB0b28gbGF0ZS4gIFNpbmNlIHNvbWUgZmllbGRzIGluIF9ydGxkX2dsb2JhbF9ybwpp biBsZC5zbyBhcmUgaW5pdGlhbGl6ZWQgYnkgZHluYW1pYyByZWxvY2F0aW9uLCB3ZSBjYW4gYWxz byBpbml0aWFsaXplCng4NiBDUFUgZmVhdHVyZXMgaW4gX3J0bGRfZ2xvYmFsX3JvIGluIGxkLnNv IGFuZCBjYWNoZSBpbmZvIGluIGxpYmMuc28KYnkgaW5pdGlhbGl6aW5nIGR1bW15IGZ1bmN0aW9u IHBvaW50ZXJzIGluIGxkLnNvIGFuZCBsaWJjLnNvIHZpYSBJRlVOQwpyZWxvY2F0aW9uLgoKS2V5 IHBvaW50czoKCjEuIElGVU5DIGlzIGFsd2F5cyBzdXBwb3J0ZWQsIGluZGVwZW5kZW50IG9mIC0t ZW5hYmxlLW11bHRpLWFyY2ggb3IKLS1kaXNhYmxlLW11bHRpLWFyY2guICBMaW5rZXIgZ2VuZXJh dGVzIElGVU5DIHJlbG9jYXRpb25zIGZyb20gaW5wdXQKSUZVTkMgb2JqZWN0cyBhbmQgbGQuc28g cGVyZm9ybXMgSUZVTkMgcmVsb2NhdGlvbnMuCjIuIFRoZXJlIGFyZSBubyBJRlVOQyBkZXBlbmRl bmNpZXMgaW4gbGQuc28gYmVmb3JlIGR5bmFtaWMgcmVsb2NhdGlvbgpoYXZlIGJlZW4gcGVyZm9y bWVkLAozLiBUaGUgeDg2IENQVSBmZWF0dXJlcyBpbiBsZC5zbyBpcyBpbml0aWFsaXplZCBieSBE TF9QTEFURk9STV9JTklUCmluIGR5bmFtaWMgZXhlY3V0YWJsZSBhbmQgYnkgSUZVTkMgcmVsb2Nh dGlvbiBpbiBkbG9wZW4gaW4gc3RhdGljCmV4ZWN1dGFibGUuCjQuIFRoZSB4ODYgY2FjaGUgaW5m byBpbiBsaWJjLm8gaXMgaW5pdGlhbGl6ZWQgYnkgSUZVTkMgcmVsb2NhdGlvbi4KNS4gSW4gbGli Yy5hLCBib3RoIHg4NiBDUFUgZmVhdHVyZXMgYW5kIGNhY2hlIGluZm8gYXJlIGluaXRpYWxpemVk IGZyb20KQVJDSF9JTklUX0NQVV9GRUFUVVJFUywgbm90IGJ5IElGVU5DIHJlbG9jYXRpb24sIGJl Zm9yZSBfX2xpYmNfZWFybHlfaW5pdAppcyBjYWxsZWQuCgpOb3RlOiBfZGxfeDg2X2luaXRfY3B1 X2ZlYXR1cmVzIGNhbiBiZSBjYWxsZWQgbW9yZSB0aGFuIG9uY2UgZnJvbQpETF9QTEFURk9STV9J TklUIGFuZCBkdXJpbmcgcmVsb2NhdGlvbiBpbiBsZC5zby4KLS0tCiBzeXNkZXBzL2kzODYvZGwt bWFjaGluZS5oICAgICAgICAgIHwgIDcgKysrLS0tLQogc3lzZGVwcy94ODYvY2FjaGVpbmZvLmMg ICAgICAgICAgICB8IDIxICsrKysrKysrKysrKysrKysrKystLQogc3lzZGVwcy94ODYvY3B1LWZl YXR1cmVzLmMgICAgICAgICB8IDEyICsrKysrKysrKysrLQogc3lzZGVwcy94ODYvZGwtZ2V0LWNw dS1mZWF0dXJlcy5jICB8IDI3ICsrKysrKysrKysrKysrKysrKysrKysrKysrLQogc3lzZGVwcy94 ODYvaW5jbHVkZS9jcHUtZmVhdHVyZXMuaCB8ICAxICsKIHN5c2RlcHMveDg2L2xpYmMtc3RhcnQu YyAgICAgICAgICAgfCAgMiArLQogc3lzZGVwcy94ODZfNjQvZGwtbWFjaGluZS5oICAgICAgICB8 ICA3ICsrKy0tLS0KIDcgZmlsZXMgY2hhbmdlZCwgNjQgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3lzZGVwcy9pMzg2L2RsLW1hY2hpbmUuaCBiL3N5c2RlcHMv aTM4Ni9kbC1tYWNoaW5lLmgKaW5kZXggMGYwODA3OWU0OC4uYmRjMjFkMWEzYyAxMDA2NDQKLS0t IGEvc3lzZGVwcy9pMzg2L2RsLW1hY2hpbmUuaAorKysgYi9zeXNkZXBzL2kzODYvZGwtbWFjaGlu ZS5oCkBAIC0yNSw3ICsyNSw2IEBACiAjaW5jbHVkZSA8c3lzZGVwLmg+CiAjaW5jbHVkZSA8dGxz Lmg+CiAjaW5jbHVkZSA8ZGwtdGxzZGVzYy5oPgotI2luY2x1ZGUgPGNwdS1mZWF0dXJlcy5jPgog CiAvKiBSZXR1cm4gbm9uemVybyBpZmYgRUxGIGhlYWRlciBpcyBjb21wYXRpYmxlIHdpdGggdGhl IHJ1bm5pbmcgaG9zdC4gICovCiBzdGF0aWMgaW5saW5lIGludCBfX2F0dHJpYnV0ZV9fICgodW51 c2VkKSkKQEAgLTI0OCw5ICsyNDcsOSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgX19hdHRyaWJ1dGVf XyAoKHVudXNlZCkpCiBkbF9wbGF0Zm9ybV9pbml0ICh2b2lkKQogewogI2lmIElTX0lOIChydGxk KQotICAvKiBpbml0X2NwdV9mZWF0dXJlcyBoYXMgYmVlbiBjYWxsZWQgZWFybHkgZnJvbSBfX2xp YmNfc3RhcnRfbWFpbiBpbgotICAgICBzdGF0aWMgZXhlY3V0YWJsZS4gICovCi0gIGluaXRfY3B1 X2ZlYXR1cmVzICgmR0xSTyhkbF94ODZfY3B1X2ZlYXR1cmVzKSk7CisgIC8qIF9kbF94ODZfaW5p dF9jcHVfZmVhdHVyZXMgaXMgYSB3cmFwcGVyIGZvciBpbml0X2NwdV9mZWF0dXJlcyB3aGljaAor ICAgICBoYXMgYmVlbiBjYWxsZWQgZWFybHkgZnJvbSBfX2xpYmNfc3RhcnRfbWFpbiBpbiBzdGF0 aWMgZXhlY3V0YWJsZS4gICovCisgIF9kbF94ODZfaW5pdF9jcHVfZmVhdHVyZXMgKCk7CiAjZWxz ZQogICBpZiAoR0xSTyhkbF9wbGF0Zm9ybSkgIT0gTlVMTCAmJiAqR0xSTyhkbF9wbGF0Zm9ybSkg PT0gJ1wwJykKICAgICAvKiBBdm9pZCBhbiBlbXB0eSBzdHJpbmcgd2hpY2ggd291bGQgZGlzdHVy YiB1cy4gICovCmRpZmYgLS1naXQgYS9zeXNkZXBzL3g4Ni9jYWNoZWluZm8uYyBiL3N5c2RlcHMv eDg2L2NhY2hlaW5mby5jCmluZGV4IGRhZGVjNWQ1OGYuLjY1YWIyOTEyM2QgMTAwNjQ0Ci0tLSBh L3N5c2RlcHMveDg2L2NhY2hlaW5mby5jCisrKyBiL3N5c2RlcHMveDg2L2NhY2hlaW5mby5jCkBA IC0xNiw3ICsxNiw5IEBACiAgICBMaWNlbnNlIGFsb25nIHdpdGggdGhlIEdOVSBDIExpYnJhcnk7 IGlmIG5vdCwgc2VlCiAgICA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8KIAot I2lmIElTX0lOIChsaWJjKQorLyogTkI6IEluIGxpYmMuYSwgdGhpcyBmaWxlIGlzIGluY2x1ZGVk IGluIGxpYmMtc3RhdGljLmMuICBJbiBsaWJjLnNvLAorICAgdGhpcyBmaWxlIGlzIHN0YW5kYWxv bmUuICAqLworI2lmIElTX0lOIChsaWJjKSAmJiAoZGVmaW5lZCBTSEFSRUQgfHwgZGVmaW5lZCBf UFJJVkFURV9DUFVfRkVBVFVSRVNfSCkKIAogI2luY2x1ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUg PHN0ZGJvb2wuaD4KQEAgLTc1Niw3ICs3NTgsNiBAQCBpbnRlbF9idWdfbm9fY2FjaGVfaW5mbzoK IAogCiBzdGF0aWMgdm9pZAotX19hdHRyaWJ1dGVfXygoY29uc3RydWN0b3IpKQogaW5pdF9jYWNo ZWluZm8gKHZvaWQpCiB7CiAgIC8qIEZpbmQgb3V0IHdoYXQgYnJhbmQgb2YgcHJvY2Vzc29yLiAg Ki8KQEAgLTc3MCw2ICs3NzEsMTIgQEAgaW5pdF9jYWNoZWluZm8gKHZvaWQpCiAgIHVuc2lnbmVk IGludCB0aHJlYWRzID0gMDsKICAgY29uc3Qgc3RydWN0IGNwdV9mZWF0dXJlcyAqY3B1X2ZlYXR1 cmVzID0gX19nZXRfY3B1X2ZlYXR1cmVzICgpOwogCisgIC8qIE5COiBJbiBsaWJjLnNvLCBjcHVf ZmVhdHVyZXMgaXMgZGVmaW5lZCBpbiBsZC5zbyBhbmQgaXMgaW5pdGlhbGl6ZWQKKyAgICAgYnkg RExfUExBVEZPUk1fSU5JVCBvciBJRlVOQyByZWxvY2F0aW9uIGJlZm9yZSBpbml0X2NhY2hlaW5m byBpcworICAgICBjYWxsZWQgYnkgSUZVTkMgcmVsb2NhdGlvbi4gIEluIGxpYmMuYSwgaW5pdF9j YWNoZWluZm8gaXMgY2FsbGVkCisgICAgIGZyb20gaW5pdF9jcHVfZmVhdHVyZXMgYnkgQVJDSF9J TklUX0NQVV9GRUFUVVJFUy4gICovCisgIGFzc2VydCAoY3B1X2ZlYXR1cmVzLT5iYXNpYy5raW5k ICE9IGFyY2hfa2luZF91bmtub3duKTsKKwogICBpZiAoY3B1X2ZlYXR1cmVzLT5iYXNpYy5raW5k ID09IGFyY2hfa2luZF9pbnRlbCkKICAgICB7CiAgICAgICBkYXRhID0gaGFuZGxlX2ludGVsIChf U0NfTEVWRUwxX0RDQUNIRV9TSVpFLCBjcHVfZmVhdHVyZXMpOwpAQCAtOTAwLDQgKzkwNywxNCBA QCBpbml0X2NhY2hlaW5mbyAodm9pZCkKICMgZW5kaWYKIH0KIAorIyBpZmRlZiBTSEFSRUQKKy8q IE5COiBJbiBsaWJjLnNvLCBjYWxsIGluaXRfY2FjaGVpbmZvIGJ5IGluaXRpYWxpemluZyBhIGR1 bW15IGZ1bmN0aW9uCisgICBwb2ludGVyIHZpYSBJRlVOQyByZWxvY2F0aW9uIGFmdGVyIENQVSBm ZWF0dXJlcyBpbiBsZC5zbyBoYXZlIGJlZW4KKyAgIGluaXRpYWxpemVkIGJ5IERMX1BMQVRGT1JN X0lOSVQgb3IgSUZVTkMgcmVsb2NhdGlvbi4gICovCitleHRlcm4gdm9pZCBfX3g4Nl9jYWNoZWlu Zm8gKHZvaWQpIGF0dHJpYnV0ZV9oaWRkZW47Citjb25zdCB2b2lkICgqX194ODZfY2FjaGVpbmZv X3ApICh2b2lkKSBhdHRyaWJ1dGVfaGlkZGVuCisgID0gX194ODZfY2FjaGVpbmZvOworCitfX2lm dW5jIChfX3g4Nl9jYWNoZWluZm8sIF9feDg2X2NhY2hlaW5mbywgTlVMTCwgdm9pZCwgaW5pdF9j YWNoZWluZm8pOworIyBlbmRpZgogI2VuZGlmCmRpZmYgLS1naXQgYS9zeXNkZXBzL3g4Ni9jcHUt ZmVhdHVyZXMuYyBiL3N5c2RlcHMveDg2L2NwdS1mZWF0dXJlcy5jCmluZGV4IDY1NTFkZjE5YzAu Ljg3NGNlOWM4ODYgMTAwNjQ0Ci0tLSBhL3N5c2RlcHMveDg2L2NwdS1mZWF0dXJlcy5jCisrKyBi L3N5c2RlcHMveDg2L2NwdS1mZWF0dXJlcy5jCkBAIC0xNiw3ICsxNiwxMiBAQAogICAgTGljZW5z ZSBhbG9uZyB3aXRoIHRoZSBHTlUgQyBMaWJyYXJ5OyBpZiBub3QsIHNlZQogICAgPGh0dHBzOi8v d3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCiAKLSNpbmNsdWRlIDxjcHVpZC5oPgorI2lmZGVm IFNIQVJFRAorLyogTkI6IFdvcmthcm91bmQgdGhlIEdDQyA8Y3B1aWQuaD4gYnVnOgorCWh0dHBz Oi8vZ2NjLmdudS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTk2MjM4CisgKi8KKyMgaW5j bHVkZSA8Y3B1aWQuaD4KKyNlbmRpZgogI2luY2x1ZGUgPGNwdS1mZWF0dXJlcy5oPgogI2luY2x1 ZGUgPGRsLWh3Y2FwLmg+CiAjaW5jbHVkZSA8bGliYy1wb2ludGVyLWFyaXRoLmg+CkBAIC03NDYs NCArNzUxLDkgQEAgbm9fY3B1aWQ6CiAjIGVuZGlmCiAgICAgfQogI2VuZGlmCisKKyNpZm5kZWYg U0hBUkVECisgIC8qIE5COiBJbiBsaWJjLmEsIGNhbGwgaW5pdF9jYWNoZWluZm8uICAqLworICBp bml0X2NhY2hlaW5mbyAoKTsKKyNlbmRpZgogfQpkaWZmIC0tZ2l0IGEvc3lzZGVwcy94ODYvZGwt Z2V0LWNwdS1mZWF0dXJlcy5jIGIvc3lzZGVwcy94ODYvZGwtZ2V0LWNwdS1mZWF0dXJlcy5jCmlu ZGV4IDVmOWU0NmIwYzYuLjM0OTQ3MmQ5OWYgMTAwNjQ0Ci0tLSBhL3N5c2RlcHMveDg2L2RsLWdl dC1jcHUtZmVhdHVyZXMuYworKysgYi9zeXNkZXBzL3g4Ni9kbC1nZXQtY3B1LWZlYXR1cmVzLmMK QEAgLTEsNCArMSw0IEBACi0vKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgR05VIEMgTGlicmFy eS4KKy8qIEluaXRpYWxpemUgQ1BVIGZlYXR1cmUgZGF0YSB2aWEgSUZVTkMgcmVsb2NhdGlvbi4K ICAgIENvcHlyaWdodCAoQykgMjAxNS0yMDIwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j LgogCiAgICBUaGUgR05VIEMgTGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IKQEAgLTE4LDYgKzE4LDMxIEBACiAKICNpbmNsdWRlIDxsZHNvZGVm cy5oPgogCisjaWZkZWYgU0hBUkVECisjIGluY2x1ZGUgPGNwdS1mZWF0dXJlcy5jPgorCisvKiBO QjogTm9ybWFsbHksIERMX1BMQVRGT1JNX0lOSVQgY2FsbHMgaW5pdF9jcHVfZmVhdHVyZXMgdG8g aW5pdGlhbGl6ZQorICAgQ1BVIGZlYXR1cmVzIGluIGR5bmFtaWMgZXhlY3V0YWJsZS4gIEJ1dCB3 aGVuIGxvYWRpbmcgbGQuc28gaW5zaWRlIG9mCisgICBzdGF0aWMgZXhlY3V0YWJsZSwgRExfUExB VEZPUk1fSU5JVCBpc24ndCBjYWxsZWQgYW5kIElGVU5DIHJlbG9jYXRpb24KKyAgIGlzIHVzZWQg dG8gY2FsbCBpbml0X2NwdV9mZWF0dXJlcy4gIEluIHN0YXRpYyBleGVjdXRhYmxlLCBpdCBpcyBj YWxsZWQKKyAgIG9uY2UgYnkgSUZVTkMgcmVsb2NhdGlvbi4gIEluIGR5bmFtaWMgZXhlY3V0YWJs ZSwgaXQgaXMgY2FsbGVkIHR3aWNlCisgICBieSBETF9QTEFURk9STV9JTklUIGFuZCBieSBJRlVO QyByZWxvY2F0aW9uLiAgKi8KK2V4dGVybiB2b2lkIF9feDg2X2NwdV9mZWF0dXJlcyAodm9pZCkg YXR0cmlidXRlX2hpZGRlbjsKK2NvbnN0IHZvaWQgKCpfX3g4Nl9jcHVfZmVhdHVyZXNfcCkgKHZv aWQpIGF0dHJpYnV0ZV9oaWRkZW4KKyAgPSBfX3g4Nl9jcHVfZmVhdHVyZXM7CisKK3ZvaWQKK19k bF94ODZfaW5pdF9jcHVfZmVhdHVyZXMgKHZvaWQpCit7CisgIHN0cnVjdCBjcHVfZmVhdHVyZXMg KmNwdV9mZWF0dXJlcyA9IF9fZ2V0X2NwdV9mZWF0dXJlcyAoKTsKKyAgaWYgKGNwdV9mZWF0dXJl cy0+YmFzaWMua2luZCA9PSBhcmNoX2tpbmRfdW5rbm93bikKKyAgICBpbml0X2NwdV9mZWF0dXJl cyAoY3B1X2ZlYXR1cmVzKTsKK30KKworX19pZnVuYyAoX194ODZfY3B1X2ZlYXR1cmVzLCBfX3g4 Nl9jcHVfZmVhdHVyZXMsIE5VTEwsIHZvaWQsCisJIF9kbF94ODZfaW5pdF9jcHVfZmVhdHVyZXMp OworI2VuZGlmCisKICN1bmRlZiBfX3g4Nl9nZXRfY3B1X2ZlYXR1cmVzCiAKIGNvbnN0IHN0cnVj dCBjcHVfZmVhdHVyZXMgKgpkaWZmIC0tZ2l0IGEvc3lzZGVwcy94ODYvaW5jbHVkZS9jcHUtZmVh dHVyZXMuaCBiL3N5c2RlcHMveDg2L2luY2x1ZGUvY3B1LWZlYXR1cmVzLmgKaW5kZXggZGNmMjli NmZlOC4uZjYyYmUwYjliMyAxMDA2NDQKLS0tIGEvc3lzZGVwcy94ODYvaW5jbHVkZS9jcHUtZmVh dHVyZXMuaAorKysgYi9zeXNkZXBzL3g4Ni9pbmNsdWRlL2NwdS1mZWF0dXJlcy5oCkBAIC0xNTks NiArMTU5LDcgQEAgc3RydWN0IGNwdV9mZWF0dXJlcwogLyogVW51c2VkIGZvciB4ODYuICAqLwog IyAgZGVmaW5lIElOSVRfQVJDSCgpCiAjICBkZWZpbmUgX194ODZfZ2V0X2NwdV9mZWF0dXJlcyht YXgpICgmR0xSTyhkbF94ODZfY3B1X2ZlYXR1cmVzKSkKK2V4dGVybiB2b2lkIF9kbF94ODZfaW5p dF9jcHVfZmVhdHVyZXMgKHZvaWQpIGF0dHJpYnV0ZV9oaWRkZW47CiAjIGVuZGlmCiAKICMgaWZk ZWYgX194ODZfNjRfXwpkaWZmIC0tZ2l0IGEvc3lzZGVwcy94ODYvbGliYy1zdGFydC5jIGIvc3lz ZGVwcy94ODYvbGliYy1zdGFydC5jCmluZGV4IDg3NWJiOTNlNTUuLjRmNzJmY2YzOTcgMTAwNjQ0 Ci0tLSBhL3N5c2RlcHMveDg2L2xpYmMtc3RhcnQuYworKysgYi9zeXNkZXBzL3g4Ni9saWJjLXN0 YXJ0LmMKQEAgLTIwLDcgKzIwLDcgQEAKICAgIFBJRS4gICovCiAjIGluY2x1ZGUgPHN0YXJ0dXAu aD4KICMgaW5jbHVkZSA8bGRzb2RlZnMuaD4KLSMgaW5jbHVkZSA8Y3B1LWZlYXR1cmVzLmg+Cisj IGluY2x1ZGUgPGNhY2hlaW5mby5jPgogIyBpbmNsdWRlIDxjcHUtZmVhdHVyZXMuYz4KIAogZXh0 ZXJuIHN0cnVjdCBjcHVfZmVhdHVyZXMgX2RsX3g4Nl9jcHVfZmVhdHVyZXM7CmRpZmYgLS1naXQg YS9zeXNkZXBzL3g4Nl82NC9kbC1tYWNoaW5lLmggYi9zeXNkZXBzL3g4Nl82NC9kbC1tYWNoaW5l LmgKaW5kZXggY2E3M2Q4ZmVmOS4uYmI5M2M3YzZhYiAxMDA2NDQKLS0tIGEvc3lzZGVwcy94ODZf NjQvZGwtbWFjaGluZS5oCisrKyBiL3N5c2RlcHMveDg2XzY0L2RsLW1hY2hpbmUuaApAQCAtMjYs NyArMjYsNiBAQAogI2luY2x1ZGUgPHN5c2RlcC5oPgogI2luY2x1ZGUgPHRscy5oPgogI2luY2x1 ZGUgPGRsLXRsc2Rlc2MuaD4KLSNpbmNsdWRlIDxjcHUtZmVhdHVyZXMuYz4KIAogLyogUmV0dXJu IG5vbnplcm8gaWZmIEVMRiBoZWFkZXIgaXMgY29tcGF0aWJsZSB3aXRoIHRoZSBydW5uaW5nIGhv c3QuICAqLwogc3RhdGljIGlubGluZSBpbnQgX19hdHRyaWJ1dGVfXyAoKHVudXNlZCkpCkBAIC0y MjMsOSArMjIyLDkgQEAgc3RhdGljIGlubGluZSB2b2lkIF9fYXR0cmlidXRlX18gKCh1bnVzZWQp KQogZGxfcGxhdGZvcm1faW5pdCAodm9pZCkKIHsKICNpZiBJU19JTiAocnRsZCkKLSAgLyogaW5p dF9jcHVfZmVhdHVyZXMgaGFzIGJlZW4gY2FsbGVkIGVhcmx5IGZyb20gX19saWJjX3N0YXJ0X21h aW4gaW4KLSAgICAgc3RhdGljIGV4ZWN1dGFibGUuICAqLwotICBpbml0X2NwdV9mZWF0dXJlcyAo JkdMUk8oZGxfeDg2X2NwdV9mZWF0dXJlcykpOworICAvKiBfZGxfeDg2X2luaXRfY3B1X2ZlYXR1 cmVzIGlzIGEgd3JhcHBlciBmb3IgaW5pdF9jcHVfZmVhdHVyZXMgd2hpY2gKKyAgICAgaGFzIGJl ZW4gY2FsbGVkIGVhcmx5IGZyb20gX19saWJjX3N0YXJ0X21haW4gaW4gc3RhdGljIGV4ZWN1dGFi bGUuICAqLworICBfZGxfeDg2X2luaXRfY3B1X2ZlYXR1cmVzICgpOwogI2Vsc2UKICAgaWYgKEdM Uk8oZGxfcGxhdGZvcm0pICE9IE5VTEwgJiYgKkdMUk8oZGxfcGxhdGZvcm0pID09ICdcMCcpCiAg ICAgLyogQXZvaWQgYW4gZW1wdHkgc3RyaW5nIHdoaWNoIHdvdWxkIGRpc3R1cmIgdXMuICAqLwot LSAKMi4yNi4yCgo= --000000000000a96b9005b07251c7--