From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 668D6C4CECE for ; Fri, 13 Sep 2019 19:29:14 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2A5B1214DA for ; Fri, 13 Sep 2019 19:29:14 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="P7zihcwf" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2A5B1214DA Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i8rEv-0006pR-FO; Fri, 13 Sep 2019 19:28:17 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i8rEu-0006oV-5B for xen-devel@lists.xenproject.org; Fri, 13 Sep 2019 19:28:16 +0000 X-Inumbo-ID: 9c5bdef9-d65c-11e9-95b9-12813bfff9fa Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 9c5bdef9-d65c-11e9-95b9-12813bfff9fa; Fri, 13 Sep 2019 19:28:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1568402887; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=NSxqpz48anlJu4u5FGAeqGGWrRboyp0W0USHGtqzIOs=; b=P7zihcwfgPFHDLz+mj+LJynSDtnBK1DUswNCUqYlegCJJrba+z6+72pn RpixRtI6fvFpF56Wy1T9he6o46Z1wj/DWNtwSnVkDWf3qBmJbw/xtXn9g obDYwxH5M4twArFW30tV457KyIk2D+4ngSF3ig6DXywwdZJfC53hsO+oE g=; Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=andrew.cooper3@citrix.com; spf=Pass smtp.mailfrom=Andrew.Cooper3@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa2.hc3370-68.iphmx.com: no sender authenticity information available from domain of andrew.cooper3@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa2.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="andrew.cooper3@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa2.hc3370-68.iphmx.com: domain of Andrew.Cooper3@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa2.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="Andrew.Cooper3@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ~all" Received-SPF: None (esa2.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa2.hc3370-68.iphmx.com; envelope-from="Andrew.Cooper3@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: OSV/0nXyCGimodPvZaoMV4fyXYQIMxmQt9uu+/kaubKB+nvrxcH1Rcjd/VrResoPxIZBAPJ0IF slWvfp+hHfZglRxbr0jBWld/HSbtZLHqVNSEfw06q7Ez1RTRJjCTeIJvtYLQCVP2ksb97eD+S6 HVbdh+V/n91WqGutauAfJ/MKLGKqysByHuAVBOa7mtIlbTwEAUKgQyufMgpD7ZQqApOQre3s8f mUPFmfqMzo+XdCYVBcxPymzNpnc6Jtm0sNtIdrPiUpUwLZCu3d32vi3J2WgGG+FuyBRFUaJJQw XMA= X-SBRS: 2.7 X-MesageID: 5553059 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.64,501,1559534400"; d="scan'208";a="5553059" From: Andrew Cooper To: Xen-devel Date: Fri, 13 Sep 2019 20:27:52 +0100 Message-ID: <20190913192759.10795-4-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20190913192759.10795-1-andrew.cooper3@citrix.com> References: <20190913192759.10795-1-andrew.cooper3@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH v2 03/10] libx86: Introduce x86_cpu_policies_are_compatible() X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Andrew Cooper , Wei Liu , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" VGhpcyBoZWxwZXIgd2lsbCBldmVudHVhbGx5IGJlIHRoZSBjb3JlICJjYW4gYSBndWVzdCBjb25m aWd1cmVkIGxpa2UgdGhpcyBydW4Kb24gdGhlIENQVT8iIGxvZ2ljLiAgRm9yIG5vdywgaXQgaXMg anVzdCBlbm91Z2ggb2YgYSBzdHViIHRvIGFsbG93IHVzIHRvCnJlcGxhY2UgdGhlIGh5cGVyY2Fs bCBpbnRlcmZhY2Ugd2hpbGUgcmV0YWluaW5nIHRoZSBwcmV2aW91cyBiZWhhdmlvdXIuCgpJdCB3 aWxsIGJlIGV4cGFuZGVkIGFzIHZhcmlvdXMgb3RoZXIgYml0cyBvZiBDUFVJRCBoYW5kbGluZyBn ZXQgY2xlYW5lZCB1cC4KClNpZ25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w ZXIzQGNpdHJpeC5jb20+ClJldmlld2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5j b20+Ci0tLQpDQzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPgpDQzogV2VpIExpdSA8 d2xAeGVuLm9yZz4KQ0M6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgoK djI6CiAqIFJlYmFzZSBvdmVyICdwbGFmb3JtJyB0eXBvIGZpeAogKiBQcm9hY3RpdmVseSBpbml0 aWFsaXNlIHRoZSBlcnJvciBwb2ludGVyCiAqIEV4cGFuZCB0aGUgZnVuY3Rpb24gZG9jdW1lbnRh dGlvbgotLS0KIHRvb2xzL3Rlc3RzL2NwdS1wb2xpY3kvTWFrZWZpbGUgICAgICAgICAgfCAgIDIg Ky0KIHRvb2xzL3Rlc3RzL2NwdS1wb2xpY3kvdGVzdC1jcHUtcG9saWN5LmMgfCAxMTEgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLQogeGVuL2luY2x1ZGUveGVuL2xpYi94ODYvY3B1LXBv bGljeS5oICAgICB8ICAyNiArKysrKysrKwogeGVuL2xpYi94ODYvTWFrZWZpbGUgICAgICAgICAg ICAgICAgICAgICB8ICAgMSArCiB4ZW4vbGliL3g4Ni9wb2xpY3kuYyAgICAgICAgICAgICAgICAg ICAgIHwgIDU0ICsrKysrKysrKysrKysrKwogNSBmaWxlcyBjaGFuZ2VkLCAxOTEgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vbGliL3g4Ni9wb2xp Y3kuYwoKZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3RzL2NwdS1wb2xpY3kvTWFrZWZpbGUgYi90b29s cy90ZXN0cy9jcHUtcG9saWN5L01ha2VmaWxlCmluZGV4IGZiNTQ4YzliOWEuLjcwZmYxNTRkYTYg MTAwNjQ0Ci0tLSBhL3Rvb2xzL3Rlc3RzL2NwdS1wb2xpY3kvTWFrZWZpbGUKKysrIGIvdG9vbHMv dGVzdHMvY3B1LXBvbGljeS9NYWtlZmlsZQpAQCAtMzksNyArMzksNyBAQCBDRkxBR1MgKz0gJChB UFBFTkRfQ0ZMQUdTKQogCiB2cGF0aCAlLmMgLi4vLi4vLi4veGVuL2xpYi94ODYKIAotdGVzdC1j cHUtcG9saWN5OiB0ZXN0LWNwdS1wb2xpY3kubyBtc3IubyBjcHVpZC5vCit0ZXN0LWNwdS1wb2xp Y3k6IHRlc3QtY3B1LXBvbGljeS5vIG1zci5vIGNwdWlkLm8gcG9saWN5Lm8KIAkkKENDKSAkKENG TEFHUykgJF4gLW8gJEAKIAogLWluY2x1ZGUgJChERVBTX0lOQ0xVREUpCmRpZmYgLS1naXQgYS90 b29scy90ZXN0cy9jcHUtcG9saWN5L3Rlc3QtY3B1LXBvbGljeS5jIGIvdG9vbHMvdGVzdHMvY3B1 LXBvbGljeS90ZXN0LWNwdS1wb2xpY3kuYwppbmRleCAyMDEzNThkMjEwLi4yMGViZWQ5MjNiIDEw MDY0NAotLS0gYS90b29scy90ZXN0cy9jcHUtcG9saWN5L3Rlc3QtY3B1LXBvbGljeS5jCisrKyBi L3Rvb2xzL3Rlc3RzL2NwdS1wb2xpY3kvdGVzdC1jcHUtcG9saWN5LmMKQEAgLTksOCArOSw3IEBA CiAKICNpbmNsdWRlIDx4ZW4tdG9vbHMvbGlicy5oPgogI2luY2x1ZGUgPHhlbi9hc20veDg2LXZl bmRvcnMuaD4KLSNpbmNsdWRlIDx4ZW4vbGliL3g4Ni9jcHVpZC5oPgotI2luY2x1ZGUgPHhlbi9s aWIveDg2L21zci5oPgorI2luY2x1ZGUgPHhlbi9saWIveDg2L2NwdS1wb2xpY3kuaD4KICNpbmNs dWRlIDx4ZW4vZG9tY3RsLmg+CiAKIHN0YXRpYyB1bnNpZ25lZCBpbnQgbnJfZmFpbHVyZXM7CkBA IC01MDMsNiArNTAyLDExMSBAQCBzdGF0aWMgdm9pZCB0ZXN0X2NwdWlkX291dF9vZl9yYW5nZV9j bGVhcmluZyh2b2lkKQogICAgIH0KIH0KIAorc3RhdGljIHZvaWQgdGVzdF9pc19jb21wYXRpYmxl X3N1Y2Nlc3Modm9pZCkKK3sKKyAgICBzdGF0aWMgc3RydWN0IHRlc3QgeworICAgICAgICBjb25z dCBjaGFyICpuYW1lOworICAgICAgICBzdHJ1Y3QgY3B1aWRfcG9saWN5IGhvc3RfY3B1aWQ7Cisg ICAgICAgIHN0cnVjdCBjcHVpZF9wb2xpY3kgZ3Vlc3RfY3B1aWQ7CisgICAgICAgIHN0cnVjdCBt c3JfcG9saWN5IGhvc3RfbXNyOworICAgICAgICBzdHJ1Y3QgbXNyX3BvbGljeSBndWVzdF9tc3I7 CisgICAgfSB0ZXN0c1tdID0geworICAgICAgICB7CisgICAgICAgICAgICAubmFtZSA9ICJIb3N0 IENQVUlEIGZhdWx0aW5nLCBHdWVzdCBub3QiLAorICAgICAgICAgICAgLmhvc3RfbXNyID0gewor ICAgICAgICAgICAgICAgIC5wbGF0Zm9ybV9pbmZvLmNwdWlkX2ZhdWx0aW5nID0gdHJ1ZSwKKyAg ICAgICAgICAgIH0sCisgICAgICAgIH0sCisgICAgICAgIHsKKyAgICAgICAgICAgIC5uYW1lID0g Ikhvc3QgQ1BVSUQgZmF1bHRpbmcsIEd1ZXN0IHdhbnRlZCIsCisgICAgICAgICAgICAuaG9zdF9t c3IgPSB7CisgICAgICAgICAgICAgICAgLnBsYXRmb3JtX2luZm8uY3B1aWRfZmF1bHRpbmcgPSB0 cnVlLAorICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIC5ndWVzdF9tc3IgPSB7CisgICAgICAg ICAgICAgICAgLnBsYXRmb3JtX2luZm8uY3B1aWRfZmF1bHRpbmcgPSB0cnVlLAorICAgICAgICAg ICAgfSwKKyAgICAgICAgfSwKKyAgICB9OworICAgIHN0cnVjdCBjcHVfcG9saWN5X2Vycm9ycyBu b19lcnJvcnMgPSBJTklUX0NQVV9QT0xJQ1lfRVJST1JTOworCisgICAgcHJpbnRmKCJUZXN0aW5n IHBvbGljeSBjb21wYXRpYmlsaXR5IHN1Y2Nlc3M6XG4iKTsKKworICAgIGZvciAoIHNpemVfdCBp ID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMpOyArK2kgKQorICAgIHsKKyAgICAgICAgc3RydWN0 IHRlc3QgKnQgPSAmdGVzdHNbaV07CisgICAgICAgIHN0cnVjdCBjcHVfcG9saWN5IHN5cyA9IHsK KyAgICAgICAgICAgICZ0LT5ob3N0X2NwdWlkLAorICAgICAgICAgICAgJnQtPmhvc3RfbXNyLAor ICAgICAgICB9LCBuZXcgPSB7CisgICAgICAgICAgICAmdC0+Z3Vlc3RfY3B1aWQsCisgICAgICAg ICAgICAmdC0+Z3Vlc3RfbXNyLAorICAgICAgICB9OworICAgICAgICBzdHJ1Y3QgY3B1X3BvbGlj eV9lcnJvcnMgZTsKKyAgICAgICAgaW50IHJlcyA9IHg4Nl9jcHVfcG9saWNpZXNfYXJlX2NvbXBh dGlibGUoJnN5cywgJm5ldywgJmUpOworCisgICAgICAgIC8qIENoZWNrIHRoZSBleHBlY3RlZCBl cnJvciBvdXRwdXQuICovCisgICAgICAgIGlmICggcmVzICE9IDAgfHwgbWVtY21wKCZub19lcnJv cnMsICZlLCBzaXplb2Yobm9fZXJyb3JzKSkgKQorICAgICAgICAgICAgZmFpbCgiICBUZXN0ICcl cycgZXhwZWN0ZWQgbm8gZXJyb3JzXG4iCisgICAgICAgICAgICAgICAgICIgICAgZ290IHJlcyAl ZCB7IGxlYWYgJTA4eCwgc3VibGVhZiAlMDh4LCBtc3IgJTA4eCB9XG4iLAorICAgICAgICAgICAg ICAgICB0LT5uYW1lLCByZXMsIGUubGVhZiwgZS5zdWJsZWFmLCBlLm1zcik7CisgICAgfQorfQor CitzdGF0aWMgdm9pZCB0ZXN0X2lzX2NvbXBhdGlibGVfZmFpbHVyZSh2b2lkKQoreworICAgIHN0 YXRpYyBzdHJ1Y3QgdGVzdCB7CisgICAgICAgIGNvbnN0IGNoYXIgKm5hbWU7CisgICAgICAgIHN0 cnVjdCBjcHVpZF9wb2xpY3kgaG9zdF9jcHVpZDsKKyAgICAgICAgc3RydWN0IGNwdWlkX3BvbGlj eSBndWVzdF9jcHVpZDsKKyAgICAgICAgc3RydWN0IG1zcl9wb2xpY3kgaG9zdF9tc3I7CisgICAg ICAgIHN0cnVjdCBtc3JfcG9saWN5IGd1ZXN0X21zcjsKKyAgICAgICAgc3RydWN0IGNwdV9wb2xp Y3lfZXJyb3JzIGU7CisgICAgfSB0ZXN0c1tdID0geworICAgICAgICB7CisgICAgICAgICAgICAu bmFtZSA9ICJIb3N0IGJhc2ljLm1heF9sZWFmIG91dCBvZiByYW5nZSIsCisgICAgICAgICAgICAu Z3Vlc3RfY3B1aWQuYmFzaWMubWF4X2xlYWYgPSAxLAorICAgICAgICAgICAgLmUgPSB7IDAsIC0x LCAtMSB9LAorICAgICAgICB9LAorICAgICAgICB7CisgICAgICAgICAgICAubmFtZSA9ICJIb3N0 IGV4dGQubWF4X2xlYWYgb3V0IG9mIHJhbmdlIiwKKyAgICAgICAgICAgIC5ndWVzdF9jcHVpZC5l eHRkLm1heF9sZWFmID0gMSwKKyAgICAgICAgICAgIC5lID0geyAweDgwMDAwMDA4LCAtMSwgLTEg fSwKKyAgICAgICAgfSwKKyAgICAgICAgeworICAgICAgICAgICAgLm5hbWUgPSAiSG9zdCBubyBD UFVJRCBmYXVsdGluZywgR3Vlc3Qgd2FudGVkIiwKKyAgICAgICAgICAgIC5ndWVzdF9tc3IgPSB7 CisgICAgICAgICAgICAgICAgLnBsYXRmb3JtX2luZm8uY3B1aWRfZmF1bHRpbmcgPSB0cnVlLAor ICAgICAgICAgICAgfSwKKyAgICAgICAgICAgIC5lID0geyAtMSwgLTEsIDB4Y2UgfSwKKyAgICAg ICAgfSwKKyAgICB9OworCisgICAgcHJpbnRmKCJUZXN0aW5nIHBvbGljeSBjb21wYXRpYmlsaXR5 IGZhaWx1cmU6XG4iKTsKKworICAgIGZvciAoIHNpemVfdCBpID0gMDsgaSA8IEFSUkFZX1NJWkUo dGVzdHMpOyArK2kgKQorICAgIHsKKyAgICAgICAgc3RydWN0IHRlc3QgKnQgPSAmdGVzdHNbaV07 CisgICAgICAgIHN0cnVjdCBjcHVfcG9saWN5IHN5cyA9IHsKKyAgICAgICAgICAgICZ0LT5ob3N0 X2NwdWlkLAorICAgICAgICAgICAgJnQtPmhvc3RfbXNyLAorICAgICAgICB9LCBuZXcgPSB7Cisg ICAgICAgICAgICAmdC0+Z3Vlc3RfY3B1aWQsCisgICAgICAgICAgICAmdC0+Z3Vlc3RfbXNyLAor ICAgICAgICB9OworICAgICAgICBzdHJ1Y3QgY3B1X3BvbGljeV9lcnJvcnMgZTsKKyAgICAgICAg aW50IHJlcyA9IHg4Nl9jcHVfcG9saWNpZXNfYXJlX2NvbXBhdGlibGUoJnN5cywgJm5ldywgJmUp OworCisgICAgICAgIC8qIENoZWNrIHRoZSBleHBlY3RlZCBlcnJvciBvdXRwdXQuICovCisgICAg ICAgIGlmICggcmVzID09IDAgfHwgbWVtY21wKCZ0LT5lLCAmZSwgc2l6ZW9mKHQtPmUpKSApCisg ICAgICAgICAgICBmYWlsKCIgIFRlc3QgJyVzJyByZXMgJWRcbiIKKyAgICAgICAgICAgICAgICAg IiAgICBleHBlY3RlZCB7IGxlYWYgJTA4eCwgc3VibGVhZiAlMDh4LCBtc3IgJTA4eCB9XG4iCisg ICAgICAgICAgICAgICAgICIgICAgZ290ICAgICAgeyBsZWFmICUwOHgsIHN1YmxlYWYgJTA4eCwg bXNyICUwOHggfVxuIiwKKyAgICAgICAgICAgICAgICAgdC0+bmFtZSwgcmVzLAorICAgICAgICAg ICAgICAgICB0LT5lLmxlYWYsIHQtPmUuc3VibGVhZiwgdC0+ZS5tc3IsCisgICAgICAgICAgICAg ICAgIGUubGVhZiwgZS5zdWJsZWFmLCBlLm1zcik7CisgICAgfQorfQorCiBpbnQgbWFpbihpbnQg YXJnYywgY2hhciAqKmFyZ3YpCiB7CiAgICAgcHJpbnRmKCJDUFUgUG9saWN5IHVuaXQgdGVzdHNc biIpOwpAQCAtNTE2LDYgKzYyMCw5IEBAIGludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikK ICAgICB0ZXN0X21zcl9zZXJpYWxpc2Vfc3VjY2VzcygpOwogICAgIHRlc3RfbXNyX2Rlc2VyaWFs aXNlX2ZhaWx1cmUoKTsKIAorICAgIHRlc3RfaXNfY29tcGF0aWJsZV9zdWNjZXNzKCk7CisgICAg dGVzdF9pc19jb21wYXRpYmxlX2ZhaWx1cmUoKTsKKwogICAgIGlmICggbnJfZmFpbHVyZXMgKQog ICAgICAgICBwcmludGYoIkRvbmU6ICV1IGZhaWx1cmVzXG4iLCBucl9mYWlsdXJlcyk7CiAgICAg ZWxzZQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL2xpYi94ODYvY3B1LXBvbGljeS5oIGIv eGVuL2luY2x1ZGUveGVuL2xpYi94ODYvY3B1LXBvbGljeS5oCmluZGV4IDZmMDdjNGI0OTMuLmI3 ZTM4NzMyYTAgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9saWIveDg2L2NwdS1wb2xpY3ku aAorKysgYi94ZW4vaW5jbHVkZS94ZW4vbGliL3g4Ni9jcHUtcG9saWN5LmgKQEAgLTExLDYgKzEx LDMyIEBAIHN0cnVjdCBjcHVfcG9saWN5CiAgICAgc3RydWN0IG1zcl9wb2xpY3kgKm1zcjsKIH07 CiAKK3N0cnVjdCBjcHVfcG9saWN5X2Vycm9ycworeworICAgIHVpbnQzMl90IGxlYWYsIHN1Ymxl YWY7CisgICAgdWludDMyX3QgbXNyOworfTsKKworI2RlZmluZSBJTklUX0NQVV9QT0xJQ1lfRVJS T1JTIHsgfjB1LCB+MHUsIH4wdSB9CisKKy8qCisgKiBDYWxjdWxhdGUgd2hldGhlciB0d28gcG9s aWNpZXMgYXJlIGNvbXBhdGlibGUuCisgKgorICogaS5lLiBDYW4gYSBWTSBjb25maWd1cmVkIHdp dGggQGd1ZXN0IHJ1biBvbiBhIENQVSBzdXBwb3J0aW5nIEBob3N0LgorICoKKyAqIEBwYXJhbSBo b3N0ICAgICBBIGNwdV9wb2xpY3kgZGVzY3JpYmluZyB0aGUgaGFyZHdhcmUgY2FwYWJpbGl0aWVz LgorICogQHBhcmFtIGd1ZXN0ICAgIEEgY3B1X3BvbGljeSBkZXNjcmliaW5nIHRoZSBpbnRlbmRl ZCBWTSBjb25maWd1cmF0aW9uLgorICogQHBhcmFtIGVyciAgICAgIE9wdGlvbmFsIGhpbnQgZm9y IGVycm9yIGRpYWdub3N0aWNzLgorICogQHJldHVybnMgLWVycm5vCisgKgorICogRm9yIHR5cGlj YWwgdXNhZ2UsIEBob3N0IHNob3VsZCBiZSBhIHN5c3RlbSBwb2xpY3kuICBJbiB0aGUgY2FzZSB0 aGF0IGFuCisgKiBpbmNvbXBhdGliaWxpdHkgaXMgZGV0ZWN0ZWQsIHRoZSBvcHRpb25hbCBlcnIg cG9pbnRlciBtYXkgaWRlbnRpZnkgdGhlCisgKiBwcm9ibGVtYXRpYyBsZWFmL3N1YmxlYWYgYW5k L29yIE1TUi4KKyAqLworaW50IHg4Nl9jcHVfcG9saWNpZXNfYXJlX2NvbXBhdGlibGUoY29uc3Qg c3RydWN0IGNwdV9wb2xpY3kgKmhvc3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBzdHJ1Y3QgY3B1X3BvbGljeSAqZ3Vlc3QsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgY3B1X3BvbGljeV9lcnJvcnMgKmVycik7CisKICNlbmRp ZiAvKiAhWEVOX0xJQl9YODZfUE9MSUNJRVNfSCAqLwogCiAvKgpkaWZmIC0tZ2l0IGEveGVuL2xp Yi94ODYvTWFrZWZpbGUgYi94ZW4vbGliL3g4Ni9NYWtlZmlsZQppbmRleCAyZjk2OTFlOTY0Li43 ODBlYTA1ZGIxIDEwMDY0NAotLS0gYS94ZW4vbGliL3g4Ni9NYWtlZmlsZQorKysgYi94ZW4vbGli L3g4Ni9NYWtlZmlsZQpAQCAtMSwyICsxLDMgQEAKIG9iai15ICs9IGNwdWlkLm8KIG9iai15ICs9 IG1zci5vCitvYmoteSArPSBwb2xpY3kubwpkaWZmIC0tZ2l0IGEveGVuL2xpYi94ODYvcG9saWN5 LmMgYi94ZW4vbGliL3g4Ni9wb2xpY3kuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwLi4zM2EzNDdmZjliCi0tLSAvZGV2L251bGwKKysrIGIveGVuL2xpYi94ODYvcG9saWN5 LmMKQEAgLTAsMCArMSw1NCBAQAorI2luY2x1ZGUgInByaXZhdGUuaCIKKworI2luY2x1ZGUgPHhl bi9saWIveDg2L2NwdS1wb2xpY3kuaD4KKworaW50IHg4Nl9jcHVfcG9saWNpZXNfYXJlX2NvbXBh dGlibGUoY29uc3Qgc3RydWN0IGNwdV9wb2xpY3kgKmhvc3QsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgY3B1X3BvbGljeSAqZ3Vlc3QsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgY3B1X3BvbGljeV9lcnJvcnMgKmVy cikKK3sKKyAgICBzdHJ1Y3QgY3B1X3BvbGljeV9lcnJvcnMgZSA9IElOSVRfQ1BVX1BPTElDWV9F UlJPUlM7CisgICAgaW50IHJldCA9IC1FSU5WQUw7CisKKyAgICBpZiAoIGVyciApCisgICAgICAg ICplcnIgPSBlOworCisjZGVmaW5lIE5BIFhFTl9DUFVJRF9OT19TVUJMRUFGCisjZGVmaW5lIEZB SUxfQ1BVSUQobCwgcykgXAorICAgIGRvIHsgZS5sZWFmID0gKGwpOyBlLnN1YmxlYWYgPSAocyk7 IGdvdG8gb3V0OyB9IHdoaWxlICggMCApCisjZGVmaW5lIEZBSUxfTVNSKG0pIFwKKyAgICBkbyB7 IGUubXNyID0gKG0pOyBnb3RvIG91dDsgfSB3aGlsZSAoIDAgKQorCisgICAgaWYgKCBndWVzdC0+ Y3B1aWQtPmJhc2ljLm1heF9sZWFmID4gaG9zdC0+Y3B1aWQtPmJhc2ljLm1heF9sZWFmICkKKyAg ICAgICAgRkFJTF9DUFVJRCgwLCBOQSk7CisKKyAgICBpZiAoIGd1ZXN0LT5jcHVpZC0+ZXh0ZC5t YXhfbGVhZiA+IGhvc3QtPmNwdWlkLT5leHRkLm1heF9sZWFmICkKKyAgICAgICAgRkFJTF9DUFVJ RCgweDgwMDAwMDA4LCBOQSk7CisKKyAgICAvKiBUT0RPOiBBdWRpdCBtb3JlIENQVUlEIGRhdGEu ICovCisKKyAgICBpZiAoIH5ob3N0LT5tc3ItPnBsYXRmb3JtX2luZm8ucmF3ICYgZ3Vlc3QtPm1z ci0+cGxhdGZvcm1faW5mby5yYXcgKQorICAgICAgICBGQUlMX01TUihNU1JfSU5URUxfUExBVEZP Uk1fSU5GTyk7CisKKyN1bmRlZiBGQUlMX01TUgorI3VuZGVmIEZBSUxfQ1BVSUQKKyN1bmRlZiBO QQorCisgICAgLyogU3VjY2Vzcy4gKi8KKyAgICByZXQgPSAwOworCisgb3V0OgorICAgIGlmICgg cmV0ICYmIGVyciApCisgICAgICAgICplcnIgPSBlOworCisgICAgcmV0dXJuIHJldDsKK30KKwor LyoKKyAqIExvY2FsIHZhcmlhYmxlczoKKyAqIG1vZGU6IEMKKyAqIGMtZmlsZS1zdHlsZTogIkJT RCIKKyAqIGMtYmFzaWMtb2Zmc2V0OiA0CisgKiB0YWItd2lkdGg6IDQKKyAqIGluZGVudC10YWJz LW1vZGU6IG5pbAorICogRW5kOgorICovCi0tIAoyLjExLjAKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21h aWxtYW4vbGlzdGluZm8veGVuLWRldmVs