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.5 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 EC0AFC432C0 for ; Thu, 21 Nov 2019 18:51:49 +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 BC8C82067D for ; Thu, 21 Nov 2019 18:51:49 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mgv2U2M5" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BC8C82067D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=xen.org 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 1iXrYF-0007O9-95; Thu, 21 Nov 2019 18:51:35 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iXrYE-0007Nc-Ic for xen-devel@lists.xenproject.org; Thu, 21 Nov 2019 18:51:34 +0000 X-Inumbo-ID: dc966b44-0c8f-11ea-adbe-bc764e2007e4 Received: from mail-wr1-x443.google.com (unknown [2a00:1450:4864:20::443]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id dc966b44-0c8f-11ea-adbe-bc764e2007e4; Thu, 21 Nov 2019 18:51:01 +0000 (UTC) Received: by mail-wr1-x443.google.com with SMTP id s5so5768534wrw.2 for ; Thu, 21 Nov 2019 10:51:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=8Y3wEFzVrOaDE1M8t+K3RG5EMlTBpIvMPtQ9f0XWpzE=; b=mgv2U2M5vAudGESEew+t5Hpz66OiCpH5eY2YEE65QpaWJf3Z2VnBPNz0Pc7jCzGqtJ iIZigNpf2PaeKxWuIEnRVpntFPvVBMYqAHjFlui7XiN+d6Kllho+VwZyvVtV+fjVracL f+8j7iKQDiOEEjoPxNX+0YhQtKZ2uCvhpelrvr035v8A4sCS5jTtclnsVaG/h3FniZaD 2jqBiR1CRepjHzL7wZZSUNn6NopeuJzqb3DwI2dpRiVLB/mSSjRz7/WwIH4w+rHbEEJ3 mU0TIhrN08txT6V1G898MZRVKikxUF/z6tCf4u4BkUYCG+IjNXsLlW56KA+3+OC8khD8 Olwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=8Y3wEFzVrOaDE1M8t+K3RG5EMlTBpIvMPtQ9f0XWpzE=; b=ScQbU6WDY4jcRFmZ4BLy/gdgFEN6I12tswhVWtZBQV3AdDBtUmpchG0lTPcKqOOVxb XN+abQh1kwUlWUmhdkrMBucCELjh0PTkZ44LTPOuSJdHxQ2ngQMlLJWr3pSp+BY49S/V MkgoC8CQxorJrcqgYLTCXF1MKxwd7m1WrTtHl5Awtmn7ohUvU/JkPUvNuG+0/7FsBA7Z ckHFAVDc6SK4T7AKfGOb/HbADs8IXuXyC/GbT6jvwZn/qbXz8aplKurCoGLvrZGGDgQA rwe1c+nhBtT6z7/W+Ku5SmwjFi/MlIod2NUyBBgipv9C7dVqwG9COj4kiq7NMuQSlN/4 9CnQ== X-Gm-Message-State: APjAAAVpSNyhBHPp0Go/Y2FmXp2cNfldbPwyh/58a8RW/IGRqufdIzSg 5RfRqDJMGCKZKrUtD9wjO4snVu9qXOOLPw== X-Google-Smtp-Source: APXvYqxKquMkLF9FGNgpMrZx4pKWQDMoNlBDz04Yi7jWgfkP/vEw9VKhOjUiu2xe81y72e5r6i1Klw== X-Received: by 2002:adf:db8e:: with SMTP id u14mr3743435wri.274.1574362260037; Thu, 21 Nov 2019 10:51:00 -0800 (PST) Received: from debian.mshome.net (74.162.147.147.dyn.plus.net. [147.147.162.74]) by smtp.gmail.com with ESMTPSA id f24sm535776wmb.37.2019.11.21.10.50.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 21 Nov 2019 10:50:59 -0800 (PST) From: Wei Liu X-Google-Original-From: Wei Liu To: Xen Development List Date: Thu, 21 Nov 2019 18:50:49 +0000 Message-Id: <20191121185049.16666-9-liuwe@microsoft.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20191121185049.16666-1-liuwe@microsoft.com> References: <20191121185049.16666-1-liuwe@microsoft.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH v4 8/8] x86: introduce CONFIG_HYPERV and detection code 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: Wei Liu , Wei Liu , Andrew Cooper , Michael Kelley , 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" V2UgdXNlIHRoZSBzYW1lIGNvZGUgc3RydWN0dXJlIGFzIHdlIGRpZCBmb3IgWGVuLgoKQXMgc3Rh cnRlcnMsIGRldGVjdCBIeXBlci1WIGluIHByb2JlIHJvdXRpbmUuIE1vcmUgY29tcGxleApmdW5j dGlvbmFsaXRpZXMgd2lsbCBiZSBhZGRlZCBsYXRlci4KClRha2UgdGhlIGNoYW5jZSB0byBmaXgg WEVOX0dVRVNUIGluIEtjb25maWcuCgpTaWduZWQtb2ZmLWJ5OiBXZWkgTGl1IDxsaXV3ZUBtaWNy b3NvZnQuY29tPgotLS0KQ2hhbmdlcyBpbiBWNDoKMS4gQWRkIGNvbW1lbnQgcmVnYXJkaW5nIG9y ZGVyIG9mIHByb2JlIGZ1bmN0aW9ucy4KMi4gQWRhcHQgdG8gY2hhbmdlcyBpbiBwcmV2aW91cyBw YXRjaGVzLgotLS0KIHhlbi9hcmNoL3g4Ni9LY29uZmlnICAgICAgICAgICAgICAgfCAxMSArKysr LS0KIHhlbi9hcmNoL3g4Ni9ndWVzdC9NYWtlZmlsZSAgICAgICAgfCAgMSArCiB4ZW4vYXJjaC94 ODYvZ3Vlc3QvaHlwZXJ2L01ha2VmaWxlIHwgIDEgKwogeGVuL2FyY2gveDg2L2d1ZXN0L2h5cGVy di9oeXBlcnYuYyB8IDU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2FyY2gv eDg2L2d1ZXN0L2h5cGVydmlzb3IuYyAgICB8ICA4ICsrKysrCiB4ZW4vaW5jbHVkZS9hc20teDg2 L2d1ZXN0LmggICAgICAgIHwgIDEgKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9ndWVzdC9oeXBlcnYu aCB8IDQzICsrKysrKysrKysrKysrKysrKysrKysrKwogNyBmaWxlcyBjaGFuZ2VkLCAxMTcgaW5z ZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vYXJjaC94 ODYvZ3Vlc3QvaHlwZXJ2L01ha2VmaWxlCiBjcmVhdGUgbW9kZSAxMDA2NDQgeGVuL2FyY2gveDg2 L2d1ZXN0L2h5cGVydi9oeXBlcnYuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRlL2Fz bS14ODYvZ3Vlc3QvaHlwZXJ2LmgKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvS2NvbmZpZyBi L3hlbi9hcmNoL3g4Ni9LY29uZmlnCmluZGV4IDg2N2RlODU3ZTguLjBhMDJiNmVlM2YgMTAwNjQ0 Ci0tLSBhL3hlbi9hcmNoL3g4Ni9LY29uZmlnCisrKyBiL3hlbi9hcmNoL3g4Ni9LY29uZmlnCkBA IC0xNjQsMTAgKzE2NCwxNyBAQCBlbmRjaG9pY2UKIGNvbmZpZyBHVUVTVAogCWJvb2wKIAorY29u ZmlnIEhZUEVSVl9HVUVTVAorCWJvb2wgIkh5cGVyLVYgR3Vlc3QiCisJc2VsZWN0IEdVRVNUCisJ LS0taGVscC0tLQorCSAgU3VwcG9ydCBmb3IgWGVuIGRldGVjdGluZyB3aGVuIGl0IGlzIHJ1bm5p bmcgdW5kZXIgSHlwZXItVi4KKworCSAgSWYgdW5zdXJlLCBzYXkgTi4KKwogY29uZmlnIFhFTl9H VUVTVAotCWRlZl9ib29sIG4KKwlib29sICJYZW4gR3Vlc3QiCiAJc2VsZWN0IEdVRVNUCi0JcHJv bXB0ICJYZW4gR3Vlc3QiCiAJLS0taGVscC0tLQogCSAgU3VwcG9ydCBmb3IgWGVuIGRldGVjdGlu ZyB3aGVuIGl0IGlzIHJ1bm5pbmcgdW5kZXIgWGVuLgogCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94 ODYvZ3Vlc3QvTWFrZWZpbGUgYi94ZW4vYXJjaC94ODYvZ3Vlc3QvTWFrZWZpbGUKaW5kZXggZjYz ZDY0YmJlZS4uZjE2NDE5Njc3MiAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2d1ZXN0L01ha2Vm aWxlCisrKyBiL3hlbi9hcmNoL3g4Ni9ndWVzdC9NYWtlZmlsZQpAQCAtMSwzICsxLDQgQEAKIG9i ai15ICs9IGh5cGVydmlzb3IubwogCitzdWJkaXItJChDT05GSUdfSFlQRVJWX0dVRVNUKSArPSBo eXBlcnYKIHN1YmRpci0kKENPTkZJR19YRU5fR1VFU1QpICs9IHhlbgpkaWZmIC0tZ2l0IGEveGVu L2FyY2gveDg2L2d1ZXN0L2h5cGVydi9NYWtlZmlsZSBiL3hlbi9hcmNoL3g4Ni9ndWVzdC9oeXBl cnYvTWFrZWZpbGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uNjgxNzAx MDlhOQotLS0gL2Rldi9udWxsCisrKyBiL3hlbi9hcmNoL3g4Ni9ndWVzdC9oeXBlcnYvTWFrZWZp bGUKQEAgLTAsMCArMSBAQAorb2JqLXkgKz0gaHlwZXJ2Lm8KZGlmZiAtLWdpdCBhL3hlbi9hcmNo L3g4Ni9ndWVzdC9oeXBlcnYvaHlwZXJ2LmMgYi94ZW4vYXJjaC94ODYvZ3Vlc3QvaHlwZXJ2L2h5 cGVydi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjkxNmUwOGZmODkK LS0tIC9kZXYvbnVsbAorKysgYi94ZW4vYXJjaC94ODYvZ3Vlc3QvaHlwZXJ2L2h5cGVydi5jCkBA IC0wLDAgKzEsNTQgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIGFyY2gveDg2L2d1ZXN0 L2h5cGVydi9oeXBlcnYuYworICoKKyAqIFN1cHBvcnQgZm9yIGRldGVjdGluZyBhbmQgcnVubmlu ZyB1bmRlciBIeXBlci1WLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICog dGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGlj ZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICog VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1 c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1w bGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFS VElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug Zm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5 IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogYWxvbmcgd2l0aCB0aGlzIHBy b2dyYW07IElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqCisg KiBDb3B5cmlnaHQgKGMpIDIwMTkgTWljcm9zb2Z0LgorICovCisjaW5jbHVkZSA8eGVuL2luaXQu aD4KKworI2luY2x1ZGUgPGFzbS9ndWVzdC5oPgorCitzdGF0aWMgY29uc3Qgc3RydWN0IGh5cGVy dmlzb3Jfb3BzIGh5cGVydl9vcHMgPSB7CisgICAgLm5hbWUgPSAiSHlwZXItViIsCit9OworCitj b25zdCBzdHJ1Y3QgaHlwZXJ2aXNvcl9vcHMgKiBfX2luaXQgaHlwZXJ2X3Byb2JlKHZvaWQpCit7 CisgICAgdWludDMyX3QgZWF4LCBlYngsIGVjeCwgZWR4OworCisgICAgY3B1aWQoMHg0MDAwMDAw MCwgJmVheCwgJmVieCwgJmVjeCwgJmVkeCk7CisgICAgaWYgKCAhKChlYnggPT0gMHg3MjYzNjk0 ZCkgJiYgIC8qICJNaWNyIiAqLworICAgICAgICAgICAoZWN4ID09IDB4NjY2ZjczNmYpICYmICAv KiAib3NvZiIgKi8KKyAgICAgICAgICAgKGVkeCA9PSAweDc2NDgyMDc0KSkgKSAgLyogInQgSHYi ICovCisgICAgICAgIHJldHVybiBOVUxMOworCisgICAgY3B1aWQoMHg0MDAwMDAwMSwgJmVheCwg JmVieCwgJmVjeCwgJmVkeCk7CisgICAgaWYgKCBlYXggIT0gMHgzMTIzNzY0OCApICAgIC8qIEh2 IzEgKi8KKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICByZXR1cm4gJmh5cGVydl9vcHM7Cit9 CisKKy8qCisgKiBMb2NhbCB2YXJpYWJsZXM6CisgKiBtb2RlOiBDCisgKiBjLWZpbGUtc3R5bGU6 ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNldDogNAorICogdGFiLXdpZHRoOiA0CisgKiBpbmRlbnQt dGFicy1tb2RlOiBuaWwKKyAqIEVuZDoKKyAqLwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2d1 ZXN0L2h5cGVydmlzb3IuYyBiL3hlbi9hcmNoL3g4Ni9ndWVzdC9oeXBlcnZpc29yLmMKaW5kZXgg YTA2N2NhY2VjYi4uYzI5M2UxODVjYyAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2d1ZXN0L2h5 cGVydmlzb3IuYworKysgYi94ZW4vYXJjaC94ODYvZ3Vlc3QvaHlwZXJ2aXNvci5jCkBAIC0zOSw2 ICszOSwxNCBAQCBjb25zdCBzdHJ1Y3QgaHlwZXJ2aXNvcl9vcHMgKmh5cGVydmlzb3JfcHJvYmUo dm9pZCkKICAgICBpZiAoIGhvcHMgKQogICAgICAgICBnb3RvIG91dDsKIAorICAgIC8qCisgICAg ICogRGV0ZWN0aW9uIG9mIEh5cGVyLVYgbXVzdCBjb21lIGFmdGVyIFhlbiB0byBhdm9pZCBmYWxz ZSBwb3NpdGl2ZSBkdWUKKyAgICAgKiB0byB2aXJpZGlhbiBzdXBwb3J0CisgICAgICovCisgICAg aG9wcyA9IGh5cGVydl9wcm9iZSgpOworICAgIGlmICggaG9wcyApCisgICAgICAgIGdvdG8gb3V0 OworCiAgb3V0OgogICAgIHJldHVybiBob3BzOwogfQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUv YXNtLXg4Ni9ndWVzdC5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9ndWVzdC5oCmluZGV4IDhlMTY3 MTY1YWUuLjk0NDQ4NjA2ZDQgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvZ3Vlc3Qu aAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2d1ZXN0LmgKQEAgLTIwLDYgKzIwLDcgQEAKICNk ZWZpbmUgX19YODZfR1VFU1RfSF9fCiAKICNpbmNsdWRlIDxhc20vZ3Vlc3QvaHlwZXJjYWxsLmg+ CisjaW5jbHVkZSA8YXNtL2d1ZXN0L2h5cGVydi5oPgogI2luY2x1ZGUgPGFzbS9ndWVzdC9oeXBl cnZpc29yLmg+CiAjaW5jbHVkZSA8YXNtL2d1ZXN0L3B2aC1ib290Lmg+CiAjaW5jbHVkZSA8YXNt L2d1ZXN0L3hlbi5oPgpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9ndWVzdC9oeXBl cnYuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvZ3Vlc3QvaHlwZXJ2LmgKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uM2Y4OGI5NGM3NwotLS0gL2Rldi9udWxsCisrKyBiL3hl bi9pbmNsdWRlL2FzbS14ODYvZ3Vlc3QvaHlwZXJ2LmgKQEAgLTAsMCArMSw0MyBAQAorLyoqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKgorICogYXNtLXg4Ni9ndWVzdC9oeXBlcnYuaAorICoKKyAqIFRoaXMg cHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IK KyAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYworICogTGljZW5zZSwgdmVyc2lvbiAyLCBhcyBwdWJsaXNoZWQgYnkgdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJp YnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBN RVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUg dGhlIEdOVQorICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoK KyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1 YmxpYworICogTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgSWYgbm90LCBzZWUgPGh0 dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxOSBN aWNyb3NvZnQuCisgKi8KKworI2lmbmRlZiBfX1g4Nl9HVUVTVF9IWVBFUlZfSF9fCisjZGVmaW5l IF9fWDg2X0dVRVNUX0hZUEVSVl9IX18KKworI2lmZGVmIENPTkZJR19IWVBFUlZfR1VFU1QKKwor I2luY2x1ZGUgPGFzbS9ndWVzdC9oeXBlcnZpc29yLmg+CisKK2NvbnN0IHN0cnVjdCBoeXBlcnZp c29yX29wcyAqaHlwZXJ2X3Byb2JlKHZvaWQpOworCisjZWxzZQorCitzdGF0aWMgaW5saW5lIGNv bnN0IHN0cnVjdCBoeXBlcnZpc29yX29wcyAqaHlwZXJ2X3Byb2JlKHZvaWQpIHsgcmV0dXJuIE5V TEw7IH0KKworI2VuZGlmIC8qIENPTkZJR19IWVBFUlZfR1VFU1QgKi8KKyNlbmRpZiAvKiBfX1g4 Nl9HVUVTVF9IWVBFUlZfSF9fICovCisKKy8qCisgKiBMb2NhbCB2YXJpYWJsZXM6CisgKiBtb2Rl OiBDCisgKiBjLWZpbGUtc3R5bGU6ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNldDogNAorICogdGFi LXdpZHRoOiA0CisgKiBpbmRlbnQtdGFicy1tb2RlOiBuaWwKKyAqIEVuZDoKKyAqLwotLSAKMi4y MC4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVu LWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6 Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==